Spring Boot 第二篇 之 热部署

本篇带来Spring Boot 的第二篇, 配置热部署, java开发不同于php、python 等, 需要每修改一个地方时都要重启下服务器, 哪怕是一个html的页面也要重启下, 这样的话会非常麻烦,也耽误时间,所以利用热部署配置来解决这个问题, 即修改完立即生效,下面看具体的配置

一、环境说明

IntelliJ IDEA(2018.2) 开发工具

Spring boot 2.0.5

二、用 IDEA创建项目

利用 Spring Initializr 创建项目

2.1、创建项目选择依赖时, 要勾选 Web 和 Thymeleaf, 如下图

1

VPNSjVgTHmJX4WfDa089ZYggHR89xKaw3n5ZDJoW

2.2.1、配置IDEA的Settings,如下图

ZhdIutqWSDbQrBKuH59nlkHwF9UpA9Hk6wCNuPZE

2.2.2、配置Registry, 按住 Ctrl + Shift + a , 然后输入 Registry后, 出现以下的图

4MGR2K1pDqMyFVUa4xdJM3K3ztMH1rwXrNpkUIRI

2.3、配置项目pom.xml文件, 新添加的我用注释标记下来了,也可以直接复制我的配置文件

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.example</groupId>
    <artifactId>test01</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>

    <name>test01</name>
    <description>Demo project for Spring Boot</description>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.5.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>

        <!--这个是创建完项目新添加的-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
        </dependency>

    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <!--这个是创建完项目新添加的-->
                <configuration>
                    <fork>true</fork>
                </configuration>
            </plugin>
        </plugins>
    </build>


</project>

2.4、修改 application.properties 配置文件

# 设置应用的端口,可以任意设置
server.port=8082
# 关闭thymeleaf的模板缓存
spring.thymeleaf.cache=false

三、 修改源代码部分

3.1、创建Controller, com.example.test01 下创建controller目录, 在controller目录下创建 TestController.java 文件,代码如下

package com.example.test01.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller
public class TestController {

    @RequestMapping("/")
    public String index(){
        return "index";
    }
}

3.2、 在resources.templates 下创建 index.html文件

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Spring Test</title>
</head>
<body>

<h1>Hello Luohua123fdfdfdf</h1>
</body>
</html>

3.3、 按Shift + F9 启动服务, 注意是Debug下的启动

必须是点小虫子运行,也就是Debug,现在热部署已经配置好了, 修改控制器文件 和 模板文件 就可以自动重启服务了,访问localhost:8082就可以看到效果了


相关推荐

  • Spring Boot 第三篇之Mybatis和Thymeleaf 整合

    本篇利用Spring Boot来开发一个小型的Demo,主要的功能就是增、删、改、查 , 但是通过这个项目能够快速了解java 的 Web应用是怎么样的一个开发...

    Border circle luohua 2020-07-19 14:45:37 0 0 17

  • Spring Boot 第二篇 之 热部署

    本篇带来Spring Boot 的第二篇, 配置热部署, java开发不同于php、python 等, 需要每修改一个地方时都要重启下服务器, 哪怕是一个htm...

    Border circle luohua 2020-07-19 14:45:11 0 0 16

发表评论