欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Spring Boot 開發(fā)環(huán)境熱部署詳細教程

 更新時間:2020年06月22日 10:36:55   作者:章為忠  
這篇文章主要介紹了Spring Boot 開發(fā)環(huán)境熱部署,本文給大家介紹了Spring Boot 開發(fā)環(huán)境熱部署的原理及快速配置方法,通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

在實際的項目開發(fā)過中,當我們修改了某個java類文件時,需要手動重新編譯、然后重新啟動程序的,整個過程比較麻煩,特別是項目啟動慢的時候,更是影響開發(fā)效率。其實Spring Boot的項目碰到這種情況,同樣也同樣需要經(jīng)歷重新編譯、重新啟動程序的過程。 只不過 Spring Boot 提供了一個spring-boot-devtools的模塊,使得 Spring Boot應用支持熱部署,無需手動重啟Spring Boot應用,,提高開發(fā)者的開發(fā)效率。接下來,聊一聊Spring Boot 開發(fā)環(huán)境熱部署。

一、原理

devtools使用了兩個類加載器(ClassLoader),一個是 Base類加載器(base classloader):加載那些不會改變的類,如:第三方Jar包等,而另一個是 Restart類加載器(restart classloader):負責加載那些正在開發(fā)的會改變的類。這樣在有代碼更改的時候,因為重啟的時候只是加載了在開發(fā)的Class類,沒有重新加載第三方的jar包,所以實現(xiàn)了較快的重啟時間。

devtools 監(jiān)聽classpath下的文件變動(發(fā)生在保存時機),并且會立即重啟應用。從而實現(xiàn)類文件和屬性文件的熱部署。

二、快速配置

1、pom配置

引入devtools的依賴

<dependency>
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-devtools</artifactId>
 <!-- optional=true, 依賴不會傳遞, 該項目依賴devtools;之后依賴boot項目的項目如果想要使用devtools, 需要重新引入 -->
 <optional>true</optional>
</dependency>

注意:optional=true, 依賴不會傳遞, 該項目依賴devtools;之后依賴boot項目的項目如果想要使用devtools, 需要重新引入。

2、application.properties配置

在application.properties中配置devtools。

# 關(guān)閉緩存即時刷新
#spring.thymeleaf.cache=false

#熱部署生效
spring.devtools.restart.enabled=true
#設置重啟的目錄
spring.devtools.restart.additional-paths=src/main/java
#classpath目錄下的WEB-INF文件夾內(nèi)容修改不重啟
spring.devtools.restart.exclude=WEB-INF/**

說明:

devtools可以實現(xiàn)頁面熱部署,即頁面修改后會立即生效,需要將application.properties文件中配置spring.thymeleaf.cache=false。

devtools會監(jiān)聽classpath下的文件變動,并且會立即重啟應用。

3、IDEA配置

如果idea是新安裝的或者之前就沒有配置過,發(fā)現(xiàn)改變代碼項目熱部署不成功。當我們修改了Java類后,IDEA默認是不自動編譯的,而spring-boot-devtools又是監(jiān)測classpath下的文件發(fā)生變化才會重啟應用。

所以需要設置IDEA的自動編譯:

(1)File-Settings-Compiler-Build Project automatically

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

這樣,就可以使用devtools實現(xiàn)熱部署了。

最后

以上,就把如何配置Spring Boot 開發(fā)環(huán)境熱部署介紹完了。還是比較簡單的,大家自己去研究吧。

到此這篇關(guān)于Spring Boot 開發(fā)環(huán)境熱部署詳細教程的文章就介紹到這了,更多相關(guān)Spring Boot 開發(fā)環(huán)境熱部署內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java實現(xiàn)斗地主與猜數(shù)字游戲詳細流程

    Java實現(xiàn)斗地主與猜數(shù)字游戲詳細流程

    這篇文章主要介紹了怎么用Java來寫斗地主種洗牌和發(fā)牌的功能,以及猜數(shù)字的游戲,斗地主相信大家都知道,同時也知道每一局都要洗牌打亂順序再發(fā)牌,本篇我們就來實現(xiàn)它們能,感興趣的朋友跟隨文章往下看看吧
    2022-04-04
  • Java快速生成PDF文檔的實例代碼

    Java快速生成PDF文檔的實例代碼

    在如今數(shù)字化時代,越來越多的人使用PDF文檔進行信息傳遞和共享,而使用Java生成PDF文檔也成為了一個非常重要的技能,所以本文我們將為您介紹如何使用Java快速生成PDF文檔,需要的朋友可以參考下
    2023-09-09
  • Java面向?qū)ο缶幊蹋ǚ庋b/繼承/多態(tài))實例解析

    Java面向?qū)ο缶幊蹋ǚ庋b/繼承/多態(tài))實例解析

    這篇文章主要介紹了Java面向?qū)ο缶幊蹋ǚ庋b/繼承/多態(tài))實例解析的相關(guān)內(nèi)容,具有一定參考價值,需要的朋友可以了解下。
    2017-10-10
  • java中的可變參數(shù)使用方法

    java中的可變參數(shù)使用方法

    這篇文章主要介紹了java中的可變參數(shù)使用方法的相關(guān)資料,需要的朋友可以參考下
    2017-06-06
  • SpringBoot SpEL語法掃盲與查詢手冊的實現(xiàn)

    SpringBoot SpEL語法掃盲與查詢手冊的實現(xiàn)

    這篇文章主要介紹了SpringBoot SpEL語法掃盲與查詢手冊的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-05-05
  • 高級數(shù)據(jù)結(jié)構(gòu)及應用之使用bitmap進行字符串去重的方法實例

    高級數(shù)據(jù)結(jié)構(gòu)及應用之使用bitmap進行字符串去重的方法實例

    今天小編就為大家分享一篇關(guān)于高級數(shù)據(jù)結(jié)構(gòu)及應用之使用bitmap進行字符串去重的方法實例,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-02-02
  • RabbitMQ簡單隊列實例及原理解析

    RabbitMQ簡單隊列實例及原理解析

    這篇文章主要介紹了RabbitMQ簡單隊列實例及原理解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-12-12
  • Java修改maven的默認jdk版本為1.7的方法

    Java修改maven的默認jdk版本為1.7的方法

    這篇文章主要介紹了Java修改maven的默認jdk版本為1.7的方法,需要的朋友可以參考下
    2018-02-02
  • Java原子變量類常見問題解決

    Java原子變量類常見問題解決

    這篇文章主要介紹了Java原子變量類常見問題解決,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-03-03
  • Flowable?ReceiveTask使用場景分析

    Flowable?ReceiveTask使用場景分析

    這篇文章主要為大家介紹了Flowable?ReceiveTask使用場景分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-10-10

最新評論