(Hibernate)Session.close()和releaseSession(Session)之间的区别



我在这个项目中使用Hibernate和SpringMVC。

我有一段代码:

...
int count = (Integer) this.getSession().createSQLQuery(sql).list().get(0);
this.getSession().close();
return count;

我应该使用this.getSession.close()还是使用releaseSession(this.getSession())??

我很难理解这两种方法之间的区别。。

谢谢!

hibernate DaoSupport是Spring框架提供的支持,当调用releaseSession()时,它只终止hibernate会话,而不是事务。但是,当您执行hibernate的session.close()时,它也会终止事务。我认为你不需要自己处理这些交易。让弹簧来处理它们@Transactional将处理它们。只要在需要的地方定义它。

最新更新