1. Propagation_required
如果当前有事务就加入,没有事务就开启一个事务。(需要使用事务)
2. Propagation_supports
如果当前存在事务就加入,没有事务就按非事务方式执行。(可以使用事务)
3. Propagation_required_new
创建一个新事务,如果当前存在事务就将其挂起。(必须使用一个新的事务)
4. Propagation_not_supported
如果当前存在一个事务就将其挂起,按非事务方式执行。(不使用事务)
5. Propagation_mandatory
如果当前不存在事务,就抛异常。(必须使用事务,否则异常)
6. Propagation_nested
如果当前有事务就加入,并可以执行自己事务的提交与回滚,没有事务就开启一个事务。(需要使用事务并可以进行嵌套)
7. Propagation_never
按照非实物方式执行,如果当前有事务就抛异常。 (不允许事务,否则异常)
读已提交
读未提交
可重复读
串行化
首先,事务管理的本质是aop,所有导致aop失效的情况,都会导致事务失效。