JDK代理与CGLib代理的区别

Spring的AOP动态代理有两种实现方式,那么这两种代理方式有什么区别呢?

区别

实现上,如果类是接口的时候或者类是JDK创建的proxy类时使用的是JDK的,否则使用CGLib代理。

img

性能上:JDK代理需要JVM底层上进行方法的分发,而CGLib运行创建特定的字节码来改善性能,这是别人做的性能对比。

image.png

看上去CGLib会更快一点呢

参考

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容