实战一:JDK与Cglib动态代理

第六章 实战一:JDK与Cglib动态代理

从事Java后端开发的读者,对动态代理都不陌生,常用的框架几乎都有用到动态代理,如Spring AOP、Dubbo SPI。近几年,Spring框架几乎是面试中必问的一个框架,其AOP特性也是面试官喜欢考查应聘者对Spring框架的了解程度的必问知识点。

在Java中,动态代理常见的实现方式有两种。一种是基于接口实现,如JDK实现的动态代理;另一种是基于子类实现,如最具代表性的Cglib。Cglib不仅实现基于子类的动态代理,也实现了基于接口的动态代理。我们将使用ASM和动态字节码技术实现这两种方式的动态代理。