1

我的休眠查询 SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory(); 有问题 sess =sessionFactory.openSession(); 我在每个函数中都调用它,我怎样才能避免它只创建一次 sessionFactory

4

1 回答 1

0

您只需为每个应用程序创建一次实例,存储引用并提供访问它的方法。什么是正确的方法和地点完全取决于您的应用程序。

这是一种方式:

public final class SessionFactoryProvider {
    private static final SessionFactory sessionFactory;
    static {
        sessionFactory = new Configuration().configure().buildSessionFactory();
    }

    public static SessionFactory getSessionFactory() {
        return sessionFactory;
    }

    private SessionFactoryProvider() {
    }
}

此外,您可能希望添加一些额外的信息收集并从静态初始化程序块中捕获和重新抛出可能的异常。

于 2012-07-27T08:50:12.917 回答