Spring Boot 3.0.0-M1

Spring Boot 近日发布了第一个里程碑版本:Spring Boot 3.0.0-M1

https://spring.io/blog/2022/01/20/spring-boot-3-0-0-m1-is-now-available

这个版本变动就大了,栈长这篇就给你好好梳理下。

最低依赖

这个表格是 3.0 所变动的,其他的要求继承 Spring Boot 2.x。

| 组件 | 版本 |
| JDK | JDK 17+ |
| Servlet | Servlet 5.0 |
| JPA | JPA 3.0 |
| Spring | Spring Framework 6+ |
| Gradle | Gradle 7.3 |

这里最值得关注的是,JDK 直接从 Java 8 干到了 Java 17,好家伙。。

这个也很好理解了,Java 17 是继 Java 11 之后的第一个长期支持版本,关键还是 Oracle 推出商用免费政策后的第一个版本,等 Spring Boot 3.0 正式发布,Java 8 算是熬到头了。

到时,你还会说坚守 Java 8 吗?

迁移 Jakarta EE

几年前 Java EE 已经被 Eclipse 基金会改名为 Jakarta EE,很多规范也被重合名了,比如,这个 javax.* 包命名就不能再用了,已经被修改为 jakarta.*

修改示例:

javax.servlet.Filter

现在要修改为:

jakarta.servlet.Filter

Spring Boot 3.0 已经将 Java EE 所有的 APIs 迁移到了 Jakarta EE,就会影响之前 Java EE 的规范标准,这个改动可能是全盘的。

体验尝鲜

如果你想体验 Spring Boot 3.0,可以上官网一键生成项目:

https://start.spring.io/

选择 Spring Boot 3.0.0(M1)版本,另外记得要勾选 Java 17,不然可能编译错误。

这里栈长就不再演示了,等正式版发布,栈长再做一次全盘的分享,可以持续关注公众号Java技术栈,公众号第一时间推送。

往期 Spring Boot 教程及示例源码整理:

https://github.com/javastacks/spring-boot-best-practice

总结

Spring Boot 3.0.0 第一个里程碑版本 M1 发布,有两个重大的变更依赖项:

  • 最低要求 Java 17
  • Java EE 迁移到了 Jakarta EE;

重要: 因为 Jakarta EE 兼容性的问题,需要依赖其他第三方库的同步更新,所以这个版本并没有包括所有 Spring Boot 2.x 的功能,有许多暂时移除的功能,待正式版本发布的过程中会逐渐完善。

所以,如果你只是想尝鲜是可以的,用到现有的项目上生产环境就不行了。。

未来的计划,Spring Boot 3.0 会每两个月发布一个里程碑版本,M2 里程碑版本计划在今年 3 月 24 日发布,第一个正式版本计划在今年 11 月发布。

最后,如果你还没用过 Spring Boot,今天我就送你一份 《Spring Boot 学习笔记》这个很全了,包括底层实现原理及代码实战,非常齐全,助你快速打通 Spring Boot 的各个环节。

Spring Boot 最新进展和教程解读,栈长后续会继续分享,可以持续关注公众号Java技术栈,公众号第一时间推送。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注