2020年11月12日,Spring官方發布了Spring Boot 2.4.0 GA的公告。
在這個版本中增加了大量的新特性和改進,下面我們一起看看在這個重要版本中都有哪些值得關注的內容!
更新內容
-
版本命名的更改,從2.4開始,版本名將去除RELEASE后綴,所以這次的版本不是2.4.0.RELEASE,而是2.4.0
-
改進了 application.properties 和 application.yml 文件的處理方式。如果您只有一個簡單的 application.properties 或 application.yml 文件,那么您的升級應該是無縫的。但是,如果您有更復雜的設置,那么如果您想使用新特性,則可能需要進行一些更改。更細節的內容可參考:
https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-Config-Data-Migration-Guide
-
新的 spring.config.import 屬性可用於導入 Kubernetes 中常用的配置樹。
-
現在可以使用一個新的startup端點來顯示有關應用程序啟動的信息。這個端點可以幫助您識別比預期啟動時間更長的 bean。
-
Docker/Buildpack的支持,可以更方便的構建鏡像
-
完美支持Java 15
-
相關依賴的升級
- Spring AMQP 2.3
- Spring Batch 4.3
- Spring Data 2020.0
- Spring Framework 5.3
- Spring HATEOAS 1.2
- Spring Integration 5.4
- Spring Kafka 2.6
- Spring Retry 1.3
- Spring Security 5.4
- Spring Session 2020.0
-
嵌入式數據庫的檢測邏輯改進,只有當數據庫在內存中時才視為嵌入式數據庫。所以,如果當你對 H2、 HSQL 和 Derby 采用文件形式持久化的時候將不會自動初始化
-
Logback配置屬性的更改
- logging.pattern.rolling-file-name → logging.logback.rollingpolicy.file-name-pattern
- logging.file.clean-history-on-start → logging.logback.rollingpolicy.clean-history-on-start
- logging.file.max-size → logging.logback.rollingpolicy.max-file-size
- logging.file.total-size-cap → logging.logback.rollingpolicy.total-size-cap
- logging.file.max-history → logging.logback.rollingpolicy.max-history
-
默認情況下,不在 HTTP traces中包含 Cookie 請求頭和 set-Cookie 響應頭。如果從 Spring Boot 2.3升級的話,需要將 management.trace.http.include 配置設置為 cookies、 errors、 request-headers、 response-headers。
-
Undertow 在轉發請求時將保留原始請求 URL。這個版本覆蓋了 Undertow 的默認設置,以符合 Servlet 規范。當然,你也可以將屬性 server.undertow.preserve-path-on-forward 設置為 true,來恢復 Undertow 的默認行為。
-
使用ES的用戶需要注意,這個版本中不再自動配置低級的 Elasticsearch RestClient,但 RestHighLevelClient 仍然是可以自動配置的。建議用戶不應該使用低級的客戶端,應該使用更高級的客戶端的,所以這樣的改動應該不會影響太多用戶。
-
如果你正在使用 Flyway 5,請確保在升級到 Spring Boot 2.4之前升級到 Flyway 6,因為 Flyway 只對一個功能版本進行模式升級。
本文首發於:Spring Boot 2.4.0 正式發布!全新的配置處理機制,擁抱雲原生!,轉載請注明出處
參考資料
歡迎關注我的公眾號:程序猿DD,獲得獨家整理的免費學習資源助力你的Java學習之路!另每周贈書不停哦~