EntityTransaction

来源:互联网 发布:解压缩软件安卓版 编辑:程序博客网 时间:2024/05/17 23:30

与hibernate的不同之处,需要先创建,然后再开启,而hibernate直接开启。

    //创建事务        entityTransaction=entityManager.getTransaction();        //开启事务        entityTransaction.begin();
  • EntityTransaction 接口用来管理资源层实体管理器的事务操作。通过调用实体管理器的getTransaction方法 获得其实例。

begin ()

  • 用于启动一个事务,此后的多个数据库操作将作为整体被提交或撤消。若这时事务已启动则会抛出 IllegalStateException 异常。

commit ()
- 用于提交当前事务。即将事务启动以后的所有数据库更新操作持久化至数据库中。

rollback ()

  • 撤消(回滚)当前事务。即撤消事务启动后的所有数据库更新操作,从而不对数据库产生影响。

setRollbackOnly ()

  • 使当前事务只能被撤消。

getRollbackOnly ()

  • 查看当前事务是否设置了只能撤消标志。

isActive ()

  • 查看当前事务是否是活动的。如果返回true则不能调用begin方法,否则将抛出 IllegalStateException 异常;如果返回 false 则不能调用 commit、rollback、setRollbackOnly 及 getRollbackOnly 方法,否则将抛出 IllegalStateException 异常。