什么是事务传播机制?

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。
相关推荐
lsylalalala3 分钟前
多线程(2)
java·开发语言·多线程
lhldsg7 分钟前
酒吧点餐小程序开发:从需求分析到技术落地实战
java·前端·小程序·架构·交友
用户31268748772011 分钟前
volatile 到底能保证什么?JMM 与内存屏障深度剖析
java
专注API从业者19 分钟前
Open‑Claw 实战|无需逆向,快速搭建电商商品监控与数据分析系统
开发语言·数据结构·数据库·数据分析·php
2301_8000742120 分钟前
MySQL部分语句
数据库·mysql
苏渡苇23 分钟前
HandlerInterceptor 和 WebFilter:两套 HTTP 请求拦截
spring boot·spring·http·spring cloud
CodeStats28 分钟前
MySQL与Oracle数据类型底层设计原理对比(下)
数据库·mysql·oracle
吴声子夜歌30 分钟前
Guava——集合(二)
java·guava
xiaoqiMikko30 分钟前
一句“为了保持同步”的注释,正好打破了同步 —— Netty 响应错配漏洞实测
java
疯狂打码的少年34 分钟前
【数据库技术】SQL高级查询(分组/排序/聚合函数)
java·数据库·笔记·sql