看了很多天的深入java虚拟机及大量类加载器相关知识,还是没能搞清楚‘热部署’到底是通过什么手段实现的呢?

解决方案 »

  1.   


    所谓热部署,就是在应用正在运行的时候升级软件,却不需要重新启动应用。对于Java应用程序来说,热部署就是在运行时更新Java类文件。在基于Java的应用服务器实现热部署的过程中,类装入器扮演着重要的角色。大多数基于Java的应用服务器,包括EJB服务器和Servlet容器,都支持热部署。类装入器不能重新装入一个已经装入的类,但只要使用一个新的类装入器实例,就可以将类再次装入一个正在运行的应用程序。
      

  2.   

    一般来说,写该jsp和css、js、、、、会重新部署(在不需要重启服务的时候),刷新页面就可以;修改了java类最好重启(当然有时候也可以),和环境有一定的关系。
      

  3.   

    java classLoad加载机制 直接可以通过程序把.class文件加载成对象..这个是原理
      

  4.   

    原理是这个原理,在自己实现的时候总是有问题。有一个问题不清楚,就是每次有新修改过的class后是否要拿个新classloader加载一遍所有虚拟机中的类?然后用这个classloader。还是新classloader只是加载这更新过的类而已?