zoukankan      html  css  js  c++  java
  • Spring Boot 2.0实现热部署模式

     

    前言:

      在做Spring Boot 项目调试时总是会来回修改代码,重启项目,为了方便项目修改后,立即能看到效果。

    一、实现的方式概述

        1、使用 spring-boot-devtools

        2、使用 Spring Loaded

    二、Eclipse或Spring Tool Suite的实现方式

        1、pom.xml文件增加

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

        2、工程配置

            Project -> Build Automatically 选中

    三、IEDA的实现方式

        1、pom.xml文件增加 spring-boot-devtools

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

       2、pom.xml增加 springloaded

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <dependencies>
                    <dependency>
                        <groupId>org.springframework</groupId>
                        <artifactId>springloaded</artifactId>
                        <version>1.2.5.RELEASE</version>
                    </dependency>
                </dependencies>
            </plugin>
        </plugins>
    </build>
    

      3、修改配置

        打开idea ,File->Settings-> Build-Execution-Deployment -> Compiler,勾选 Build Project Automatically. 

        

      4、按 Shift+Ctrl+A (windows,mac是 command+shift+A) 

        将看到弹窗 Enter Action or option name,输入"registry",双击第一项"Registry..." ,会弹出另一个窗口,寻找 < compiler.automake.allow.when.app.running> 选中,参考如图:

        

       5、重启IDE (与Eclipse不一样,IDEA需要重启下)

    四、测试方法

        一、Eclipse测试

          1、运行项目

          2、修改类-->保存:应用会重启

          3、修改配置文件-->保存:应用会重启

          4、修改页面-->保存:应用会重启,页面会刷新(原理是将spring.thymeleaf.cache设为false)

        二、 IDEA测试

          1、运行项目

          2、修改controller中代码,会发现显示结果跟着变化。

          3、修改html页面 后再刷新页面,会发现显示结果跟着变化。

    五、热部署的注意事项

       1、如果使用模板引擎,关闭缓存

          在application.properties中添加

          #禁止thymeleaf缓存(建议:开发环境设置为false,生成环境设置为true)

          spring.thymeleaf.cache=false

        2、开启热部署后,session每次都会重置的

    实现的方式概述

  • 相关阅读:
    教你彻底弄懂JS中this的指向
    js-原型,原型链
    Firefox SyntaxError: invalid regexp group ChunkLoadError: Loading chunk task-show-task-show-module failed.
    什么是标签语义化?标签语义化有什么意义?
    什么是事件委托?jquery和js怎么去实现?
    express框架
    es6
    node搭建服务器
    node内容
    ajax面试题
  • 原文地址:https://www.cnblogs.com/verylove/p/9336324.html
Copyright © 2011-2022 走看看