阅读背景:

实现动态代理的两种方式

来源:互联网 

常见的实现代理的两种方式:(1)JDK动态代理(2)使用cglib产生代理

这两种方法各有好坏。jdk动态代理是由java内部的反射机制生成字节码并生成对象来实现的,而cglib代理底层是借助asm来实现的,这个asm就是一个java字节码操纵框架,它能用来动态生成类或者增强类的功能,ASM从类文件中读入信息后,改变类的行为,分析类的信息,这就跟aop实现方式中的静态织入的是一样的,就是相当于把切面织入类的字节码文件中,以此达到拦截的作用。一般jdk动态代理用于目标类都是基于统一的接口,cglib多用于对类的代理,这些类不需要实现统一的接口。这两种方法各有




你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: