Spring AOP概念
(1)AOP(Aspect Oriented Programming)是面向切面编程。
就是通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。
简单说 就是在不改变方法原代码的基础上,对方法进行功能增强
本质上是生成了一个新的类,叫做代理类
(2)AOP对程序的扩展方式采用动态代理的方式. (JDK动态代理和Cglib动态代理两种方式)
Spring 动态代理
(1)JDK的动态代理
》Proxy类的方法
Proxy类的静态方法可以创建代理对象
static Object newProxyInstance(ClassLoader loader, Class<?>[] interfaces, InvocationHandler h)
》三个参数
参数1:ClassLoader loader 类加载器 , 用来加载代理对象
参数2:Class<?>[] interfaces 目标类的字节码对象数组. 因为代理的是接口,需要知道接口中所有的方法
参数3:InvocationHandler h 执行句柄, 代理对象处理的核心逻辑就在该接口中
spring AOP
最新推荐文章于 2022-05-31 14:17:02 发布