spring 事物传播机制

spring的事务传播行为Propagation 总共有7种:

  • REQUIRED
    如果当前没有事务,就新建一个事务;如果已经存在一个事务中,加入到这个事务中。这是最常见的选择,也是spring默认的行为

  • SUPPORTS
    支持当前事务;如果当前没有事务,就以非事务方式执行。

  • MANDATORY
    使用当前的事务,如果当前没有事务,就抛出异常。

  • REQUIRES_NEW
    新建事务,如果当前存在事务,把当前事务挂起。内部事物与外部事物互不影响

  • NOT_SUPPORTED
    以非事务方式执行操作,如果当前存在事务,就把当前事务挂起。

  • NEVER
    以非事务方式执行,如果当前存在事务,则抛出异常。

  • NESTED
    如果当前没有事务,创建事物执行;如果当前存在事务,则创建依赖外部事物的事物,即若内部事物回滚,外部事物也回滚,若外部事物回滚,则内部事物也回滚

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容