转贴请注明出处:http://blog.youkuaiyun.com/froole
不停止JVM动态更新Java类,到底有什么用处?
对于大多数WEB程序这个功能并没有什么意义,这里假设在桌面系统以及服务器的情况:
- 桌面软件,当用户在线升级程序后,需要将最新的Java类动态提取到当前的classloader以供用户使用最新状态的程序
- 桌面软件,当需要各种插件时,需要从设定文件中提取信息,并在启动时提取。而这种提取需要在程序启动之后,例如Eclipse
- Servlet容器,动态提取最新状态的jar包、Servlet类、JSP类以及设定文件等
不停止JVM动态更新Java类功能,显然在很多地方是必不可少的。以下笔者将以代码的形势演示如何实现此功能。
代码:
执行结果:
<script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script>
转贴请注明出处:http://blog.youkuaiyun.com/froole
本文介绍了一种在不重启JVM的情况下动态更新Java类的方法。通过切换类加载器来实现在运行时加载不同版本的Java类,适用于需要热更新的桌面应用或服务器端程序。文中提供了一个具体示例,展示了如何加载两个不同版本的类并调用其方法。
533

被折叠的 条评论
为什么被折叠?



