Java 打开和关闭休眠会话
这就是我获取Hibernate会话和创建查询的方式Java 打开和关闭休眠会话,java,hibernate,Java,Hibernate,这就是我获取Hibernate会话和创建查询的方式 HSession.getSession().createQuery("query here").executeUpdate(); 及 hsSession是我的会话工厂所在的位置,getSession()方法返回一个新会话 (getSessionFactory().openSession();) 我想知道 调用cr.list()后会话是否仍处于活动状态 如果活动,获取此条件或执行查询方式不好?及 将会话创建为 会话s=hsSession.g
HSession.getSession().createQuery("query here").executeUpdate();
及
hsSession是我的会话工厂所在的位置,getSession()
方法返回一个新会话
(getSessionFactory().openSession();)
我想知道
- 调用
cr.list()后代码>会话是否仍处于活动状态李>
- 如果活动,获取此条件或执行查询方式不好?及
- 将会话创建为 会话s=hsSession.getSession()
s、 创建标准 是使用会话并使用s.close()关闭会话的方法代码>
- 我今天读到了这篇文章。。。它说“当第一次调用getCurrentSession()时,会话打开,当事务结束时,会话关闭。”
所以根据这一点:如果您有一个围绕它的事务(我想您应该有),并调用transaction.commit()。。。会话已关闭。
在你的情况下,它应该仍然是开放的
如果我错了,请纠正我…!:) 是的,会话将处于活动状态,直到您关闭它。您可以对一个会话执行多个操作,但只有
将关闭它 在您的情况下,会话似乎由close()
控制。您需要查看它,以查看是否执行了任何事务,会话是如何管理的,等等HSession
(getSessionFactory().openSession();)