什么是事务传播机制?

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。
相关推荐
zzzsde5 分钟前
【C++】深入理解string类(5)
java·前端·算法
重整旗鼓~6 分钟前
27.Redisson基本使用和可重入性
数据库·redis·缓存
失散138 分钟前
分布式专题——46 ElasticSearch高级查询语法Query DSL实战
java·分布式·elasticsearch·架构
瑶总迷弟10 分钟前
使用 Docker 和 docker-compose 快速部署 openGauss
linux·数据库·云原生·eureka
程序员鱼皮11 分钟前
为什么下载小电影时,进度总是卡在99%?
java·计算机·程序员·互联网·编程
没有bug.的程序员26 分钟前
分布式链路追踪:微服务可观测性的核心支柱
java·分布式·微服务·架构·wpf
C.R.xing26 分钟前
Pyspark分布式访问NebulaGraph图数据库
数据库·分布式·python·pyspark·nebulagraph
我是华为OD~HR~栗栗呀29 分钟前
华为OD-21届考研-Java面经
java·前端·c++·python·华为od·华为·面试
九皇叔叔30 分钟前
深度解析 PostgreSQL 中的 ctid、xmin、xmax:从原理到实战
数据库·postgresql
凤山老林31 分钟前
SpringBoot 启动时执行某些操作的 8 种方式
java·开发语言·spring boot·后端