事务只是一个工作单位(单元)。 在这种情况下,如果一个步骤失败,则整个事务失败(称为原子性)。 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();}

上一篇:

Hibernate通过one-to-one元素的一对一映射

下一篇:

Hibernate查询语言(HQL)