内容简介:事务只是一个工作单位(单元)。 在这种情况下,如果一个步骤失败,则整个事务失败(称为原子性)。 ACID属性(原子性,一致性,隔离性和持久性)可以描述事务。在hibernate框架中,我们有Transaction接口来定义工作单元。 它维护了事务实现(JTA,JDBC)的抽象。
事务只是一个工作单位(单元)。 在这种情况下,如果一个步骤失败,则整个事务失败(称为原子性)。 ACID属性(原子性,一致性,隔离性和持久性)可以描述事务。
Hibernate中的事务接口
在hibernate框架中,我们有Transaction接口来定义工作单元。 它维护了事务实现(JTA,JDBC)的抽象。
事务与Session相关联,并通过调用session.beginTransaction()实例化。
Transaction接口的方法如下:
- void begin() 开始一个新的事务。
- void commit() 结束工作单位,在FlushMode.NEVER中除外。
- void rollback() 强制此事务回滚。
- void setTimeout(int seconds) 它为由此实例开始的后续调用启动的任何事务设置事务超时。
- boolean isAlive() 检查交易是否仍然存在。
- void registerSynchronization(Synchronization s) 为此事务注册用户同步回调。
- boolean wasCommited() 检查事务是否成功提交。
- boolean wasRolledBack() 检查事务是否成功回滚。
Hibernate中的事务管理示例
在hibernate中,如果发生任何异常,最好回滚事务,以便资源可以释放自由。 我们来看看hibernate中事务管理的例子。
Session session = null; Transaction tx = null;
try {
session = sessionFactory.openSession();
tx = session.beginTransaction();
//some action
tx.commit(); }catch (Exception ex) {
ex.printStackTrace();
tx.rollback(); } finally {session.close();
}
Java学习路线推荐: 阿里云大学——开发者课堂
以上所述就是小编给大家介绍的《Hibernate事务管理》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
我的第一本编程书
[日]平山尚 / 张沈宇 / 人民邮电出版社 / 2016-7 / 79.00元
写这本书之前,作者一直在摸索一种最有利于入门者学编程的方法,并应用到教学当中。经过两年的教学实践,他确信他的方法是有效的,于是便有了这本书。这本书面向的是完全没有接触过编程的读者。作者将门槛设置得非常低,读者不需要懂得变量、函数这些名词(这些名词在书中也不会出现),不需要会英语,完全不需要查阅其他书籍,只需要小学算术水平即可。这本书给初学者非常平缓的学习曲线,有利于为之后的进阶学习打下坚实的基础。一起来看看 《我的第一本编程书》 这本书的介绍吧!