SpringBoot项目热部署设置

目录

1.设置热部署的好处

2.设置热部署的坏处

3.设置热部署的流程

4.关闭热部署功能

1.设置热部署的好处

        Spring Boot 热部署的主要好处是在开发过程中提高了开发效率和体验。它让开发者在修改代码后无需手动重启应用程序,而是可以快速自动重新加载应用程序,减少了修改-构建-重启的时间和操作次数。这样可以实现更快的反馈循环,并降低开发成本和错误率。同时,热部署还可以减少生产环境下的系统停机时间,提高系统的可用性。

2.设置热部署的坏处

        虽然 Spring Boot 热部署可以提高开发效率和体验,但也存在一些局限和潜在的风险。下面是一些可能的坏处:

  1. 热部署会引入一些性能和内存消耗的开销,因为应用程序需要不断地重新加载和初始化。

  2. 在一些场景下热部署可能会造成代码状态的混乱,例如类加载器问题、资源共享问题等等。

  3. 热部署依赖于特定的 IDE、插件和配置,如果不正确使用可能会导致不良影响,比卡、失败、莫名奇妙的 bug 等等。

  4. 各种操作系统或开发环境版本的差异,以及多线程或其他并发处理方式,都可能对热部署的效果产生一定的影响和限制。

        因此,在选择是否采用 Spring Boot 热部署时,需要平衡好实际需求和可行性,避免漫无目的地跟风或滥用。

3.设置热部署的流程

        实现Spring Boot热部署通常需要以下步骤:

          1.添加Spring Boot DevTools依赖:在pom.xml文件里添加如下依赖

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-devtools</artifactId>
    <optional>true</optional>
    <scope>runtime</scope>
</dependency>

           2.启用自动重载:在 application.properties 或 .yml 文件里添加以下配置

spring.devtools.restart.enabled=true

           3.(可选)排除资源文件和静态文件的热部署:在 application.properties 或 .yml 文件里添加以下配置

spring.devtools.restart.exclude=static/**,public/**

            4.2020版本以下的,按住ctrl+shift+alt+/ 找到Registry点击

 

                  2020以上的,在File->setting->advanced Settings可进行设置

 

                   这样,一个简单的热部署就开启了

4.关闭热部署功能

        1.修改application.properties

             

             将上面的enabled设置为false即可

          2.热部署的禁用是有优先级的,所以先看看优先级是如何划分:

              可以看到第一种方法是在优先级3上设置的,如果我们想换成优先级6的,就可以这样:

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

猜你喜欢

转载自blog.csdn.net/Kristabo/article/details/131128260