环境: 数据库操作mybatis-plus
原因:使用了spring自带的事务管理.
原理:spring自带事务会创建代理类,从而使得在代理方法中进行AOP切面用来获取对应的事务信息,而mybatis-plus自动生成的代码是直接继承ServiceImpl,具体的方法都在此类中从而使得AOP代理类在调用方法时,会匹配当前方法所对应的拦截器,而发现当前代理类中没有具体的实现的方法从而使得本地事务的AOP代理失效,从而导致失去了事务管理使得动态数据源切换无效.
环境: 数据库操作mybatis-plus
原因:使用了spring自带的事务管理.
原理:spring自带事务会创建代理类,从而使得在代理方法中进行AOP切面用来获取对应的事务信息,而mybatis-plus自动生成的代码是直接继承ServiceImpl,具体的方法都在此类中从而使得AOP代理类在调用方法时,会匹配当前方法所对应的拦截器,而发现当前代理类中没有具体的实现的方法从而使得本地事务的AOP代理失效,从而导致失去了事务管理使得动态数据源切换无效.
本文标题:动态数据源dynamic-datasource,切换失效问题
本文链接:https://www.haomeiwen.com/subject/mthcqltx.html
网友评论