JDK / CGLIB 动态代理

Posted qhlpn

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JDK / CGLIB 动态代理相关的知识,希望对你有一定的参考价值。

1、JDK 的动态代理:针对实现了接口的类产生代理 (Proxy+InvocationHandler)
2、Cglib 的动态代理 :针对没有实现接口的类产生代理. 应用的是底层的字节码增强的技术生成当前类的子类对象 (MethodInterceptor)

   -- Cglib是一种代码生成包

   技术图片

   如上图:最底层是字节码,是JVM跨平台产生的虚拟指令格式(区别机器码)

       字节码之上是ASM,是直接操作字节码的框架

         ASM之上是Cglib等,它们可以通过ASM框架生成字节码

技术图片

技术图片

 

以上是关于JDK / CGLIB 动态代理的主要内容,如果未能解决你的问题,请参考以下文章

JDK动态代理CGLIB动态代理

JDK动态代理CGLIB动态代理

代理模式(静态代理jdk动态代理CGLib动态代理)

JDK 动态代理与 CGLIB 动态代理,它俩真的不一样

JDK的动态代理与cglib动态代理

写cglib动态代理需要哪些jar包