学习一下Spring的事务嵌套:https://blog.csdn.net/zmx729618/article/details/77976793

重点句子:

Juergen Hoeller 的话:
    PROPAGATION_REQUIRES_NEW 启动一个新的, 不依赖于环境的 "内部" 事务. 这个事务将被完全 commited 或 rolled back 而不依赖于外部事务, 它拥有自己的隔离范围, 自己的锁, 等等. 当内部事务开始执行时, 外部事务将被挂起, 内务事务结束时, 外部事务将继续执行。
    另一方面, PROPAGATION_NESTED 开始一个 "嵌套的" 事务,  它是已经存在事务的一个真正的子事务. 潜套事务开始执行时,  它将取得一个 savepoint. 如果这个嵌套事务失败, 我们将回滚到此 savepoint. 潜套事务是外部事务的一部分, 只有外部事务结束后它才会被提交。
    由此可见, PROPAGATION_REQUIRES_NEW 和 PROPAGATION_NESTED 的最大区别在于, PROPAGATION_REQUIRES_NEW 完全是一个新的事务, 而 PROPAGATION_NESTED 则是外部事务的子事务, 如果外部事务 commit, 潜套事务也会被 commit, 这个规则同样适用于 roll back

最新文章

  1. Hive Tutorial(上)(Hive 入门指导)
  2. barManager 挤压后“ 自动换行”和“自动隐藏”的实现方法
  3. dotNet下的一套解决方案
  4. SpringMVC解析5-DispatcherServlet逻辑细节
  5. 去除a标签单击后的虚线框
  6. jQuery对html进行Encode和Decode
  7. 极客DIY:开源WiFi智能手表制作
  8. 在sql中使用了 hashbytes 函数
  9. 51Nod 算法马拉松12 Rikka with sequences
  10. codeforces 652D Nested Segments 离散化+树状数组
  11. 使用fastjson前台报406的问题解决方法
  12. 371. Sum of Two Integers -- Avota
  13. 51 EEPROM操作模板
  14. C#中简单的写日志的方法
  15. [VUE]object.defineProperty的基本使用
  16. mysql的表映射
  17. easyui 传递参数报错(错误:uncaught SyntaxError: Unexpected identifier)
  18. 【GIS】GeoHash
  19. fine安装教程
  20. vue.cli项目中src目录每个文件夹和文件的用法

热门文章

  1. 三角形(hdu1249)递推
  2. php环境安装
  3. JS实现异步提交
  4. P1993 小 K 的农场
  5. Dynamics AX 2012 性能优化之 SQL Server 复制
  6. C# SharpMap的简单使用
  7. Android 彩色Toast实现
  8. 五. Redis持久化
  9. Android 与Java 进程退出 killProcess与System.exit
  10. java中的数据类型,运算符,字符串,输入输出,控制流,大数值,数组; 《java核心技术卷i》 第三章:java基本程序结构;