AopContext.currentProxy()该用法的意义

今天在看同事代码的时候,发现在一个Service层,A方法调用B方法的时候,用了

((Service)AopContext.currentProxy()).B()

这种方式去调用,我没遇到过这种方式,不太理解,后来百度了一下,终于明白这样用法的意义,现在记录下来!


原来在springAOP的用法中,只有代理的类才会被切入,我们在controller层调用service的方法的时候,是可以被切入的,但是如果我们在service层 A方法中,调用B方法,切点切的是B方法,那么这时候是不会切入的,解决办法就是如上所示,在A方法中使用
((Service)AopContext.currentProxy()).B() 来调用B方法,这样一来,就能切入了!

posted on 2019-05-28 09:25  敲代马  阅读(13359)  评论(0编辑  收藏  举报

导航