什么是热部署
热部署,就是在应用正在运行的时候升级软件,却不需要重新启动应用。
举个例子,王者荣耀的更新有时候就是热部署,热更新,就是他提示你更新,更新40M就可以了,在提示更新前已经进入游戏的依然可以玩。
对于咱们的网站来说,就是更新某一个小模块的时候,网站依然可以被访问,被使用。
这是一个超级好用的功能,应该早点讲的。
Devtools热部署
有好几种热部署的方式,SpringBoot推荐的是Devtools,下面是Maven依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<version>2.1.3.RELEASE</version>
</dependency>
引入这个依赖之后,我们新建一个Controller,里面写个方法
package com.example.controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class MessageController {
@GetMapping("/")
public String hello(){
return "你好许嵩";
}
}
运行,浏览器输入localhost:8080,可以发现,你好许嵩已经出现了。
我现在修改我的访问Controller,改为/hello
@GetMapping("/hello")
public String hello(){
return "你好许嵩";
}
这个时候我不重启项目,直接ctrl+F9,重新编译一下,然后在浏览器输入localhost:8080/hello,你会发现,你好许嵩又出现了。
这就是热部署。