Spring Boot05-熱部署

一、Spring Boot 啟動熱部署

Spring Boot 啟動“熱部署(Hot Deployment)”,可以讓你在不重啟項目的情況下快速看到代碼變更的效果(特別是前后端調試階段)。


1-1、什么是熱部署?

熱部署是指:

修改 Java 或模板(如 HTML、Thymeleaf)代碼后,無需手動重啟服務,Spring Boot 能自動感知并重新加載類或資源,節省重啟時間,提高開發效率。

熱部署的過程:

1、重啟(restart):自定義開發的代碼,包括:頁面,類,配置文件......,加載位置restart類加載器

2、重載(reload):jar包(基本不會有變化),加載位置base類加載器

熱部署,僅僅代碼restart過程,而程序第一次啟動的時候,既有restart過程,又有reload過程。


1-2、常用熱部署方式

Spring Boot 推薦使用的熱部署工具是 Spring Boot DevTools


1-3、使用 Spring Boot DevTools 實現熱部署

1. 添加依賴:開啟開發者工具

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId><scope>runtime</scope> <!-- 只在開發環境有效 --><optional>true</optional> <!-- 可選依賴,防止被打包進生產環境 -->
</dependency>

2. IDE 設置:激活熱部署

Spring Boot DevTools 默認基于 類文件變更觸發重啟,因此你需要確保:

(1). 啟用了自動構建:
  1. File → Settings → Build, Execution, Deployment → Compiler

  2. 勾選:?? Build project automatically

(2). 讓 IntelliJ 在修改文件后自動編譯:

Advanced Settings :?? “Allow auto-make to start even if developed application is currently running”

這樣只要你保存了 Java 文件,IDE 就會自動編譯觸發 DevTools 熱部署。

此時,頁面發生了變化,不會參加熱部署。?

設置不參與熱部署的文件/文件夾:


?

1-4、DevTools 熱部署行為總結

變更內容是否自動熱部署說明
Java 類(Controller, Service)? 是自動重新加載
靜態資源(HTML, CSS, JS)? 是即時刷新頁面
配置文件(application.properties)? 否需要重啟才能生效
引入新依賴? 否需要 重新啟動項目

1-5、禁用熱部署的功能呢

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/90154.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/90154.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/90154.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

網站域名備案和服務器有關系嗎

域名備案的那些事兒域名備案&#xff0c;簡單來說&#xff0c;就是把你的網站信息登記到相關管理部門那里。這就好比你開個小店&#xff0c;得去工商局登記一下&#xff0c;讓人家知道你在干啥。根據我國相關規定&#xff0c;凡是使用大陸境內服務器提供服務的網站&#xff0c;…

2025華為ODB卷-推薦多樣性200分-三語言題解

?? 華為OD機試真題精選 2025B卷合集 推薦多樣性200分 問題描述 A先生正在設計一個推薦系統,需要考慮多樣性,要求從多個列表中選擇元素。系統一次性需要返回 N N N 屏數據(窗口數量),每屏展示 K K

ZeroMQ源碼深度剖析:網絡機制與性能優化實戰

目錄1 發布訂閱過濾的高效實現2 ZeroMQ的核心優勢3 常見Socket類型及應用4 異步連接實現機制5 斷線重連機制6 高水位線&#xff08;HWM&#xff09;深度解析7 消息丟失與錯誤處理8 消息幀&#xff08;Frame&#xff09;高級特性9 高效性實現原理10 無鎖消息隊列設計11 零拷貝實…

[數據庫]Neo4j圖數據庫搭建快速入門

[數據庫]圖數據庫基礎入門 概念 圖數據庫是一種使用圖結構&#xff08;節點、邊和屬性&#xff09;進行數據存儲和查詢的數據庫管理系統。與傳統的關系型數據庫不同&#xff0c;圖數據庫專注于實體之間的關系&#xff0c;特別適合處理高度互聯的數據。常見的圖數據庫包括&#…

本地數據庫有數據,web頁面無信息顯示,可能是pymysql的版本問題【pymysql連接本地數據庫新舊版本的區別】

pymysql連接本地數據庫新舊版本的區別新版本老版本python web下的settings文件 新版本 的pymysql 連接本地數據庫&#xff1a; mysql_conn pymysql.connect(hostself.conn_infos["HOST"],userself.conn_infos["USER"],passwordself.conn_infos["PAS…

【Linux-云原生-筆記】Haproxy相關

一、概念HAProxy&#xff08;High Availability Proxy&#xff09;是一款開源的高性能 TCP/HTTP 負載均衡器 和 反向代理 軟件&#xff0c;被廣泛應用于構建高可用、高并發的現代網絡架構。核心功能&#xff1a;負載均衡&#xff08;Load Balancing&#xff09;支持四層&#x…

智慧能源合同解決方案

01 能源行業合同管理核心痛點 1&#xff09;長期風險沉淀與動態環境失配&#xff1a;合同穩定性的根本矛盾 超長周期下的風險累積&#xff1a;20~30年的購售電協議&#xff08;PPA&#xff09;、EPC合同需覆蓋技術迭代&#xff08;如光伏組件衰減率&#xff09;、政策轉向&am…

MeterSphere平臺,接口自動化腳本編寫常用操作

