首页 > 其他分享 >SpringBoot【实用篇】- 热部署

SpringBoot【实用篇】- 热部署

时间:2024-11-01 20:45:32浏览次数:6  
标签:SpringBoot 自定义 启动 部署 jar 实用 restart 加载

文章目录

目标:

  • 手动启动热部署
  • 自动启动热部署
  • 热部署范围配置
  • 关闭热部署

在这里插入图片描述

1.手动启动热部署

当我们没有热部署的时候,我们必须在代码修改完后再重启程序,程序才会同步你修改的信息。如果我们想快速查看,那就需要用到热部署了。
先来想想热部署的思想是什么?当我们的服务器发现程序发生变化了那么就做一个重启 但是springboot中的tomcat服务器本身就是内嵌的,是程序的一部分,如何感知变化呢?必须在Spring容器中做文章,所以要想添加热部署,就必须在Spring容器中设置。
那我们得先有启动热部署的工具叭

  <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
        </dependency>

在上面的工具栏Build中发现
在这里插入图片描述
总结:

启动开发者工具:引入坐标
激活热部署:Ctrl + F9

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

注意:热部署不需要把jar包也加载一次,热部署仅仅是restart的过程,不包含Reload,第一次启动两个阶段都有。意思就算热部署仅仅加载当前开发这者自定义开发的资源,不加载jar资源

但是你想还是要点啊?还有没有再智能一点呢?
能不能自动build project?

2.自动启动热部署

在这里插入图片描述
在这里插入图片描述
ctrl+alt+shift + /
在这里插入图片描述
打开这个Registry

在这里插入图片描述
21版的idea 这样操作
22版的这个automake在setting-advanced, setting里
在这里插入图片描述
激活方式: 5秒以后会自动构建
代码一动就会马上热部署
有些东西可以参加热部署,有些不参加热部署?
什么原因?
改动 application.yml 是会激活的
在这里插入图片描述

在哪里改热部署的配置呢?
热部署是devtool带给我们的功能,而它有属于springboot,如果想做这方面的设置,那肯定是springboot的设置,进入配置文件修改即可
自定义不参与重启排除项

  devtools:
    restart:
      exclude: 
      	static/**,templates/**,public/**,config/application.yml

在这里插入图片描述
热部署只在开发环境有用,上线就不需要了
如何关闭热部署?

4.禁用热部署

可以直接在yml中配置一个enable : false就可以了 但是你在这里关了其实别的地方也可以开起来的,这里我们需要复习一个知识:
在这里插入图片描述
我们当前级别是3,我们找一个更高级别的配置在这里插入图片描述

@SpringBootApplication
public class SSMPApplication {

    public static void main(String[] args) {
        System.setProperty("spring.devtools.restart.enabled","false");

        SpringApplication.run(SSMPApplication.class, args);
    }

}

标签:SpringBoot,自定义,启动,部署,jar,实用,restart,加载
From: https://blog.csdn.net/2301_79602614/article/details/143417880

相关文章

  • 1.TiDB集群部署篇
    **TiDB是PingCAP公司自主设计、研发的开源分布式关系型数据库,是一款同时支持在线事务处理与在线分析处理(HybridTransactionalandAnalyticalProcessing,HTAP)的融合型分布式数据库产品,具备水平扩容或者缩容、金融级高可用、实时HTAP、云原生的分布式数据库、兼容MyS......
  • 无需手动部署的正式版comfyUI是否就此收费?开源等同免费?
    ​​关于ComfyUI的正式版是否会收费的问题是很多AI玩家都关心的问题。一旦ComfyUI正式版发布,我们是否需要为它买单?不再开源同时这也引出了一个核心问题:开源究竟等不等于免费?ComfyUI正式版到底是什么?它会收费吗?ComfyUI是一款功能强大的用户界面工具/驱动工具,用于......
  • 基于springboot高校社团管理系统设计与实现
    前言系统根据现有的管理模块进行开发和扩展,采用面向对象的开发的思想和结构化的开发方法对高校社团的现状进行系统调查。采用结构化的分析设计,该方法要求结合一定的图表,在模块化的基础上进行系统的开发工作。在设计中采用“自下而上”的思想,在高校社团管理系统实现了学生、......
  • 基于springboot古风生活体验交流网站的设计与实现l
    前言二十一世纪我们的社会进入了信息时代,信息管理系统的建立,大大提高了人们信息化水平。传统的管理方式对时间、地点的限制太多,而在线管理系统刚好能满足这些需求,在线管理系统突破了传统管理方式的局限性。于是本文针对这一需求设计并实现了一个基于springboot古风生活体验......
  • Lca最近公共祖先(非常实用)
    一般求lca的方式就是基于下面的模板,中间的过程就不推理了,有兴趣可以去听听y总的课,讲的很详细模板题给定一棵包含 n 个节点的有根无向树,节点编号互不相同,但不一定是 1∼n。有 m 个询问,每个询问给出了一对节点的编号 x 和 y,询问 x 与 y 的祖孙关系。输入格式输......
  • 基于java+SpringBoot+Vue的“衣依”服装销售平台设计与实现
    项目运行环境配置:Jdk1.8+Tomcat7.0+Mysql+HBuilderX(Webstorm也行)+Eclispe(IntelliJIDEA,Eclispe,MyEclispe,Sts都支持)。项目技术:Springboot+mybatis+Maven+mysql5.7或8.0等等组成,B/S模式+Maven管理等等。环境需要1.运行环境:最好是javajdk1.8,我们在这个......
  • 基于java+SpringBoot+Vue的IT技术交流和分享平台设计与实现
    项目运行环境配置:Jdk1.8+Tomcat7.0+Mysql+HBuilderX(Webstorm也行)+Eclispe(IntelliJIDEA,Eclispe,MyEclispe,Sts都支持)。项目技术:Springboot+mybatis+Maven+mysql5.7或8.0等等组成,B/S模式+Maven管理等等。环境需要1.运行环境:最好是javajdk1.8,我们在这个......
  • 手把手教你在家中免费搭建自己的电视直播源服务器!从此告别直播源的难题!(支持群晖、飞牛
    文章目录......
  • 一步步教你部署网络唤醒服务器,轻松搞定设备睡眠、开机、关机与服务器端口检测
    文章目录......
  • yolov8旋转目标检测从原理到模型训练、部署、验证、推理(附代码)
    定向边界框目标检测在这里插入图片描述导言定向目标检测是在传统目标检测的基础上更进一步的技术,它引入了一个额外的角度参数,以更精确地定位图像中的物体。传统的目标检测算法通常使用轴对齐的矩形包围框来框定物体,而定向目标检测则使用旋转的边界框,这些边界框能够更好......