cglib 操作字节码的框架
时间: 2023-08-24 15:10:55 浏览: 115
CGLIB(Code Generation Library)是一个基于ASM(Java字节码操作与分析框架)的字节码操作框架。它可以在运行时动态地生成字节码并生成新的类,以实现对类的扩展和增强。
CGLIB主要用于实现代理,尤其是在Spring框架中的AOP(面向切面编程)中经常使用。它可以通过生成子类来实现代理,从而在运行时对目标类进行增强。
CGLIB的核心思想是通过生成目标类的子类来实现代理,子类继承自目标类,因此可以重写目标类的方法,并在方法前后添加额外的逻辑。这种方式相对于JDK动态代理(基于接口)更加灵活,可以代理没有接口的类。
使用CGLIB,我们可以在运行时动态地创建代理类,并通过重写方法来实现对目标类的增强。CGLIB可以操作字节码,对目标类进行修改和扩展,实现方法拦截、属性拦截等功能。
总结来说,CGLIB是一个操作字节码的框架,通过生成子类来实现对目标类的代理和增强,常用于实现AOP功能。
阅读全文