【问题标题】:Hibernate: Do you need to manually close with sessionFactory?Hibernate:是否需要用 sessionFactory 手动关闭?
【发布时间】:2013-05-31 19:06:27
【问题描述】:

我使用了太多线程。我在单元测试中总是内存不足。如果我使用 sessionFactory. 我需要关闭我的会话吗?下面的提交不会结束会话吗?

  Session session = sessionFactory.getCurrentSession();
  Transaction transaction = null;

  try 
  {
       transaction = session.beginTransaction();
       transaction.commit();
  } 
  catch (Exception e) 
  { 
       if (transaction != null) 
       {
         transaction.rollback();
         throw e;
       }
  }  
  finally 
  { 
       //Is this close necessary?
       session.close();
  }  

【问题讨论】:

    标签: java hibernate transactions


    【解决方案1】:

    不,它不会结束会话。一个会话可以跨越任意数量的事务。明确关闭会话。顺便说一句,这些事情都有明确的记录。

    【讨论】:

    【解决方案2】:

    在你的catch中,验证事务是否也是活动的()。

    【讨论】:

      猜你喜欢
      • 2017-08-21
      • 2010-10-19
      • 1970-01-01
      • 1970-01-01
      • 2021-08-17
      • 1970-01-01
      • 2020-10-20
      • 1970-01-01
      • 2010-10-19
      相关资源
      最近更新 更多