读书人

奇怪的AOP方法被调用2次解决方法

发布时间: 2012-07-20 10:38:30 作者: rapoo

奇怪的AOP方法被调用2次解决办法

AOP的方法被调用2次,很是奇怪,最后发现是bean相互引用引起的,具体原理不知。

解决办法,在拦截器类中通过taget获得需要引用的方法。

?

如:

ServiceA引用了ServiceB

ServiceB引用了ServiceA

ServiceA中有拦截器Interceptor

Interceptor引用了ServiceB

?

此时Interceptor中的方法会被调用2次

解决版本就是Interceptor不引用ServiceB,还是通过((ServiceA)Target).getServiceB来获得ServiceB

?

读书人网 >软件架构设计

热点推荐