Spring的事务传播机制

1、REQUIRED

 spring默认的事务传播机制

(1)特性:
   A、当前存在事务,加入;
   B、当前不存在事务,新开启一个事务。
(2)提交:外层事务提交了,内层才会提交
(3)回滚:因为是一个事务,内/外只要有报错,他俩会一块儿回滚。

2、REQUIRES_NEW

 新建事务

(1)特性:
   A、当前存在事务,新建一个事务,将当前事务挂起;
   B、当前不存在事务,新建一个事务。
(2)提交:内层事务结束,内层立即提交,不用等着外层一块儿提交。
(3)回滚:
   A、外层报错回滚,不影响内层
   B、内层报错回滚,外层try-catch内层的异常,外层不会回滚;
    内层报错回滚,没有捕获处理内层抛出来的这个异常,外层仍是会回滚的。
注:REQUIRES_NEW方式,不受外层事务影响,自己提交,减少锁等待时间,对于高并发场景更友好!!!

3、NESTED

 内嵌事务

(1)特性:
   A、当前存在事务,新建一个事务,嵌套在已有事务中做为一个子事务;
   B、当前不存在事务,新建一个事务。
(2)提交:内层事务结束,要等着外层一块儿提交。
(3)回滚:
   A、外层回滚,内层也回滚
   B、内层报错回滚,外层try-catch内层的异常,外层不会回滚。

4、SUPPORTS

 支持事务

(1)特性:
   A、当前存在事务,支持;
   B、当前不存在事务,不会开启一个事物。

5、MANDATORY

必须有事务

(1)特性:
   A、当前存在事务,加入当前事务;
   B、当前不存在事务,抛出异常。

6、NOT_SUPPORTED

 不支持事务

(1)特性:
   A、当忽略当前在事务,就把当前事务挂起,执行完后恢复事务。

7、NEVER

 不能有事务

(1)特性:
   A、当前存在事务,则抛出异常。

参考:http://www.javashuo.com/article/p-znphvihm-eh.html

Spring的事务传播机制相关推荐

  1. spring上下文是什么意思_Java程序员只会CRUD连Spring事务传播机制都不懂?

    AQS到底有什么用?难道就真的只是为了面试吗? 当然不是说AQS没用,如果你不是做基础架构或者中间件开发,你很难感受到AQS的威力.当然,学习很多时候,需要的是正向反馈,学了太多造火箭的东西,面试完就 ...

  2. 原创 | CRUD更要知道的Spring事务传播机制

    来自:肥朝 AQS到底有什么用?难道就真的只是为了面试吗? 当然不是说AQS没用,如果你不是做基础架构或者中间件开发,你很难感受到AQS的威力.当然,学习很多时候,需要的是正向反馈,学了太多造火箭的东 ...

  3. Spring事务与事务传播机制

    目录 1.事务的基本概念 2.Spring事务的实现 3.事务隔离级别 4.事务传播机制 1.事务的基本概念 关于事务的一些基础概念我已经在MYSQL中讲解过了,有不了解的可以移步至此篇文章: MyS ...

  4. Spring事务传播机制大白话(使用springboot,注解演示)

    1. 我对传播机制的理解 为什么需要传播机制? 因为事务之间可能存在相互调用,例如service业务层的方法存在相互调用,如果相互调用的方法都开启了事务(对应到springboot就是在方法上要添加@ ...

  5. 【Spring事务】事务和事务传播机制

    事务 事务主要有三种操作: 开始事务 start transaction 提交事务 commit 回滚事务 rollback Spring 中事务的实现 Spring 中的事务操作分为两类: ⼿动操作 ...

  6. SpringBoot事务传播机制

    6.Spring的事务传播机制: 1)定义:咱们之前所说的事务,都是针对一个方法的,咱们的Spring事务传播机制,不再是单个的事务了,咱们的Spring事务传播机制定义了包含多个方法相互调用的时候, ...

  7. Spring事务传播机制和隔离级别

    Spring有5种隔离级别,7种传播行为.这是面试常问的内容,也是代码中经常碰到的知识点.这些知识枯燥而且乏味,其中有些非常的绕.如果栽在这上面,就实在是太可惜了. @Transactional(is ...

  8. java spring 事务传播_spring事务传播机制实例讲解

    天温习spring的事务处理机制,总结如下 对于SQL事务的概念以及ACID性质,可以参见我的另一篇博文 http://kingj.iteye.com/admin/blogs/1675011 spri ...

  9. Spring 事务传播机制 实例讲解

    事务传播机制 对于SQL事务的概念以及ACID性质,可以参见我的另一篇博文 http://kingj.iteye.com/admin/blogs/1675011 spring的管理的事务可以分为如下2 ...

  10. Spring事务传播机制以及事务嵌套

    Spring事务传播机制以及事务嵌套 Spring事务传播机制 事务嵌套场景 情景0: 场景1:不同类中,开启事务的方法调用没有开启事务的方法 场景2:不同类中,methodA方法嵌套methodB方 ...

最新文章

  1. C# 线程安全与 lock锁
  2. mysql 表设计时的update_time自动更新
  3. poj 1041(欧拉回路+输出字典序最小路径)
  4. java的matcher方法,Matcher 的方法
  5. android 一个有漂亮动画效果的Dialog
  6. Maven中scope依赖范围和依赖的传递性
  7. 鸿蒙系统大疆,华为操作系统“鸿蒙OS”来了!
  8. 生成多个 SSH-Key 、生成多个公钥和私钥
  9. Android Studio连接手机没反应,提示错误adb.exe start-server' failed -- run manually if necessary
  10. 盘点2019年5G:商用大戏开唱 三大问题亟待解决
  11. php算法和数据结构
  12. WebSocket了解一下
  13. 怎样配置Tomcat环境变量
  14. mysql专业连接工具_mysql(MySQL客户端连接工具)
  15. Android之录制歌曲
  16. 封装的PHP爬虫类(一) 单量抓取
  17. kotlin自定义view
  18. java ssm羽毛球馆管理和交流平台系统
  19. stormmedia文件夹,360downloads文件夹,FavoriteVideo文件夹是干什么的?
  20. iOS10新特性,适配教程,XCode8新特性

热门文章

  1. Java之链表的反转
  2. Java大型工程项目管理系统源码,原生APP源码,建筑工程管理源码
  3. cαr怎么发音_英语c的发音怎么读
  4. 整数规划--指派问题
  5. 连接池实现mysql增删改查_java使用原生MySQL实现数据的增删改查以及数据库连接池技术...
  6. ubuntu nvidia 驱动卸载
  7. Xshell6 + Xftp6 绿色破解
  8. MAX485芯片介绍(MAX485ESA+T,半双工RS422和RS485串口收发传输芯片,2.5Mbps传输速率。5V逻辑电平)
  9. 理解Andriod 硬件加速
  10. 数据结构与算法部分术语中英文对照