我的hibernate查询有问题 SessionFactory sessionFactory = new Configuration()。configure()。buildSessionFactory(); sess = sessionFactory.openSession(); 我在每个函数中调用它,我怎么能避免它只创建一个sessionFactory
答案 0 :(得分:0)
您只需为每个应用程序创建一个实例,存储引用并提供访问它的方法。什么是正确的方式和地点,完全取决于您的应用程序。
这是一种方式:
public final class SessionFactoryProvider {
private static final SessionFactory sessionFactory;
static {
sessionFactory = new Configuration().configure().buildSessionFactory();
}
public static SessionFactory getSessionFactory() {
return sessionFactory;
}
private SessionFactoryProvider() {
}
}
此外,您可能希望添加一些额外的信息收集,并从静态初始化程序块中捕获并重新抛出可能的异常。