动态代理是指不改变原有的代码,在运行时利用拦截器进行拦截利用反射增强该方法,降低了代码的耦合性
一、常用的动态代理技术
- JDK 代理 : 基于接口的动态代理技术·:利用拦截器(必须实现invocationHandler)加上反射机制生成一个代理接口的匿名类,在调用具体方法前调用InvokeHandler来处理,从而实现方法增强
- CGLIB代理:基于父类的动态代理技术:动态生成一个要代理的子类,子类重写要代理的类的所有不是final的方法。在子类中采用方法拦截技术拦截所有的父类方法的调用,顺势织入横切逻辑,对方法进行增强
二、JDK动态代理方式
首先创建接口和实现类
创建jdk工厂类
编写测试类
三、CGLIB动态代理方式
创建目标类
创建cglib工厂类
编写测试类
标签:创建,代理,接口,案例,子类,动态,方法 From: https://blog.csdn.net/qq_65993561/article/details/142423573