如何解决spring aop无法代理手动new的对象问题

Spring Aop没法代理new的对象只能代理ioc容器内的bean,导致有些日志没法记录。

改成aspectJ做代理

1、aspectJ做代理,因为AspectJ是在编译时织入,Aop是在运行时织入。

2、AspectJ可以在所有域对象中应用,Aop只能应用于由 Spring 容器管理的 bean。

3、AspectJ是静态代理,Aop由动态代理JDK代理、CGLib代理。

4、AspectJ可以代理call和execution等,Aop只能代理点execution。(call捕获的joinpoint是签名方法的调用点,而execution捕获的则是执行点)

你可能感兴趣的:(javaspring)