【障碍再现】

    MyBatis配置多数据源时,数据源切换失败。

【原因分析】
    自定义切面和Spring自带事务切面“即<aop:advisor>”执行的先后顺序导致数据源不能切换成功。

【解决方案】
1、配置代码

1 <aop:config>                    
2     <!-- 1、Spring框架自身提供的切面 -->
3     <aop:advisor advice-ref="userTxAdvice" pointcut="execution(public * com.zjrodger.*.service..*.*(..))" order="2"/>                                
4     <!-- 2、用户自定义的切面,根据切入点,动态切换数据源。 -->        
5     <aop:aspect id="dataSourceAspect" ref="dataSourceInterceptor" order="1">                                        
6         <aop:before method="setdataSourceBakDb"  pointcut="execution(* com.zjrodger.bakdata.service..*.*(..))"/>                        
7         <aop:before method="setdataSourceHuihangDb"  pointcut="execution(* com.zjrodger.datatobank.service..*.*(..))"/>    
8     </aop:aspect>        
9 </aop:config>
不同AOP切面类的配置

相关文章:

  • 2021-09-14
  • 2022-01-07
  • 2022-12-23
  • 2021-09-12
  • 2021-12-27
  • 2021-08-17
  • 2021-07-06
  • 2021-11-11
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-09-10
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-09-01
相关资源
相似解决方案