开发链接
https://www.cnblogs.com/jiangbei/p/8439394.html
笔记
Spring boot热部署
作用:每次修改不用重新重启服务器,重新发布程序后也不需要重新启动服务
优点:线上和线下都使用,无需重启服务器,提高开发调试效率
提纲: 热部署与案例解析
案例解析
项目演示
测试
发布程序
总结
java热部署与热加载的联系:
不重启服务器编译/部署项目
基于java的类加载器实现
区别: 1部署方式
热部署在服务器运行是重新部署项目
热加载在运行时重新加载class
2实现原理
热部署重新直接加载整个应用
热加载在运行时重新加载class
3使用场景
热部署更多的是在 生产 环境使用
热加载更多的是在 开发 环境使用
热部署与案例解析
初始化JVM-->
产生启动类加载器classLoad(子类自动加载)-->
标准扩展累加载器-->
系统类加载器-->
加载class文件(交给父类加载)
热部署类加载的五个阶段
加载-->
验证-->
准备-->
解析-->
初始化
java类的热部署实现方法
1类的热加载
2配置Tomcat
通过Tomcat实现热部署
1,直接把项目web文件夹放在webapps里,这是tomcat自带的热部署
2,在tomcat\conf\server.xml中的<host></host>内部添加<context/>标签
<Context debug="0" docBase="D:/Imooc/web" path="/hot" privileged="true" reloadable="true">
访问项目时,改为访问/hot路径,这种方法不要赋值项目外部的文件夹,就把项目内部的所有文件复制
3,在%tomcat_home%\conf\Catalina\localhost中添加一个XML文件,内部就直接写2中的配置信息
springboot热部署实现的两种方式
使用Spring Loaded
使用spring-boot-devtools