最近写一个ppt,需要对aop有一个基础的了解
学习java多年,但是对aop 还有很多疑问,于是查阅相关的博客
1)SpringAOP和AspectJ是什么关系?
2)SpringAOP、AspectJ和CGLIB是什么关系?
3)SpringAOP、AspectJ和JDK代理是什么关系?
4)什么时候使用SpringAOP、什么时候使用AspectJ?
参考
https://blog.csdn.net/jinjin603/article/details/78954471
什么是动态代理,什么静态编译
他们和三种织入方式又有什么关联【编译时期,运行时期,类加载时期】
AspectJ实现了几种
我查阅相关博客,他说实现了两种,编译的织入,类加载时候导入
https://www.cnblogs.com/wade-luffy/p/6073702.html
只是在实际的项目中,如果我们用AspectJ,更多的他都编译时期的这个特性,所以说他静态编译的代表,
基于spring aop,他用的是AspectJ的注解,实际用到还是CGLIB和JDK动态代理,所以他是动态代理的代表,发生在运行时期
对于类加载时期的代表,agent
性能比较
https://blog.csdn.net/a837199685/article/details/68930987