本文意在讲解CGLIB的基础使用及基本原理. 一.CGLIB的基本原理: 依赖ASM字节码工具,通过动态生成实现接口或继承类的类字节码,实现动态代理. 针对接口,生成实现接口的类,即implements方式:针对类,生成继承父类的类,即extends方式. 二.为什么使用CGLIB? JDK的动态代理只能基于接口,有时候我们想基于类生成动态代理,这个时候CGLIB是一个选择. 没什么场景下是必须使用CGLIB生成类代理的(个人观点),如果有,可能是代码简洁,某些情况下性能较好. CGLIB基于类