Spring事务的隔离级别

1、PROPAGATION_REQUIRED:如果存在一个事务,则支持当前事务,如果不存在,则创建一个事务。

     方法A执行时,会看看是否在一个事务中,在事务中的话就直接使用当前事务,不在的话就创建一个新事务。

2、PROPAGATION_REQUIRED_NEW:新建一个事务,挂起当前事务(如果存在),最后用新建的事务执行

    方法A执行时,如果发现自己在一个事务B中,会先挂起当前事务B,然后新建一个事务C,方法A在事务C中执行,当事务C执行完成后,才会继续执行事务B

3、PROPAGATION_SUPPORT:如果存在事务,则支持当前事务,如果不存在事务,则以非事务方式执行。

   方法A执行时,如果发现自己在事务中,则方法A以事务形式执行,否则就以非事务形式执行

4、PROPAGATION_NOT_SUPPORT:如果存在事务,则挂起事务,最后都以非事务方式执行。

    方法A执行时,如果发现自己在事务B中,则挂起事务B,然后以非事务形式执行方法A,最后再执行事务B

5、PROPAGATION_NEVER:以非事务方式执行,如果存在事务,则抛出异常。

     方法A执行时,如果发现自己在事务中,就抛出异常,否则就以非事务形式执行方法

6、PROPAGATION_MANDATORY:如果当前有事务,则支持当前事务,如果没有事务,则抛出异常。

     方法A执行时,如果发现自己在事务中,刚在当前事务中执行,如果发现没有事务,则会招聘异常。

7、PROPAGATION_NESTED:支持当前事务,但会新建一个节点,与当前事务共同提交或回滚。

    方法A执行时,发现自己在事务B中,会建立一个子事务C,然后方法A在事务C中执行,但事务C随着事务B提交(回滚)而提交(回滚)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值