根据Hibernate doc,交易的定义是:
交易(org.hibernate.Transaction)
(可选)单线程, 应用程序用来指定原子单位的短期对象 工作。它从底层的JDBC,JTA或者抽象应用程序 CORBA交易。 org.hibernate.Session可能跨越几个 org.hibernate.Transactions在某些情况下。但是,交易 划分,使用底层API或 org.hibernate.Transaction永远不是可选的。
当医生说:
时意味着什么然而,事务划分,使用底层API或 org.hibernate.Transaction永远不是可选的。
请帮助我理解它的含义?
答案 0 :(得分:1)
这意味着您需要使用事务,无论是通过注释还是普通API(即使用会话的Transaction
方法启动beginTransaction()
然后在最后提交它)。
答案 1 :(得分:1)
Every database operation在事务中运行,即使您没有显式调用begin / commit / rollback。
如果您未指定数据库事务边界,则假定为AUTO-COMMIT模式。但是,虽然自动提交仅在SQL UI浏览器中有意义,但对于ORM工具甚至是在一种业务方法中运行多个语句的JDBC来说,它没有多大意义。