日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

spring boot 热更新,热部署

發布時間:2025/4/16 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 spring boot 热更新,热部署 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

近來在使用idea做springboot的項目,但是發現每次修改之后我都需要重新將項目關閉再開啟,這樣比較繁瑣,發現通過熱部署的方式讓我們可以一邊修改我們的項目,然后在頁面中直接通過刷新展示出來

spring為開發者提供了一個名為spring-boot-devtools的模塊來使Spring Boot應用支持熱部署,提高開發者的開發效率,無需手動重啟Spring Boot應用。

devtools的原理

深層原理是使用了兩個ClassLoader,一個Classloader加載那些不會改變的類(第三方Jar包),另一個ClassLoader加載會更改的類,稱為restart ClassLoader,這樣在有代碼更改的時候,原來的restart ClassLoader 被丟棄,重新創建一個restart ClassLoader,由于需要加載的類相比較少,所以實現了較快的重啟時間。

這里我沒有把所有的方式都嘗試一遍,只是使用了devtools的方式

總的來說,一共需要兩個步驟:

第一步、先設置我們的pom.xml文件,加入依賴

首先是把下面代碼在<dependencies>中

  • <!--添加熱部署-->
  • <dependency>
  • <groupId>org.springframework.boot</groupId>
  • <artifactId>spring-boot-devtools</artifactId>
  • <optional>true</optional>
  • <scope>true</scope>
  • </dependency>
  • 另外下面的代碼是放在<build>??下面<plugins>里的

  • <plugin>
  • <!--熱部署配置-->
  • <groupId>org.springframework.boot</groupId>
  • <artifactId>spring-boot-maven-plugin</artifactId>
  • <configuration>
  • <!--fork:如果沒有該項配置,整個devtools不會起作用-->
  • <fork>true</fork>
  • </configuration>
  • </plugin>
  • 第二步、設置IDEA的自動編譯:

    (1)File-Settings-Compiler勾選?Build?Project automatically

    (2)快捷鍵?ctrl + shift + alt + /,選擇Registry,勾上?Compiler autoMake allow when app running

    這樣我們的熱部署就完成了,可以再我們的項目中修改返回值,或者修改Mapping的value值后,在我們的頁面中刷新試試,

    我們的修改已經生效了,不用通過再關閉再開啟項目查看了。

    借鑒文章:springboot熱部署(二)——springboot熱部署與發布、SpringBoot配置devtools實現熱部署

    轉載于:https://www.cnblogs.com/lijintao1025/p/10649576.html

    總結

    以上是生活随笔為你收集整理的spring boot 热更新,热部署的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。