1234567891011121314151617181920212223242526272829 |
- package J20250807.proxy.dynamicProxy.cglibDynamicProxy;
- import net.sf.cglib.proxy.Enhancer;
- /**
- * @author WanJl
- * @version 1.0
- * @title MyTest
- * @description
- * @create 2025/8/7
- */
- public class MyTest {
- public static void main(String[] args) {
- //1、通过增强器对象Enhancer,生成代理类
- Enhancer enhancer=new Enhancer();
- //2、设置被代理类为父类(CGLIB是通过继承实现代理)
- enhancer.setSuperclass(OrderService.class);
- //3、设置方法拦截器--代理逻辑
- enhancer.setCallback(new LogInterceptor());
- //4、生成代理对象 代理类是OrderService类的子类
- //父类的引用 = 子类的对象
- OrderService proxy = (OrderService) enhancer.create();
- //5、通过代理对象调用方法
- proxy.addOrder();
- System.out.println("-------------------");
- proxy.deleteOrder();
- }
- }
|