REQUIRED :
使用当前事务,如果当前没有事务,则自己创建一个,如果当前存在事务,则加入事务形成一个整体。子方法必须运行在一个事务中,
此行为也是默认的事务传播行为。
SUPPORTS:
如果当前有事务则使用事务,如果当前没有事务则不使用事务。
MANDATORY:
该传播行为强调必须存在一个事务,如果不存在就会抛出异常。
REQUIRES_NEW:
如果当前有事务,则挂起当前事务创建一个新的事务给自己使用,如果当前没有事务的话和REQUIRED一样。
NOT_SUPPORTED:
如果当前有事务,则挂起事务,自己不使用事务做数据库增删改操作
NEVER:
如果当前有事务存在就会抛出异常。
NESTED:
嵌套事务,如果当前有事务,则开启一个子事务(嵌套),嵌套事务独立提交或者回滚。
如果当前没有事务,就和REQUIRED一样。
如果主事务提交,那么子事务也要一起跟着提交,主事务回滚,子事务也要跟着回滚,但是子事务异常,主事务可以选择性的回滚。
事务的七种传播行为
最新推荐文章于 2024-02-11 19:53:24 发布