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每次都会重置的

 

实现的方式概述

posted @ 2018-07-19 15:57  verylove  阅读(1309)  评论(0编辑  收藏  举报