【原】如何获取Java动态生成类?
写作目的:Java大部分框架,如Spring,Hibernate等都会利用动态代理在程序运行的时候生成新的类,
有的时候为了学习,或者深入了解动态代理,想查看动态生成类的源代码究竟长怎么个样子,
通过这篇文章,我们就能够很容易到达目的。
工具:利用JDK自带的工具。
相关命令:java -cp .;%JAVA_HOME%/lib/sa-jdi.jar sun.jvm.hotspot.HSDB
操作步骤:
1) 打开命令行窗口, 查看JDK安装目录
2) 进入该目录
3)输入关键命令
将会弹出一个Swing程序,如下图
4) File->Attach to HotSpot Process, 并输入想查看Java进程的ProcessId
5)经过如上步骤,将会在当前目录下生成相应的Class文件,最后找一个反编译工具(如jd-gui)打开,即可以看到原码啦。