2022年1月20日,Spring官方發布了Spring Boot 3.0.0的第一個里程碑版本M1。
下面一起來來看看Spring Boot 3.0.0 M1版本都有哪些重大變化:
Java基線從 Java 8 提升到了 Java 17
這個在最早的Spring Boot 3相關預告中就已經知道了,Java 17將成為未來的主流版本。那么問題來了,大家都把Java 17的升級提上日程了嗎?如果你對Java 8之后的各種版本的信息不太了解的話,這里有份 4.6 W 字的總結,或許你可以讀一讀。
從Java EE APIs 到 Jakarta EE
Spring Boot 3開始,所有的Java EE Api都需要遷移到Jakarta EE上來。大部分用戶需要修改import相關API的時候,要用jakarta替換javax。比如:原來引入javax.servlet.Filter
的地方,需要替換為jakarta.servlet.Filter
。但還有一些依賴Java EE API的第三方庫,目前還沒有得到很好的支持,所以在Spring Boot 3中暫時會先移除這類組件的支持(比如:EhCache 3
、Infinispan
、Jolokia
、Pooled JMS
等)。所以,目前的M1版本相較2.x版本來說,會有一些特性的缺失。當然大多數應該還只是暫時的,Spring Boot官方會等這些第三方庫發布Jakarta兼容庫之后再重新引入。
這個支持被移除
下面這些功能的支持被移除了,相較上一個SNAPSHOT版本增加了Hazelcast 3
- Apache ActiveMQ
- Atomikos
- EhCache 2
- Hazelcast 3
對了,如果您正在學習Spring Boot,順手推薦一個我原創的Spring Boot免費教程,連載多年還在一直更新,從1.x到2.x,未來3.x繼續更近,趕緊加入收藏夾吃灰吧!
依賴升級
相關Spring項目的依賴版本:
- Micrometer 2.0.0-M1
- Spring AMQP 3.0.0-M1
- Spring Batch 5.0.0-M1
- Spring Data 2022.0.0-M1
- Spring Framework 6.0.0-M2
- Spring Integration 6.0.0-M1
- Spring HATEOAS 2.0.0-M1
- Spring Kafka 3.0.0-M1
- Spring LDAP 3.0.0-M1
- Spring REST Docs 3.0.0-M1
- Spring Security 6.0.0-M1
- Spring Session 2022.0.0-M1
- Spring Web Services 4.0.0-M1
第三方庫的依賴版本:
- Artemis 2.20.0
- Hazelcast 5.0
- Hibernate Validator 7.0
- Jakarta Activation 2.0
- Jakarta Annotation 2.0
- Jakarta JMS 3.0
- Jakarta JSON 2.0
- Jakarta JSON Bind 3.0
- Jakarta Mail 2.0
- Jakarta Persistence 3.0
- Jakarta Servlet 5.0
- Jakarta Servlet JSP JSTL 2.0
- Jakarta Transaction 2.0
- Jakarta Validation 3.0
- Jakarta WebSocket 2.0
- Jakarta WS RS 3.0
- Jakarta XML Bind 3.0
- Jakarta XML Soap 2.0
- Jetty 11
- jOOQ 3.16
- Tomcat 10
未來計划
后續Spring Boot團隊將每兩個月發布一個新的里程碑版本,所以M2版本預計將在3月24日發布,而GA版本將在11月下旬與大家見面。
想第一時間了解更多關於Spring Boot的發展動態的話,記得關注我。分享前沿技術,積累超車資本,從關注DD開始。另外,我們創建了一個高質量的技術交流群,與優秀的人在一起,自己也會優秀起來,趕緊點擊加群,享受一起成長的快樂。
參考資料
歡迎關注我的公眾號:程序猿DD。第一時間了解前沿行業消息、分享深度技術干貨、獲取優質學習資源