SpringBoot热部署入门完整教程

207 阅读2分钟

日期:2022年2月28日

出处:

黑马程序员SpringBoot2全套视频教程,springboot零基础到项目实战(spring boot2完整版)

www.bilibili.com/video/BV15b…

正文


热部署(热启动)就是当我们的程序发生修改变动的时候,服务器无需重新启动,直接生效。

启动热部署步骤:

1.添加坐标

<!--        热部署-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <optional>true</optional>
        </dependency>

2.激活热部署,点击Build_Project,或者快捷键Ctrl+F9

如何使热部署自动激活?

1.打开Settings设置页面

2.勾选Build project automatically

3.勾选Allow auto-make to....选项

完成这些就设置好了自动激活热部署了

注意:热部署的自动激活是当前IDEA失去焦点5s以后才执行的

自定义热部署范围

通过测试发现有的文件并没有参与到热部署中,那些文件就是不在热部署的默认范围内

自定义重启排除项:

spring:
  devtools:
    restart:
#      设置不参与热部署的文件或文件夹
      exclude: static/**,public/**,config/application.yml

如何彻底关闭热部署

有一种情况是一个项目多个人来共同完成,程序开发人员会开启热部署,但是运维人员或者是实施人员是不需要热部署的,然而普通的在配置文件中通过

		enabled: false

有时候是不行的,因为它的优先级比较低

所以我们就使用属性加载优先级高的来彻底关闭热部署

由6层级覆盖3层级,在主运行程序中修改

代码如下

package com.ssmp.springboot_smmp;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

import java.lang.reflect.Array;
import java.util.Arrays;

@SpringBootApplication
public class SSMPApplication {

    public static void main(String[] args) {
        System.setProperty("spring.devtools.restart.enabled","false");
        SpringApplication.run(SSMPApplication.class);
    }
}

总结


今天学习了有关热部署的全部知识,热部署使项目开发人员不必每次测试的时候都再重启服务器一遍了,通过热部署可以直接修改代码即可,使开发人员更加关注代码逻辑省区一些重复的繁琐操作,提高了开发的效率。