栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

spring事务传播性(propagation)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

spring事务传播性(propagation)

事务传播性,事务方法之间调用的时候,事务的传播方式。

1、REQUIRED(required)

  这里假设调用者是A,被调用者是B

  默认的传播属性,如果A 有事务,加入A的事务,如果没有事务创建一个自己的事务回滚也就自己回滚;

2、REQUIRED_NEW

  创建一个新的事务,如果当前存在事务则把当前事务挂起,不管外部是否有事务都开启自己的事务,外面回滚里面作为独立事务不用回滚,里面回滚异常未处理的话外部也回滚。

  与REQUIRED的本质区别在于,可能存在两个事务,外部事务被挂起;

3、NESTED(nested)

  如果当前存在事务,创建一个事务作为当前事务的嵌套事务来运行,如果没有事务,则该取值等价于REQUIRED;

  主事务回滚,子事务一起回滚,子事务可以单独回滚不影响主事务(异常处理不被外部感知到的情况);

4、MANDATORY(mandatory)

  如果当前存在事务,加入事务,如果不存在事务抛出异常;

5、SUPPORTS

  如果当前存在事务,加入事务,没有事务则已非事务的形式运行;

6、NOT_SUPPORTS

  如果当前存在事务则挂起事务,自己肯定以非事务方式运行;内部肯定是不回滚的,外部是否回滚取决于内部事务异常是否被处理;

7、NEVER

  以非事务方式运行,有事务则抛出异常。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1004149.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号