什么是事务传播机制?

Spring Boot 事务传播机制是指,包含多个事务的方法在相互调用时,事务时如何在这些方法之间传播的。

Spring Boot 事务传播机制可使用 @Transactional(propagation=Propagation.REQUIRED)来定义,事务传播机制的级别包含以下 7 种:

  1. Propagation.REQUIRED :默认的事务传播级别,它表示如果当前存在事务,则加入该事务;如果当前没有事务,则创建一个新的事务。
  2. Propagation.SUPPORTS :如果当前存在事务,则加入该事务,如果当前没有事务,则以非事务的方式继续运行
  3. Propagation.MANDATORY :如果当前存在事务,则加入该事务,如果当前没有事务,则抛出异常
  4. Propagation.REQUIRES_NEW :表示创建一个新的事务,如果当前存在事务,则把当前事务挂起。也就是说不管外部方法是否开启事务,RE.. 修饰的内部方法会新开期自己的事务,且开启事务相互独立,互不干扰
  5. Propagation.NOT_SUPPORTED:以非事务方式运行,如果当前存在事务,则抛出异常。
  6. Propagation.NEVER:以非事务方式运行,如果当前存在事务,则抛出异常。
  7. Propagation.NESTED:如果当前存在事务,则创建一个事务作为当前事务的嵌套事务来运行;如果当前没有事务,则该取价等于PROPAGATION_REQUIRED。
相关推荐
wuxinyan1234 分钟前
Java面试题51:一文深入了解K8s 环境下企业级 CI/CD 流水线搭建
java·ci/cd·kubernetes·面试题
Java成神之路-8 分钟前
数据库事务与Spring事务传播行为的本质关系
数据库·spring
qq_372154239 分钟前
Python中如何快速创建全零数组_使用NumPy的zeros函数初始化内存
jvm·数据库·python
琪露诺大湿10 分钟前
网页聊天系统——测试报告
java·软件测试·功能测试·websocket·html·项目·测试报告
2301_7965885010 分钟前
Tailwind CSS如何快速实现居中对齐_使用mx-auto类实现CSS块级居中
jvm·数据库·python
小园子的小菜12 分钟前
生产实战|冷热数据转换:从识别、触发到落地全流程解析
java·开发语言·spring
forEverPlume15 分钟前
Go语言如何防SQL注入_Go语言SQL注入防护教程【精选】
jvm·数据库·python
m0_6178814215 分钟前
mysql升级后日志文件如何处理_mysql日志迁移说明
jvm·数据库·python
baidu_3409988216 分钟前
JavaScript中类的装饰器提案在属性与方法上的应用
jvm·数据库·python
invicinble16 分钟前
对于线程的思路
java