In Hibernate we close Session each time but is it necessary to close transaction each time in Hibernate or only transaction commit is sufficient?
问问题
223 次
1 回答
1
我们只能begin
,commit
还是rollback
一笔交易。所以,closing
一笔交易对我来说是模棱两可的。这是否意味着提交或回滚事务?
如果事务开始,客户端和服务器之间将建立数据库连接。仅当事务提交、回滚或超时(如果数据库支持)时,才会释放此连接。
调用session.close()
将调用java.sql.Connection#close()。根据 JDBC 规范,如果调用java.sql.Connection#close()并且有一个活动事务,那么这个活动事务的结果取决于 JDBC 供应商的实现。在 Postgresql 的情况下,它会自动回滚。因此强烈建议应用程序显式提交或回滚活动事务之前session.close()
于 2013-05-06T07:14:03.623 回答