新聞中心
小編這次要給大家分享的是詳解Springboot熱部署,文章內(nèi)容豐富,感興趣的小伙伴可以來(lái)了解一下,希望大家閱讀完這篇文章之后能夠有所收獲。

1.前言
在實(shí)際開發(fā)過(guò)程中,每次修改代碼就得將項(xiàng)目重啟,重新部署,對(duì)于一些大型應(yīng)用來(lái)說(shuō),重啟時(shí)間需要花費(fèi)大量的時(shí)間成本。對(duì)于一個(gè)后端開發(fā)者來(lái)說(shuō),重啟過(guò)程確實(shí)很難受啊。在 Java 開發(fā)領(lǐng)域,熱部署一直是一個(gè)難以解決的問題,目前的 Java 虛擬機(jī)只能實(shí)現(xiàn)方法體的修改熱部署,對(duì)于整個(gè)類的結(jié)構(gòu)修改,仍然需要重啟虛擬機(jī),對(duì)類重新加載才能完成更新操作。下面我=我們就看看對(duì)于簡(jiǎn)單的類修改的熱部署怎么實(shí)現(xiàn)。
2. 原理
深層原理是使用了兩個(gè)ClassLoader,一個(gè)Classloader加載那些不會(huì)改變的類(第三方Jar包),另一個(gè)ClassLoader加載會(huì)更改的類,稱為restart ClassLoader,這樣在有代碼更改的時(shí)候,原來(lái)的restart ClassLoader 被丟棄,重新創(chuàng)建一個(gè)restart ClassLoader,由于需要加載的類相比較少,所以實(shí)現(xiàn)了較快的重啟時(shí)間。
3. 方式
springboot有3中熱部署方式:
1.使用springloaded配置pom.xml文件,使用mvn spring-boot:run啟動(dòng)
2.使用springloaded本地加載啟動(dòng),配置jvm參數(shù)
-javaagent:
3.使用devtools工具包,操作簡(jiǎn)單,但是每次需要重新部署
這里主要講解一下第三種熱部署方式的使用,因?yàn)樵诰W(wǎng)上查找資源時(shí),總會(huì)發(fā)現(xiàn)很多人就是springloaded和devtools都使用了,其實(shí)是多余的操作,而且第三種操作簡(jiǎn)單快捷。
4. 開始配置
4.1 在pom.xml中添加依賴
org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-test test org.springframework.boot spring-boot-devtools true true org.springframework.boot spring-boot-maven-plugin true
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)建站www.cdcxhl.com,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
網(wǎng)頁(yè)名稱:詳解Springboot熱部署-創(chuàng)新互聯(lián)
當(dāng)前網(wǎng)址:http://www.dlmjj.cn/article/gegog.html


咨詢
建站咨詢
