一、事务的传播行为
Spring中事务的定义:
Propagation(key属性确定代理应该给哪个方法增加事务行为。这样的属性最重要的部份是传播行为。)有以下选项可供使用:
PROPAGATION_REQUIRED—如果当前有事务,就用当前事务,如果当前没有事务,就新建一个事务。这是最常见的选择。
PROPAGATION_SUPPORTS–支持当前事务,如果当前没有事务,就以非事务方式执行。//如果外层方法没有事务,就会以非事务进行执行。
PROPAGATION_MANDATORY–支持当前事务,如果当前没有事务,就抛出异常。
PROPAGATION_REQUIRES_NEW–新建事务,如果当前存在事务,把当前事务挂起。
PROPAGATION_NOT_SUPPORTED–以非事务方式执行操作,如果当前存在事务,就把当前事务挂起。
— 如果当前有事务,就是以非事务进行执行
PROPAGATION_NEVER–以非事务方式执行,如果当前存在事务,则抛出异常。
二、嵌套事务之marked as rollback-only
https://www.cnblogs.com/wangzhongqiu/p/7241058.html
本文详细探讨了Spring框架中事务的传播行为,包括REQUIRED、SUPPORTS、MANDATORY等七种模式,以及嵌套事务中markedasrollback-only的处理机制。通过理解这些概念,开发者可以更有效地控制和管理应用中的事务流程。

1149

被折叠的 条评论
为什么被折叠?



