奇怪的AOP方法被调用2次解决办法
AOP的方法被调用2次,很是奇怪,最后发现是bean相互引用引起的,具体原理不知。
解决办法,在拦截器类中通过taget获得需要引用的方法。
?
如:
ServiceA引用了ServiceB
ServiceB引用了ServiceA
ServiceA中有拦截器Interceptor
Interceptor引用了ServiceB
?
此时Interceptor中的方法会被调用2次
解决版本就是Interceptor不引用ServiceB,还是通过((ServiceA)Target).getServiceB来获得ServiceB
?