【发布时间】:2012-07-25 21:34:23
【问题描述】:
我的休眠查询有问题 SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory(); sess =sessionFactory.openSession(); 我在每个函数中都调用它,我怎样才能避免它只创建一次 sessionFactory
【问题讨论】:
标签: hibernate
我的休眠查询有问题 SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory(); sess =sessionFactory.openSession(); 我在每个函数中都调用它,我怎样才能避免它只创建一次 sessionFactory
【问题讨论】:
标签: hibernate
您只需为每个应用程序创建一次实例,存储引用并提供访问它的方法。什么是正确的方法和地点完全取决于您的应用程序。
这是一种方式:
public final class SessionFactoryProvider {
private static final SessionFactory sessionFactory;
static {
sessionFactory = new Configuration().configure().buildSessionFactory();
}
public static SessionFactory getSessionFactory() {
return sessionFactory;
}
private SessionFactoryProvider() {
}
}
此外,您可能希望添加一些额外的信息收集,并从静态初始化程序块中捕获和重新抛出可能的异常。
【讨论】: