【SpringBoot】springboot启动热部署

news/2025/2/19 8:26:40/

在这里插入图片描述

个人简介:Java领域新星创作者;阿里云技术博主、星级博主、专家博主;正在Java学习的路上摸爬滚打,记录学习的过程~
个人主页:.29.的博客
学习社区:进去逛一逛~

在这里插入图片描述

SpringBoot——手工启动热部署

  • 一、pom.xml导入坐标
  • 二、手工启动热部署
  • 三、自动启动热部署
  • 四、热部署范围配置
  • 五、关闭热部署
    • 小结:



一、pom.xml导入坐标

  1. 在SpringBoot工程的pom.xml配置文件中,添加以下依赖
        <!--手工启动热部署,用到的开发者工具依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId><optional>true</optional></dependency>

在这里插入图片描述




二、手工启动热部署


  1. IDEA中激活热部署
  • 快捷键:Ctrl + F9

  • 图形化界面Build Project

    • 在这里插入图片描述




三、自动启动热部署


  1. IDEA中自动激活热部署(IDEA失去焦点五秒后自动构建项目,启动热部署)

第一步:
File 》Setting 》Build、Execution、Deployment 》Compiler 》勾选Build project automatically

    • 在这里插入图片描述

    • 在这里插入图片描述


第二步:

  • File 》Setting 》advanced Settings 》勾选Allow auto-make to start even if development application is currently running

  • 在这里插入图片描述




四、热部署范围配置


关于热部署

  • 重启(Restart):自定义开发代码,包含类、页面、配置文件等,加载位置restart类加载器
  • 重载(ReLoad):jar包,加载位置base类加载器

热部署范围配置

默认不触发重启的目录列表:

  1. /META-INF/maven
  2. /META-INF/resources
  3. /resources
  4. /static
  5. /public
  6. /templates

springboot配置文件中,手动设置不参与热部署的文件或文件夹

# 将application.yml设置为不参与热部署,若需要设置多个参数,参数之间用逗号','隔开
spring:devtools:restart:exclude: application.yml



五、关闭热部署


绝对保障,使用不会被配置文件的配置所覆盖的,高优先级配置,来设置热部署关闭


  • SpringBoot工程启动类中配置:
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication
public class SpringbootSsmpApplication {public static void main(String[] args) {//设置热部署关闭System.setProperty("spring.devtools.restart.enabled","false");SpringApplication.run(SpringbootSsmpApplication.class, args);}}

小结:

  1. 开启开发者工具后启动热部署;
  2. 使用构建项目操作启动热部署(Ctrl+F9);
  3. 可以配置自动构建项目用于自动激活热部署;
  4. 热部署仅仅加载当前开发者自定义的开发的资源,不加载jar包资源;
  5. 可以在配置文件中设置热部署范围
  6. 可以在SpringBoot启动类中,使用比配置文件更高优先级的配置来关闭热部署

在这里插入图片描述


http://www.ppmy.cn/news/46111.html

相关文章

事务相关概念

事务 事务属性&#xff1a;隔离级别1、数据库访问中三个读的问题2、隔离级别介绍3、使用方式 事务属性&#xff1a;隔离级别 事务&#xff1a;逻辑上的一组操作&#xff0c;这些操作要么都成功&#xff0c;有一个失败所有都失败 1、数据库访问中三个读的问题 1、脏读&#x…

网络请求实战-实战websocket聊天程序

目录 WebSocket协议初探 Socket连接的建立过程 聊天室&#xff1a;node.js端 聊天室&#xff1a;web端 小结 WebSocket协议初探 一个基于TCP的通信协议 复用HTTP的握手基于TCP传输协议 101切换协议 WebSocket连接之后&#xff0c;传输的都是二进制数据了 Socket连接的建…

MicroPython ESP8266 GPIO引脚使用详解

MicroPython ESP8266 GPIO引脚使用 &#x1f4cc;相关篇《【MicroPython esp8266】固件烧写教程》 ✨本案例基于Thonny平台开发。✨ &#x1f4dc;固件版本信息&#xff1a;MicroPython v1.19.1 on 2022-06-18; ESP module with ESP8266 &#x1f516;ESP8266可用管脚有&…

连锁店销售管理系统有哪些功能?应该如何选购?

不管是直营还是加盟&#xff0c;想要实现门店的精细化管理&#xff0c;把不同门店的业绩做好&#xff0c;离不开连锁店销售管理系统的支持。 一款真正能够为连锁店经营带来帮助的连锁店销售管理系统应该具备哪些基本功能&#xff0c;以及选择连锁店销售管理系统时有哪些常见的问…

SpringSecurity之权限中JWT应用

目录 前言 什么是J W T 1、访问令牌 2、J W T组成内容 J W T 头 有效载荷 签名哈希 Base64URL算法 前言 上一篇我们讲解了SpringSecurity之微服务权限解决方案&#xff0c;接下来我们看看在微服务中使用到的凭证Tokens的生成工具J W T 什么是J W T 1、访问令牌 自包…

鏖战大模型,未必能拯救商汤

在不被资本市场看好的质疑声中&#xff0c;商汤科技于近日跟风推出了自己的大模型产品&#xff0c;而且还直接打造了一个大模型超市&#xff0c;声称包括CV&#xff08;计算机视觉&#xff09;、NLP&#xff08;​​​​​​​自然语言处理&#xff09;、AIGC&#xff08;人工智…

【微信小程序-原生开发】实用教程22 - 绘制图表(引入 echarts,含图表的懒加载-获取到数据后再渲染图表,多图表加载等技巧)

最终效果预览 实现流程 微信小程序中使用 echarts 需使用官方提供的 ec-canvas 组件 1. 下载 ec-canvas 组件 点击下方链接&#xff0c;下载 ec-canvas 组件 https://gitcode.net/mirrors/ecomfe/echarts-for-weixin/-/tree/master 将其中的 ec-canvas 文件夹拷贝到微信小程序…

【Docker】书写dockerfile制作镜像

目录 前言 书写Dockerfile 前言 在软件开发和部署领域&#xff0c;Docker已经成为了一种不可或缺的工具。通过使用Docker&#xff0c;我们可以轻松地打包、分发和部署应用程序&#xff0c;确保跨平台的兼容性和环境的一致性。为了更好地利用Docker的优势&#xff0c;我们需要…