spring事务传播行为的疑惑,同一个service不同方法
在一个service的两个方法配置不同的传播属性。比如:
doTest方法配置了Propagation.required事务传播属性,updateNotesByWoId配置了Propagation.NESTED事务传播属性。其中doTest调用了updateNotesByWoId方法。此时Propagation.NESTED失效了,updateNotesByWoId抛出异常后不会回滚到savepoint。而如果两个方法在不同service里面,那么此时Propagation.NESTED是有效的,updateNotesByWoId会会滚到savepoint。
求解为什么
doTest方法配置了Propagation.required事务传播属性,updateNotesByWoId配置了Propagation.NESTED事务传播属性。其中doTest调用了updateNotesByWoId方法。此时Propagation.NESTED失效了,updateNotesByWoId抛出异常后不会回滚到savepoint。而如果两个方法在不同service里面,那么此时Propagation.NESTED是有效的,updateNotesByWoId会会滚到savepoint。
求解为什么
...全文
相关推荐
Spring事务传播行为问题解决
主要介绍了Spring事务传播行为问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
Spring事务流程图
Spring事务流程图时序图Spring事务流程图时序图Spring事务流程图时序图Spring事务流程图时序图
Spring异常捕获且回滚事务解决方案
主要介绍了Spring异常捕获且回滚事务解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
详解Spring Boot 事务的使用
spring Boot 使用事务非常简单,首先使用注解 @EnableTransactionManagement 开启事务支持后,然后在访问数据库的Service方法上添加注解 @Transactional 便可。接下来通过本文重点给大家介绍spring boot事务的使用,需要的的朋友参考下吧
spring事务Propagation及其实现原理详解
主要介绍了spring事务Propagation及其实现原理详解,分享了相关代码示例,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下


