码上敲享录 > Spring面试题 > Spring 中的事务传播行为有哪些?

Spring 中的事务传播行为有哪些?

上一章章节目录下一章 2023-07-17已有196人阅读 评论(0)

在Spring中,事务传播行为是指在一个方法调用另一个方法时,当前方法的事务如何传播给被调用的方法。Spring提供了多个事务传播行为选项,可以根据具体情况进行选择。下面是常见的事务传播行为:


1. REQUIRED(默认):如果当前存在事务,则加入到当前事务中;如果当前没有事务,则创建一个新的事务。这是最常用的传播行为。


2. REQUIRES_NEW:无论当前是否存在事务,都创建一个新的事务。如果当前存在事务,则将它挂起。


3. SUPPORTS:如果当前存在事务,则加入到当前事务中;如果当前没有事务,则以非事务的方式执行。


4. MANDATORY:如果当前存在事务,则加入到当前事务中;如果当前没有事务,则抛出异常。


5. NOT_SUPPORTED:以非事务的方式执行操作;如果当前存在事务,则将它挂起。


6. NEVER:以非事务的方式执行操作;如果当前存在事务,则抛出异常。


7. NESTED:如果当前存在事务,则创建一个嵌套事务;如果当前没有事务,则创建一个新的事务。嵌套事务是外部事务的一部分,它可以独立提交或者回滚,不影响外部事务。


请注意,事务传播行为只适用于声明式事务(通过XML配置或注解配置),而不适用于编程式事务。可以根据具体的需求选择适合的事务传播行为来管理事务。


向大家推荐《Activiti工作流实战教程》:https://xiaozhuanlan.com/activiti
0

有建议,请留言!

  • *您的姓名:

  • *所在城市:

  • *您的联系电话:

    *您的QQ:

  • 咨询问题:

  • 提 交