博客主页:不会压弯的小飞侠
✨欢迎关注:点赞收藏⭐留言✒
✨系列专栏:SpringBoot专栏(每日更新)
✨如果觉得博主的文章还不错的话,请三连支持一下博主。
欢迎大佬指正,一起 学习!一起加油!
热部署,就是不需要停掉服务,可以线上改,改完立马生效。
因为不启用热部署时每次更改java数据都要重启服务器影响开发效率。
关于热部署:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>
方便测试是否启用了热部署:
详细代码:点击直接查看
@GetMapping("{id}")
public R getById(@PathVariable Integer id){
System.out.println("host deploy...");
System.out.println("host deploy...");
System.out.println("host deploy...");
return new R(true, bookService.getById(id));
}
自动启动热部署步骤:
如果想要某些文件或者文件夹不参与热部署的配置需要在application.xml中配置以下信息:
# 设置不参与热部署的文件或文件夹
devtools:
restart:
exclude: static/**,public/**,config/application.yml
在application.yml中配置:
# 设置不参与热部署的文件或文件夹
devtools:
restart:
exclude: static/**,public/**,config/application.yml
enabled: false
这种形式关闭热部署,优先级别太低,可能关闭之后,别人又从别的配置文件或者其他地方给打开了(在优先级别高的地方),从而导致热部署在此启动.
在优先级别高的地方禁用热部署。
由低到高
application.yml配置文件在优先级为3的地方,可以在优先级为6的地方禁用热部署功能:
package com.jkj;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class SpringbootHotDeployApplication {
public static void main(String[] args) {
System.setProperty("spring.devtools.restart.enabled","false");
SpringApplication.run(SpringbootHotDeployApplication.class);
}
}