1、Java热部署与热加载联系
- 不重启服務器编译/部署项目
- 基于Java的类加载器实现
2、Java热部署与热加载区别
- 热部署在服务器运行时重新部署项目
- 热加载在运行时重新加载class
- 热部署直接重噺加载整个应用
- 热加载在运行时重新加载class
1、Java类加载过程
-> 产生启动类加载器(子类自动加载) -> 标准扩展类加载器 3、初始化类的时候其父类沒有初始化4、Java类加载器特点
- 由AppClass Loader(系统类加载器)开始加载执行的类
- 类加载器将加载任务交给其父,如果其父找不到再由自己去加载
- Bootstrap Loader(启動类加载器)是最顶级的类加载器
5、Java类的热部署
- 配置Tomcat实现热部署
- 直接把项目web文件夹放在webapps里
Java类热加载案例分析
1、类层次结构清晰,修改某一個java类文件不需要重启服务或者重新编译运行程序
2、可以适当的运用一些设计模式使代码结构更加清晰明了比如工厂模式
IDEA修改项目文件后需要重新编译
(1)修改配置文件3处
将打包后的war包放入webapps目录下,会自动解压
还可以在新建SpringBoot项目的时候直接选择war包方式