美文网首页
事务的传播特性

事务的传播特性

作者: 砒霜拌辣椒 | 来源:发表于2020-07-27 19:55 被阅读0次

在一些业务场景中,会涉及到多张表的操作,也就是说会有多个事务存在,如何管理这些事务,就是会利用到spring中的事务传播特性。

Propagation 传播特性
REQUIRED 有事务则参与事务,没有事务则创建事务
REQUIRES_NEW 不管有没有事务,总是创建新事务,两个事务保持独立
MANDATORY 有事务则参与事务,没有事务则报错
NEVER 必须按非事务方式执行,有事务则报错
NESTED 有事务则嵌套事务,没有事务则创建事务
NOT_SUPPORTED 无论有无事务总是按照非事务方式执行
SUPPORTS 有事务则参与事务,没有事务则按非事务方式执行

说明

  1. 嵌套事务比如A事务嵌套了B事务,B会随着A回滚事务,但A不会随着B回滚事务。
  2. 利用了Spring的面向切面特性(动态代理),需要跨业务类调用才会使@Transactional注解生效。
  3. REQUIRES_NEWNOT_SUPPORTED会挂起当前事务,使用时注意死锁。
  4. 事务的传播特性需要在同一个数据源(事务管理器)下才生效。

相关文章

  • Spring事务管理

    事务的传播特性: 一张图很清楚的描述事务的传播特性: Required:当前有事务时使用当前的事务,当前没有事务时...

  • spring事务传播行为和事务隔离级别的一些理解

    一、事务的传播特性  spring的事务传播行为通俗来讲是事务和事务之间的关系,比如serviceA#method...

  • 事务的传播特性

    在一些业务场景中,会涉及到多张表的操作,也就是说会有多个事务存在,如何管理这些事务,就是会利用到spring中的事...

  • Spring事务的传播特性引发的一场血案

    Spring事务的传播特性是对于Spring事务管理的一项特殊配置;Spring事务基于Spring AOP特性,...

  • 面前温习

    Spring事务传播特性的浅析——事务方法嵌套调用的迷茫 解惑 spring 嵌套事务

  • spring事务传播特性和代码验证

    传播级别是事务除了数据隔离级别外应一个重要的特性,是事务的传播级别和。传播级别定义的是事务的控制范围,不同的传播级...

  • Spring 事务传播特性

    PROPAGATION_REQUIRED--支持当前事务,如果当前没有事务,就新建一个事务。这是最常见的选择。PR...

  • Spring的事务传播特性

  • spring 的事务传播特性

    事务传播行为类型 PROPAGATION_REQUIRED 如果当前没有事务,就新建一个事务,如果已经存在一个事务...

  • Spring的事务传播机制

    多个事务相互调用时,事务如何在这些方法之间进行传播,Spring提供了7种不同的传播特性,来保证事务的正常执行: ...

网友评论

      本文标题:事务的传播特性

      本文链接:https://www.haomeiwen.com/subject/npstrktx.html