美文网首页
JDK动态代理和CGLIB代理有什么区别?

JDK动态代理和CGLIB代理有什么区别?

作者: 菜鸟养成记 | 来源:发表于2021-09-10 08:15 被阅读0次

JDK动态代理和CGLIB代理有什么区别?
JDK 动态代理主要是针对类实现了某个接口,AOP 则会使用 JDK 动态代理。他基于反射的机制实现,生成一个实现同样接口的一个代理类,然后通过重写方法的方式,实现对代码的增强。

而如果某个类没有实现接口,AOP 则会使用 CGLIB 代理。他的底层原理是基于 asm 第三方框架,通过修改字节码生成成成一个子类,然后重写父类的方法,实现对代码的增强。

相关文章

网友评论

      本文标题:JDK动态代理和CGLIB代理有什么区别?

      本文链接:https://www.haomeiwen.com/subject/zctmwltx.html