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。第一时间了解前沿行业消息、分享深度技术干货、获取优质学习资源