SpringAop,類內部方法互相調用,不觸發注解切面的原因


Foo.class有方法bar1(),bar2(),兩個方法都有注解@AuthValidate,對應切面AuthValidateAspect
其他類調用Foo.bar1或bar2時,會觸發切面
但bar1方法內調用bar2()時,不會觸發切面
原因:aop基於Foo類實現了一個代理類FooProxy,外部方法調用時是用FooProxy調用,可以走到切面方法;內部調用時不會走FooProxy,也就不會走到切面方法。

詳情請看此博客
解決辦法:將需要切面方法的部分新建成一個外部類FooAspectService.class,並調用其方法


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM