四、AOP基本概念
1.AOP是什么?
面向切面编程,利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各个部分之间的耦合度降低,提高程序的可重用性,提高开发效率;
通俗解释:不通过修改源代码就可以将新的功能添加到主干中。
2.AOP底层原理
(1)AOP底层使用的是动态代理:有两种情况的动态代理
一种情况:有接口时,使用的是JDK 的动态代理;
一种情况:无接口时,使用的是CGLIB动态代理;
(2)实例:使用JDK 的动态代理,使用Proxy类中的方法创建对象
增强类代码
类加载器:
结果