cglib代理流程
- 引入jar
<dependency>
<groupId>cglib</groupId>
<artifactId>cglib</artifactId>
<version>2.2.2</version>
</dependency>
- 实现接口MethodInterceptor,重写intercept方法Object o = proxy.invokeSuper(obj, args);
- 在方法前后就是执行代理方法
- 用Enhancer对象创建代理对象
注意private或者final方法不可重写
方法内部也会被拦截 spring的aop无法拦截内部方法调用,但是cglib可以
代码示例