接口方法上的注解无法被@Aspect声明的切面拦截的原因分析

今天项目遇到大坑,以前做多数据源springboot都是用的2.0.1版本,这一次项目组用的脚手架采用1.5.0搭建,拷贝以前的多数据源配置发现mapper接口的注解进不了aop,原来是版本问题
https://my.oschina.net/guangshan/blog/1808373#h2_4
解决方式:
不用注解方式启动aop,采用扫描mapper下所有接口任意方法来启动aop切面,再扫描mapper接口方法上注解获取采用的数据源
springboot2.x写法:

    @Pointcut(value = "@annotation(com.sc.config.multisource.annotation.DataSourceSign)")
    private void cut() {
    }

springboot1.x写法:

    @Pointcut(value="execution(* com.sc.mapper.*.*(..))")
    private void cut() {
    }

你可能感兴趣的:(接口方法上的注解无法被@Aspect声明的切面拦截的原因分析)