我在这个项目中使用了Hibernate和Spring MVC。
我有这段代码:
...
int count = (Integer) this.getSession().createSQLQuery(sql).list().get(0);
this.getSession().close();
return count;
我应该使用this.getSession.close()
,还是应该使用releaseSession(this.getSession())
??
我很难理解这两种方法之间的区别..
谢谢!
答案 0 :(得分:2)
HibernateDaoSupport是Spring框架提供的支持,当调用releaseSession()时,它只会终止hibernate会话,而不是事务。但是当你执行hibernate的session.close()时,它也会终止事务。我认为您不需要自己处理这些交易。让春天来处理它们。 @Transactional会处理它们。只需在需要的地方定义它。