需求:(1)对UserServiceImpl现有字节码进行修改逻辑操作
(2)修改完成后使用该class
(3) 再次修改UserServiceImpl字节码,添加新逻辑
(4)修改完成后使用该class
遇到的问题: (1)一个类只能被加载一次
(2)类加载后默认不能为修改
(3)不同classload 下的同名类不能强行转化
javassist 简介
Javassist是⼀个开源的分析、编辑和创建Java字节码的类库。其主要的优点,在于简
单,⽽且快速。直接使⽤java编码的形式,⽽不需要了解虚拟机指令,就能动态改变类的结
构,或者动态⽣成
原始类文件
javassist API介绍
API执⾏流程
public class UserServiceImpl implements UserService{
public void getUser() {
System.out.println(&#