java之Aop

Aop 知识点

1 jdk 动态代理
2 CGLIB 动态代理

区别:
1 jdk 所有目标类需实现一个接口
2 jdk 需要实现动态代理类,实现InvocationHandler接口 并实现invoke方法
3 cglib 不需要实现接口
4 cglib 代理类需实现MethodInterceptor,并实现其intercpter方法
5 cglib 实现增强的目标类工厂Factory,使用Enhancer类的方法获取增强后的目标类
6 cglib 关联cglib.jar和asm.jar(asm生成目标类执行效率较高)