@Transactional 的传播行为是什么
时间: 2023-10-25 20:39:57 浏览: 58
Spring在Transaction事务传播行为种类
@Transactional 是 Spring 框架中用于事务处理的注解。它的传播行为用于定义事务的传播规则,即当一个事务方法调用另一个事务方法时,被调用方法如何处理事务。
@Transactional 有以下传播行为:
- REQUIRED: 如果当前存在事务,则加入该事务,否则新建一个事务并加入。
- SUPPORTS: 如果当前存在事务,则加入该事务,否则以非事务方式执行。
- MANDATORY: 当前必须存在事务,否则抛出异常。
- REQUIRES_NEW: 新建一个事务,并在它自己的事务内执行。
- NOT_SUPPORTED: 以非事务方式执行,并挂起任何当前存在的事务。
- NEVER: 以非事务方式执行,如果当前存在事务,则抛出异常。
- NESTED: 如果当前存在事务,则在嵌套事务内执行,否则新建一个事务并加入。
其中,REQUIRED 是最常用的传播行为。
阅读全文