Java常见几种动态代理实现方式
5个月前 (12-11)
0 点赞
0 收藏
0 评论
7 已阅读
一、四种方式
JDK动态代理:运行期动态的创建代理类,只支持接口。
ASM:一个 Java 字节码操控框架。它能够以二进制形式修改已有类或者动态生成类。不过ASM在创建class字节码的过程中,操纵的级别是底层JVM的汇编指令级别,这要求ASM使用者要对class组织结构和JVM汇编指令有一定的了解;cglib基于ASM实现动态代理。
javassist:一个开源的分析、编辑和创建Java字节码的类库(源码级别的类库)。javassist是jboss的一个子项目,其主要的优点,在于简单,而且快速。直接使用java编码的形式,而不需要了解虚拟机指令,就能动态改变类的结构,或者动态生成类;
bytebuddy:一个更高层次操作字节码的工具包。
还没有任何评论,你来说两句吧