一篇文章帶你搞定SpringBoot中的熱部署devtools方法
一、前期配置
創(chuàng)建項(xiàng)目時(shí),需要加入 DevTools 依賴
二、測(cè)試使用
(1)建立 HelloController
@RestControllerpublic class HelloController { @GetMapping('/hello') public String hello(){ return 'hello devtools'; }}
對(duì)其進(jìn)行修改:然后不用重新運(yùn)行,重新構(gòu)建即可:只加載變化的類
三、熱部署的原理
Spring Boot 中熱部署最最關(guān)鍵的原理就是兩個(gè)不同的 classloader:
base classloader restart classloader其中 base classloader 用來(lái)加載那些不會(huì)變化的類,例如各種第三方依賴,而 restart classloader 則用來(lái)加載那些會(huì)發(fā)生變化的類,例如你自己寫的代碼。
Spring Boot 中熱部署的原理就是當(dāng)代碼發(fā)生變化時(shí),base classloader 不變,而 restart classloader 則會(huì)被廢棄,被另一個(gè)新的 restart classloader 代替。在整個(gè)過(guò)程中,因?yàn)橹恢匦录虞d了變化的類,所以啟動(dòng)速度要被重啟快。
需要注意,使用devtools,默認(rèn)情況下當(dāng)靜態(tài)資源發(fā)生變化時(shí),并不會(huì)觸發(fā)項(xiàng)目重啟
到此這篇關(guān)于一篇文章帶你搞定SpringBoot中的熱部署devtools方法的文章就介紹到這了,更多相關(guān)SpringBoot 熱部署devtools內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. 解決Python數(shù)據(jù)可視化中文部分顯示方塊問(wèn)題2. python開發(fā)一個(gè)解析protobuf文件的簡(jiǎn)單編譯器3. ASP編碼必備的8條原則4. python 根據(jù)列表批量下載網(wǎng)易云音樂(lè)的免費(fèi)音樂(lè)5. python中round函數(shù)保留兩位小數(shù)的方法6. python 基于AioHttp 異步抓取火星圖片7. 利用python+ffmpeg合并B站視頻及格式轉(zhuǎn)換的實(shí)例代碼8. Android實(shí)現(xiàn)儀表盤控件開發(fā)9. Python基于traceback模塊獲取異常信息10. 深入理解JavaScript字節(jié)二進(jìn)制知識(shí)以及相關(guān)API
