PROPAGATION_REQUIRED:(required需要,没有新建,有加入)
propagation——required
表示如果当前没有事务,就创建一个新事务,如果当前存在事务,就加入该事务。
最常见的选择,也是Spring默认的事务传播行为。
PROPAGATION_SUPPORTS:(supports支持,有则加入,没有就不管了,非事务运行)
支持当前事务,如果当前存在事务,就加入该事务,如果当前不存在事务,就以非事务执行。
PROPAGATION_MANDATORY:(mandatory强制性,有则加入,没有就报异常)
支持当前事务,如果当前存在事务,就加入该事务,如果当前不存在事务,就抛出异常。
PROPAGATION_REQUIRES_NEW:(requires_new需要加入新的事务,不管有没有,直接创建新事务)
创建新事务,无论当前存不存在事务,都创建新事务。
PROPAGATION_NOT_SUPPORTED:(not supported不支持事务,存在就挂起)
以非事务方式执行操作,如果当前存在事务,就把当前事务挂起。
PROPAGATION_NEVER:(never不支持事务,存在就异常)
以非事务方式执行,如果当前存在事务,则抛出异常。
PROPAGATION_NESTED:
(nested存在就在嵌套的执行,没有就找是否存在外面的事务,有则加入,没有则新建)
如果当前存在事务,则在嵌套事务内执行。如果当前没有事务,则按REQUIRED属性执行。