1.概述
上一篇文章:【字节码】javassist 定义属性以及创建方法时多种入参和出参 类型的使用
转载来源于:小傅哥的字节码编程-(公众号:bugstack虫洞栈)
仅供学习。并且做了稍微修改。
通过前面两篇 javassist 的基本内容,大体介绍了;类池(ClassPool
)、类(CtClass
)、属性(CtField)、方法(CtMethod),的使用方式,并通过创建不同类型的入参出参方法,基本可以掌握如何使用这样的代码结构进行字节码编程。
那么,今天我们尝试使用 javassist 去修改一个正在执行中的类里面的方法内容。也就是在运行时重新加载类信息
可能在你平时的 CRUD 开发中并没有想到过这样的 烧操作
,但它却有很多的应用场景在使用,例如;
- 热部署常用在生产环境中,主要由于这样的系统不能频繁启停且启动耗时较长的应用。