cglib代理

阅读更多

CGLIB代理
cglib是一个高性能的代码生成库。
相对jdk动态代理,针对没有实现接口的类提供代理方案。
利用轻量级字节码处理框架ASM,将相应字节码转换生成子类,覆盖非final方法来进行代理,因此,cglib不能代理final类或者final方法。
通过提供一系列的回调类型,处理不同场景下的代理:

cglib代理_第1张图片
 
功能最强的是MethodInterceptor类型,代理对象的所有方法都会被分配到这个接口的intercept方法进行处理。
另一个关键类Enhancer,可以通过该实例指定代理对象,设置相应回调类型,创建具体代理对象:


cglib代理_第2张图片
 


 

  • cglib代理_第3张图片
  • 大小: 321.6 KB
  • cglib代理_第4张图片
  • 大小: 299.5 KB
  • 查看图片附件

你可能感兴趣的:(cglib代理)