首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NHibernate SessionFactory

NHibernate SessionFactory
EN

Stack Overflow用户
提问于 2009-08-14 13:19:56
回答 4查看 5.6K关注 0票数 4

他们说,在NHibernate中构建会话工厂的成本很高,而且应该只发生一次。我在这方面使用了单例方法。这在第一次请求会话时完成。

我的问题是:会有关闭会话工厂的时候吗?如果是这样,什么时候会这样做呢?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2009-08-14 13:29:06

这就是我在Java中用Hibernate做的事情:

代码语言:javascript
复制
 public class HibernateUtil
{

    private static final SessionFactory sessionFactory;

    static
    {
        try
        {
            // Create the SessionFactory from hibernate.cfg.xml
            sessionFactory = new Configuration().configure().buildSessionFactory();
        }
        catch (Throwable ex)
        {
            // Make sure you log the exception, as it might be swallowed
            System.err.println("Initial SessionFactory creation failed." + ex);
            throw new ExceptionInInitializerError(ex);
        }
    }

    public static SessionFactory getSessionFactory()
    {
        return sessionFactory;
    }

}

我想您可以在不再需要SessionFactory时将其释放,但老实说,我从未关闭过我的会话工厂

票数 6
EN

Stack Overflow用户

发布于 2009-12-12 02:02:20

到AZ:这指的是SessionFactory,而不是会话。尽管我不会说应该只有一个SessionFactory实例。每个唯一的配置都应该有一个。例如,如果一个应用程序连接到两个不同的数据库,那么您需要两个不同的SessionFactory实例。

票数 2
EN

Stack Overflow用户

发布于 2009-08-14 13:30:44

不,它和你的程序一起死了,这是好的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1277807

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档