zoukankan      html  css  js  c++  java
  • 在MyBatisPlus整合dynamicdatasource @DS失效

    因为是事务导致的

    解决方案:

    1.删除事务

    2.使用分布式事务

    3.修改事务的传播机制

    3.使用DS的本地事务 @DSTransactional 但切记不可和Spring的事务共存

    附传播机制

    事务传播行为类型

                            
                            

    说明

                            
                            

    PROPAGATION_REQUIRED

                            
                            

    如果当前没有事务,就新建一个事务,如果已经存在一个事务中,加入到这个事务中。这是最常见的选择。

                            
                            

    PROPAGATION_SUPPORTS

                            
                            

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

                            
                            

    PROPAGATION_MANDATORY

                            
                            

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

                            
                            

    PROPAGATION_REQUIRES_NEW

                            
                            

    新建事务,如果当前存在事务,把当前事务挂起。

                            
                            

    PROPAGATION_NOT_SUPPORTED

                            
                            

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

                            
                            

    PROPAGATION_NEVER

                            
                            

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

                            
                            

    PROPAGATION_NESTED

                            
                            

    如果当前存在事务,则在嵌套事务内执行。如果当前没有事务,则执行与PROPAGATION_REQUIRED类似的操作。

                            
  • 相关阅读:
    关于Java常见的误解
    Java程序设计概述
    是结束,更是开始!
    从零开始单排学设计模式「简单工厂设计模式」黑铁 III
    某神秘公司 RESTful、共用接口、前后端分离、接口约定的实践
    这40张图送给单身程序员,情人节请一笑而过!
    科技圈晒开工福利!2019一起定个小目标!
    IDEA一定要懂的32条快捷键
    假期结束了,我相信未来会更好!
    有一种痛,叫 “今年没有年终奖”!!!
  • 原文地址:https://www.cnblogs.com/sansui/p/15592772.html
Copyright © 2011-2022 走看看