- 场景一:外部方法无事务注解,内部方法添加REQUIRED事务传播类型时,内部方法抛异常,内部方法执行失败,不会影响外部方法的执行,外部方法执行成功。
- 场景二:外部方法添加REQUIRED事务传播类型,内部方法无事务注解,内部方法抛异常,会影响外部方法的执行,导致外部方法的事务回滚。
- 场景三:外部方法添加REQUIRED事务传播类型,内部方法REQUIRED事务传播类型,内部抛异常,会影响外部方法执行,事务会回滚。
- 场景四:外部方法添加REQUIRED事务传播类型,内部方法添加NOT_SUPPORTED事务传播类型,内部抛异常时,内部方法执行成功,事务会提交,外部方法执行失败,事务会回滚。
- 场景五:外部方法添加REQUIRED事务传播类型,内部方法添加REQUIRES_NEW事务传播类型,内部抛异常,内部外部都会执行失败,事务回滚。
- 场景六:外部方法添加REQUIRED事务传播类型,内部方法添加REQUIRES_NEW事务传播类型,并且把异常代码移动到外部方法的末尾,内部方法抛异常时,外部方法执行失败,事务回滚;内部执行成功,事务提交。
- 场景七:外部方法添加REQUIRED事务传播类型,内部方法添加REQUIRES_NEW事务传播类型,并且把异常代码移动到外部方法的末尾,同时外部方法和内部方法在同一类中,内部方法抛出异常,外部方法和内部方法都会执行失败,事务回滚。
Spring事务嵌套--七大场景
猜你喜欢
转载自blog.csdn.net/weixin_50160384/article/details/132743396
今日推荐
周排行