spring事务传播机制
1 propagation_required 支持当前事务,如果当前不存在事务,则新建一个事务
2 propagation_requires_new 不论当前有没有事务,直接新建一个事务
3 propagation_support 支持当前事务,如果当前存在事务,则加入该事务,如果不存在,就以非事务方式执行
4 propagation_mandatory 支持当前事务,如果当前存在事务,则加入该事务,如果不存在,则抛出异常
5 propagation_not_support 以非事务方式执行,如果当前存在事务,则将当前事务挂起
6 propagation_never 以非事务方式执行,如果当前存在事务,则抛出异常
7 propagation_nested 如果当前存在事务,则在嵌套事务内执行,如果当前不存在事务,则新建一个事务
propagation_nested是propagation_required和propagation_requires_new的结合
propagation_required无论事务成功与失败,父事务和子事务都是一起成功一起失败
propagation_requires_new,两个事务之前没有传递性,失败成功互不影响
propagation_nested要求父事务成功提交,子事务才能成功,子事务的失败不影响父事务的成功,这就叫做“联合成功,隔离失败”