第06章—热部署
spring boot 系列学习记录:http://www.cnblogs.com/jinxiaohang/p/8111057.html
码云源码地址:https://gitee.com/jinxiaohang/springboot
随着项目的越变越大,有种编码2小时编译5分钟的感觉,运用热部署目的就是节省时间,不在忍受漫长的等待。
一、热部署
在项目开发过程中,常常会改动页面数据或者修改数据结构,为了显示改动效果,往往需要重启应用查看改变效果,其实就是重新编译生成了新的 Class
文件,这个文件里记录着和代码等对应的各种信息,然后 Class
文件将被虚拟机的 ClassLoader
加载。而热部署正是利用了这个特点,它监听到如果有 Class
文件改动了,就会创建一个新的 ClaassLoader
进行加载该文件,经过一系列的过程,最终将结果呈现在我们眼前。
本次学习一种常用的实现方式。spring-boot-devtools
二、添加 POM 文件依赖
<!--添加热部署依赖--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional>true</optional> <!-- 这个需要为 true 热部署才有效 --> </dependency>
三、IDEA设置
- 1、CTRL + SHIFT + A --> 查找make project automatically --> 选中
- 2、CTRL + SHIFT + A --> 查找Registry --> 找到并勾选 compiler.automake.allow.when.app.running
- 3、CTRL + SHIFT + A --> 查找Build project automatically --> 选中
四、测试是否实现
第一次启动访问界面:
修改数据,再次访问界面:
控制栏的日志,在没有手动重启的情况下完成的。