前瞻 | Spring Boot 3.0 發(fā)布M1版本:你的 Java 升到 17 了嗎?

近日Spring?項(xiàng)目組發(fā)布了基于?Spring Framework 6.0?快照版本的?Spring Boot 3.0?的第一個(gè)快照版本,但是快照版本并沒有放出倉(cāng)庫(kù)地址。另外據(jù)透露下個(gè)月Spring Boot 3.0的首個(gè)里程碑版本就會(huì)發(fā)布,屆時(shí)將可供開發(fā)者研究學(xué)習(xí)。3.0的首個(gè)版本會(huì)有什么具體的變化呢?快來(lái)一睹為快。
另外正式版會(huì)在2022年的Q4季度發(fā)布。
一些已知的變更
為了跟上形勢(shì),一些已知的變化更需要大家知道。
移除Spring Boot 2.x的棄用API
Spring Boot 2.x 中棄用的類、方法和屬性會(huì)在3.0版本中刪除。
最低Java要求
從Spring Boot 3.0開始,Java 17是最低版本,Java 8不再被兼容。到正式版發(fā)行的時(shí)候Java 19也應(yīng)該發(fā)行了。
Jakarta EE 9
Spring Boot?依賴于?Jakarta EE?規(guī)范,3.0?已經(jīng)升級(jí)到?Jakarta EE 9?版本。因此Spring Boot 3.0?會(huì)使用?Servlet 5.0規(guī)范和JPA 3.0規(guī)范。相關(guān)的三方依賴如果不支持這些規(guī)范,將減少或者移除這些依賴。所以相關(guān)的三方依賴請(qǐng)盡快根據(jù)?Jakarta EE 9?進(jìn)行版本迭代。基于這個(gè)原因,目前不支持Jakarta EE 9的類庫(kù)將被移除,包含了一些知名三方類庫(kù),例如EhCache3、Jersey、JOOQ、Thymeleaf等等,直到這些類庫(kù)適配?Jakarta EE 9。
(永久)移除支持
以下三個(gè)中間件單獨(dú)被列了出來(lái),感覺像是永久不再支持了。
Apache ActiveMQ Atomikos EhCache 2
如果您正在學(xué)習(xí)Spring Boot,那么推薦一個(gè)連載多年還在繼續(xù)更新的免費(fèi)教程:http://blog.didispace.com/spring-boot-learning-2x/
依賴升級(jí)
Spring Boot 3.0的一些Spring依賴項(xiàng)目也都升級(jí)到了新的里程碑版本,其中包含了Spring Security 6.0-M1。Jakarta EE相關(guān)的模塊也升級(jí)到了Jakarta EE 9。
更多特性參見Spring Boot3.0M1更新日志[1]
最后一些個(gè)人的建議
盲目求新不可取,但是盲目守舊也不可取。我們?cè)谑褂梅€(wěn)定版本進(jìn)行日常開發(fā)的同時(shí),應(yīng)該自行建立一條通向新架構(gòu)、新概念的橋梁。避免知識(shí)斷代,延長(zhǎng)自己的職業(yè)壽命。有些東西可能現(xiàn)在抽空要學(xué)一下;有些東西雖然現(xiàn)在不用學(xué)但是起碼要了解一下;還有一些東西要被淘汰了也要留意一下。
總之一句話,要明確自己的投入和產(chǎn)出。
如果您正在學(xué)習(xí)Spring Cloud,推薦一個(gè)經(jīng)典教程(含Spring Cloud Alibaba):https://blog.didispace.com/spring-cloud-learning/
參考資料
[1]Spring Boot3.0M1更新日志: https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-3.0-M1-Release-Notes
往期推薦
推薦關(guān)注本文作者:碼農(nóng)小胖哥
分享高質(zhì)量編程知識(shí),探討IT人生
