1

我在这个项目上使用 Hibernate 和 Spring MVC。

我有这段代码:

...

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

this.getSession().close();

return count;

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

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

谢谢!

4

1 回答 1

2

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

于 2013-07-29T15:14:37.247 回答