查看原文
其他

前瞻 | Spring Boot 3.0 发布M1版本:你的 Java 升到 17 了吗?

程序猿DD 2021-12-11

The following article is from 码农小胖哥 Author 请关注星标

近日Spring 项目组发布了基于 Spring Framework 6.0 快照版本的 Spring Boot 3.0 的第一个快照版本,但是快照版本并没有放出仓库地址。另外据透露下个月Spring Boot 3.0的首个里程碑版本就会发布,届时将可供开发者研究学习。3.0的首个版本会有什么具体的变化呢?快来一睹为快。

另外正式版会在2022年的Q4季度发布。

一些已知的变更

为了跟上形势,一些已知的变化更需要大家知道。

移除Spring Boot 2.x的弃用API

Spring Boot 2.x 中弃用的类、方法和属性会在3.0版本中删除。

最低Java要求

Spring Boot 3.0开始,Java 17是最低版本,Java 8不再被兼容。到正式版发行的时候Java 19也应该发行了。

Jakarta EE 9

Spring Boot 依赖于 Jakarta EE 规范,3.0 已经升级到 Jakarta EE 9 版本。因此Spring Boot 3.0 会使用 Servlet 5.0规范和JPA 3.0规范。相关的三方依赖如果不支持这些规范,将减少或者移除这些依赖。所以相关的三方依赖请尽快根据 Jakarta EE 9 进行版本迭代。基于这个原因,目前不支持Jakarta EE 9的类库将被移除,包含了一些知名三方类库,例如EhCache3JerseyJOOQThymeleaf等等,直到这些类库适配 Jakarta EE 9

(永久)移除支持

以下三个中间件单独被列了出来,感觉像是永久不再支持了。

  • Apache ActiveMQ
  • Atomikos
  • EhCache 2

如果您正在学习Spring Boot,那么推荐一个连载多年还在继续更新的免费教程:http://blog.didispace.com/spring-boot-learning-2x/

依赖升级

Spring Boot 3.0的一些Spring依赖项目也都升级到了新的里程碑版本,其中包含了Spring Security 6.0-M1Jakarta EE相关的模块也升级到了Jakarta EE 9

更多特性参见Spring Boot3.0M1更新日志[1]

最后一些个人的建议

盲目求新不可取,但是盲目守旧也不可取。我们在使用稳定版本进行日常开发的同时,应该自行建立一条通向新架构、新概念的桥梁。避免知识断代,延长自己的职业寿命。有些东西可能现在抽空要学一下;有些东西虽然现在不用学但是起码要了解一下;还有一些东西要被淘汰了也要留意一下。

总之一句话,要明确自己的投入和产出。

如果您正在学习Spring Cloud,推荐一个经典教程(含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


往期推荐



Java如何校验两个文件内容是相同的?

一款美轮美奂的JavaScript 小项目

Spring Cloud 正式发布第一个支持 Spring Boot 2.6 的版本

如何实现Word、PDF,TXT文件的全文内容检索?

Mybatis Plus 是如何实现动态 SQL 语句的?原理你懂吗?


推荐关注本文作者:码农小胖哥

分享高质量编程知识,探讨IT人生

技术干货,实战技巧,面试技巧,前沿资讯一个都不能少
: . Video Mini Program Like ,轻点两下取消赞 Wow ,轻点两下取消在看

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存