java-在Spring AOP的服务中注入服务的相同实例的最佳方法是什么
作者:互联网
我是一个ServiceImpl,带有Spring的@Service构造型注释,并且其中有两个方法,每个方法都带有由Spring拦截的自定义注释.
@Service
public class ServiceImpl implements Service{
@CustomAnnotation
public void method1(){
...
}
@AnotherCustomAnnotation
public void method2(){
this.method1();
...
}
}
}
现在Spring使用基于代理的AOP方法,因此当我使用this.method1()@CustomAnnotation的拦截器将无法拦截此调用时,我们曾经将此服务注入另一个FactoryClass中,因此我们能够获得代理实例-
@AnotherCustomAnnotation
public void method2(){
someFactory.getService().method1();
...
}
我现在正在使用Spring 3.0.x,这是获取代理实例的最佳方法吗?
解决方法:
另一种选择是使用AspectJ和@Configurable.
春天似乎正朝着这些日子发展(有利).
如果您使用Spring 3,我会考虑一下它,因为它比基于代理的aop更快(性能)并且更灵活.
标签:spring-aop,aop,spring,java 来源: https://codeday.me/bug/20191102/1994840.html