Spring中自定义注解在接口方法中不生效,在对应的实现类上才能生效

img
如图,第三个注解在接口中不生效,另外两个事务和异步的注解是正常生效的,我把第三个注解挪动到对应实现类中就能生效

注解的trage
@Target({ElementType.METHOD, ElementType.TYPE})

接口和实现类我也放到了相同的包目录下。

你要是用AspectJ,@annotation去做拦截的话,不好意思,它不支持,它在启动过程中,只会加载实现类方法上面的注解;这个之前有人提过这个问题,特意整个debug走了一下,人家官网也特意说明了,只作用在实现类的方法上