springboot项目服务器热部署,SpringBoot热部署加持

springboot项目服务器热部署,SpringBoot热部署加持概述进行 SpringBoot 的 Web 开发过程中 我们很多时候经常需要重启 Web 服务器才能保证修改的源代码文件 或者一些诸如 xml 的配置文件 以及一些静态文件生效 这样耗时又低效 所谓的热部署指的是我们不需要重启 WebServer 就可以保证各项文件修改的立即生效 下面便来介绍一下在 IDEA 中进行 SpringBoot 的 Web 开发时如何加入热部署的支持 这里我们是使用 spring boot dev

1460000015363888

概述

进行SpringBoot的Web开发过程中,我们很多时候经常需要重启Web服务器才能保证修改的 源代码文件、或者一些诸如xml的配置文件、以及一些静态文件生效,这样耗时又低效。所谓的热部署指的是我们不需要重启Web Server就可以保证各项文件修改的立即生效。下面便来介绍一下在IDEA中进行SpringBoot的Web开发时如何加入热部署的支持。

这里我们是使用 spring-boot-devtools 来帮助完成这个事情,其是一个为开发者服务的模块,可以实现SpringBoot热部署。其机理就是 spring-boot-devtools 会监听classpath下的文件变动,变动保存生效,其就会立即重启应用。

注: 本文首发于 My 公众号 CodeSheep ,可 长按 或 扫描 下面的 小心心 来订阅 ↓ ↓ ↓

pom.xml中添加依赖

org.springframework.boot

spring-boot-devtools

runtime

设置IDEA环境自动编译

首先在编译器选项中选中自动编译工程的选项,如下图所示,

1460000015363889

接下来我们利用快捷键:Command + Shift + Alt + / 来调出Registry窗口,然后勾选其中的编译器自动编译选项,如下图所示:

1460000015363890

启动项目并实验

上面几个步骤设置完成以后,我们去项目的根目录下执行命令来启动SpringBoot应用:

mvn clean spring-boot:run

此时的效果是只要我们修改了编辑区的源代码,保存之后,应用程序便会自动重启让修改生效。

监听文件夹的变化

上面我们是修改源代码时的自动热启动,除此之外,我们还可以设置 spring-boot-devtools 来监听某个文件夹的变化,比如我们想监听某个静态文件夹下文件的变化(如html文件),当其下面的文件改变的时候能够重新启动SpringBoot,那么我们只要在配置文件 application.properties 中添加如下配置即可:

spring.devtools.restart.additional-paths = src/main/resources/templates

随后再次实验,取得的效果和之前一样,热启动便生效了

后记

作者更多的SpringBt实践文章在此:

如果有兴趣,也可以抽点时间看看作者一些关于容器化、微服务化方面的文章:

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/218474.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月18日 上午7:10
下一篇 2026年3月18日 上午7:10


相关推荐

  • visdom API 方便使用查阅

    visdom API 方便使用查阅代码Structure如下:1、基础Visdom提供以下基本的可视化功能:vis.image:图片 vis.images:图像列表 vis.text:任意的HTML vis.video:视频 vis.svg:SVG对象 vis.save:序列化状态服务器端2、绘制我们已经封装了几种常见的绘图类型,以便轻松创建基本可视化。这些可视化由Plotly提供支持。目前支持…

    2022年6月17日
    41
  • emule最新服务器地址,关于emule 服务器列表

    emule最新服务器地址,关于emule 服务器列表关于emule服务器列表我给你几个服务器列表吧。打开选项—务器。然后点右边的“列表”。把以下网址复制进去,保存。然后把启动时自动更新服务器列表连接到服务器时更新服务器列表安全连接打上勾。所谓静态服务器,就是你把服务器优先值设定为高,然后下次登录时系统会自动先尝试你选定的服务器。Kad网络(KadNetwork)是一个完全分散的文件共享网络,它不被中心服务器使用。它执行KademliaP2P…

    2022年6月14日
    107
  • 矩阵的秩(Rank)[通俗易懂]

    矩阵的秩(Rank)[通俗易懂]定义一个矩阵A的列秩是A的线性无关的纵列的极大数目。类似地,行秩是A的线性无关的横行的极大数目。矩阵的列秩和行秩总是相等的,因此它们可以简单地称作矩阵A的秩。通常表示为r(A),rank(A)或rk(A)。可替代定义用行列式定义设A为m*n矩阵,若A至少有一个r阶非零子式,而其所有r+1阶子式全为零,则称r为A的秩。性质m×n矩阵的秩不大于m且不大于n的一个非负整数,表示为rk(A)≤min(m,n)。有尽可能大的秩的.

    2022年5月7日
    223
  • Docker OpenClaw 生产环境部署指南(单机架构版)

    Docker OpenClaw 生产环境部署指南(单机架构版)

    2026年3月13日
    3
  • Map 综述(二):彻头彻尾理解 LinkedHashMap

    Map 综述(二):彻头彻尾理解 LinkedHashMapHashMap 和双向链表合二为一即是 LinkedHashMa 所谓 LinkedHashMa 其落脚点在 HashMap 因此更准确地说 它是一个将所有 Entry 节点链入一个双向链表的 HashMap 由于 LinkedHashMa 是 HashMap 的子类 所以 LinkedHashMa 会拥有 HashMap 的所有特性 此外 LinkedHashMa 可以很好的支持 LRU 算法

    2026年3月26日
    2
  • Nodejs后端框架搭建(express)

    Nodejs后端框架搭建(express)文章目录1.node简介2.Express简介3.项目初始化4.Express三大基础概念(扩展)1.node简介Node是一个基于V8引擎的Javascript运行环境,它使得Javascript可以运行在服务端,直接与操作系统进行交互,与文件控制、网络交互、进程控制等2.Express简介express是一个轻量级的NodeWeb服务端框架,同样是一个人气超高的项目,它可以帮助我们快速搭建基于Node的Web应用3.项目初始化1.创建项目首先你得创

    2022年5月23日
    52

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号