Spring Boot 热部署

相信小伙伴们在日常的开发中,调试代码时,免不了经常修改代码,这个时候,为了验证效果,必须要重启 Spring Boot 应用。

频繁地重启应用,导致开发效率降低,加班随之而来。有没有什么办法,能让 Spring Boot 项目热部署呢,从而不用每次都手点。答案是肯定的

第一步:添加 spring-boot-devtools 依赖

Spring Boot 提供了 spring-boot-devtools, 它能在我们修改类或者配置文件后,自动感知,重新启动应用。我们只需要在 pom.xml 文件中,添加下面依赖:

pom 复制代码
<!-- SpringBoot自带热加载开发工具 -->
<dependency> 
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-devtools</artifactId>
    <optional>true</optional>
</dependency>

第二步:设置 Idea

由于 Idea 默认是没有开启自动编译功能的,我们还需要做以下设置:

1.单击左上角 File -> Setting -> Build, Execution, Deployment -> compiler , 勾选 Build project automatically:

2.windowns 系统按快捷键 Shift+Ctrl+Alt+/ , 单击 Registry ,勾选 compiler.automake.allow.when.app.running

添加完成后,重启应用。为了验证热部署是否集成成功,我们将接口的路径改一下,保存:

java 复制代码
package site.exception.springboothello.controller; 
import org.springframework.web.bind.annotation.GetMapping; 
import org.springframework.web.bind.annotation.RestController; 

/** 
* @author explorer
* @date 2023/10/06 
* @time 13:58 
* @discription 
**/ 
@RestController public class TestController { 
    @GetMapping("/hellospringboot") 
    String hello() { 
        return "Hello, Spring Boot !"; 
    } 
}

观察控制台,打印了项目的启动日志,证明 Spring Boot 已经检测到了 class 文件发生了变化,自动重启了。

访问新的接口 /hellospringboot, 看看是否生效?

相关推荐
追逐时光者4 小时前
精选 4 款基于 .NET 开源、功能强大的 Windows 系统优化工具
后端·.net
TF男孩4 小时前
ARQ:一款低成本的消息队列,实现每秒万级吞吐
后端·python·消息队列
AAA修煤气灶刘哥6 小时前
别让Redis「歪脖子」!一次搞定数据倾斜与请求倾斜的捉妖记
redis·分布式·后端
AAA修煤气灶刘哥6 小时前
后端人速藏!数据库PD建模避坑指南
数据库·后端·mysql
你的人类朋友6 小时前
什么是API签名?
前端·后端·安全
昵称为空C8 小时前
SpringBoot3 http接口调用新方式RestClient + @HttpExchange像使用Feign一样调用
spring boot·后端
架构师沉默8 小时前
设计多租户 SaaS 系统,如何做到数据隔离 & 资源配额?
java·后端·架构
RoyLin9 小时前
TypeScript设计模式:适配器模式
前端·后端·node.js
该用户已不存在9 小时前
Mojo vs Python vs Rust: 2025年搞AI,该学哪个?
后端·python·rust
Moonbit9 小时前
MoonBit 正式加入 WebAssembly Component Model 官方文档 !
前端·后端·编程语言