我正在为我的应用程序使用Hibernate 3版本。
在浏览Hibernate的教程时,我发现,应该只为应用程序创建一次SessionFactory
。
所以为此,我决定在类中使用静态块,并使用静态方法返回如图所示。
public class SessionFactoryInitiliaztion {
static {
try {
sessionFactory = new Configuration().configure().buildSessionFactory();
} catch (Exception x) {
x.printStackTrace();
}
}
public static SessionFactory getSessionFactory() {
return sessionFactory;
}
}
我究竟需要在哪里关闭这个sessionFactory
对象,以便它重新存储内存?
答案 0 :(得分:5)
我想不出有什么理由(随便)为什么你想要在应用程序存在时关闭会话工厂,所以我不会太在意回收内存。我会在你的应用程序关闭时关闭它。
答案 1 :(得分:0)
这似乎是一个错误,但有一个"已弃用"配置sessionFactory正确关闭:
Configuration configuration = new Configuration().configure();
sessionFactory = configuration.buildSessionFactory();