我在我的 spring mvc 项目中创建了一个自定义注释。注解用于执行 AOP
@Around("execution(@Cached * * (..)) && @annotation(cache)")
这里我创建的注释是“缓存的”,任何带有注释的方法都缓存在沙发库中,响应作为它的值,方法参数作为它的键。
问题是控制器上的注释工作(AOP工作)很好。但是,从控制器中,我正在调用不同的可调用类和实用程序。当我在可调用类或 util 函数上添加注释“@Cached”时,AOP 不起作用。
在 XML 文件中,以下是我声明的内容。
<aop:aspectj-autoproxy/>
<context:spring-configured/>
<context:component-scan base-package="com.abc.xyz">
<!--<context:include-filter type="annotation" expression="org.aspectj.lang.annotation.Aspect"/>-->
</context:component-scan>
<bean id="universalController" class="com.abc.xyz.misc.UniversalController"/>
<bean class="com.abc.xyz.api.metric.SystemTiming"/>
<bean class="com.abc.xyz.api.annotations.URLCacheImpl"/>