Springboot热部署相关功能


前言

环境是Mac电脑下的IDEA 2023.1.X版本
如何在修改程序后自动进行加载修改后的程序而不是重启加载所有资源而更新程序,这就使用到了Springboot相关的热部署功能。


一、Springboot如何在IDEA中开启热部署

1.首先添加热部署相关的坐标和配置

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
</dependency>

<build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <!--实现热部署-->
                <configuration>
                    <fork>true</fork>
                </configuration>
            </plugin>
        </plugins>
</build>

2.点击Build Project即可在这里插入图片描述

3.开启不用点击,而是等离开IDEA页面后的热部署启动加载相关功能。
在IDEA的Seetings中修改
在这里插入图片描述

点击ctrl+alt+shift+/
点击Register
在这里插入图片描述

在这里插入图片描述

修改IDEA热部署策略(在顶部菜单中)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

这样即可开启自动热部署。

二、热部署的相关知识

1.热部署的范围

以上配置会将所有项目文件参与热部署

配置不参与热部署的文件,在application.yml中

spring:
  devtools:
    restart:
      exclude: application.yml,****文件列表

2.关闭热部署

方法一:修改启动类(这种优先级较高,一般不会被覆盖)

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

方法二:修改配置文件(有可能会被覆盖)

spring:
  devtools:
    restart:
      enabled: true

方法三:以上方法不能关闭热部署时,修改环境
在这里插入图片描述

关闭这俩个即可。