文章目錄1. 前置準備2. 項目環境設置3. 創建接口3.1 創建接口API3.2 測試接口API3.3 設置接口case4. 場景接口自動化4.1 創建自動化場景4.2 場景化操作說明4.2.1 設置腳本場景變量4.2.2 接口列表導入4.2.3 場景導入4.2.4 自定義請求4.2.5 事務控制器4.2.6 等待控制器4.2.7 循環…

C 語言介紹

C語言是由Dennis Ritchie開發的&#xff0c;用于創建與硬件設備&#xff08;例如驅動程序&#xff0c;內核等&#xff09;直接交互的系統應用程序。C編程被認為是其他編程語言的基礎&#xff0c;這就是為什么它被稱為母語。C是一種功能強大的通用編程語言。它可以用于開發操作系…

AI產品經理面試寶典第48天:產品設計與用戶體驗優化策略

1. 用戶體驗分析與產品設計邏輯 1.1 問:如何通過用戶反饋優化AI產品體驗? 答: 建立反饋閉環機制:通過應用內評分、用戶訪談、行為埋點三維度收集數據,例如某語音助手產品通過NLP分析用戶糾錯語句,發現"誤喚醒"問題占比37%; 優先級排序模型:采用Kano模型量化…

基于springboot的在線教育系統(源碼+論文)

一、開發環境 本在線教育系統主要采用以下技術棧進行開發&#xff1a; B/S結構&#xff1a;基于瀏覽器/服務器模式&#xff0c;便于用戶通過互聯網訪問系統&#xff0c;無需安裝客戶端軟件。Spring Boot框架&#xff1a;簡化了新Spring應用的初始搭建及開發過程&#xff0c;提…

Ubuntu 系統上部署禪道

在 Ubuntu 系統上部署禪道可以按照以下步驟進行&#xff0c;以下是基于禪道開源版的部署流程&#xff1a; 1. 安裝必要依賴 首先安裝禪道運行所需的環境&#xff08;以 Ubuntu 20.04/22.04 為例&#xff09;&#xff1a; bash # 更新系統包 sudo apt update && sudo…

【vue-8】Vue3 Options API 生命周期函數全面解析

在 Vue.js 開發中&#xff0c;理解組件的生命周期是構建健壯應用程序的關鍵。雖然 Vue3 引入了 Composition API&#xff0c;但 Options API 仍然是許多開發者的首選&#xff0c;特別是對于從 Vue2 遷移的項目或更喜歡基于選項的代碼組織的團隊。本文將深入探討 Vue3 中 Option…

周志華《機器學習導論》第8章 集成學習 Ensemble Learning

目錄 8.1 個體與集成 8.2 Boosting Ada&#xff08;Adaptive&#xff09;Boost 8.3 Bagging 8.4 隨機森林 8.5 結合策略 8.5.1 平均法 8.5.2 投票法 8.5.3 學習法 8.6 多樣性 8.6.1 誤差-分歧分解 error-ambiguity 8.6.2 多樣性度量 8.6.3 多樣性增強 8.1 個體與集…

Embassy實戰:Rust嵌入式異步開發指南

嵌入式異步框架 Embassy 實例 以下是關于嵌入式異步框架 Embassy 的實用示例,涵蓋常見外設操作、多任務協作和硬件交互場景。示例基于STM32和Raspberry Pi Pico等平臺,使用Rust語言編寫。 GPIO 控制 use embassy_stm32::gpio::{Input, Output, Pull, Speed}; use embassy_…

ChatGPT桌面版深度解析

ChatGPT桌面版深度解析&#xff1a;功能、安裝與高效使用全攻略 一、核心功能全景解析 &#xff08;一&#xff09;全場景交互體系 全局熱鍵喚醒 支持MacOS&#xff08;Option空格&#xff09;與Windows&#xff08;Alt空格&#xff09;全局快捷鍵&#xff0c;實現跨應用無縫調…

RLVR的一種擴展方案--RLPR論文閱讀

論文鏈接&#xff1a;RLPR: EXTRAPOLATING RLVR TO GENERAL DOMAINS WITHOUT VERIFIERS 文章目錄簡介RLPRRLVR概率獎勵/Probability Reward獎勵設計標準差過濾總結簡介 可驗證獎勵的強化學習(Reinforcement Learning with Verifiable Rewards, RLVR)在提升大語言模型&#xff…

odoo歐度小程序——添加用戶

odoo歐度小程序添加登錄用戶 1. 直接在登錄用戶頁面添加用戶點擊 添加登錄用戶輸入用戶和密碼&#xff0c;點擊登錄驗證進入odoo頁面2. 在用戶切換頁面添加用戶點擊選擇切換用戶點擊域名彈出菜單點擊添加新用戶輸入用戶和密碼&#xff0c;點擊登錄驗證進入odoo頁面

Docker 應用數據備份、遷移方案

一、為什么要做Docker數據備份1、保障數據與配置的安全性防止數據丟失&#xff1a;Docker 容器本身是 “臨時性” 的&#xff08;基于鏡像創建&#xff0c;刪除后數據默認丟失&#xff09;&#xff0c;但容器中運行的應用&#xff08;如數據庫、日志服務&#xff09;會產生持久…

【PTA數據結構 | C語言版】強連通分量

本專欄持續輸出數據結構題目集&#xff0c;歡迎訂閱。 文章目錄題目代碼題目 本題請你編寫程序&#xff0c;輸出給定有向圖中的各個強連通分量&#xff0c;并統計強連通分量的個數。 輸入格式&#xff1a; 輸入首先在第一行給出 2 個整數&#xff0c;依次為有向圖的頂點數 n&…