news 2026/2/1 14:18:41

变天了,Spring Boot 4 震撼发布!

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
变天了,Spring Boot 4 震撼发布!

近日,Spring Boot 4.0 正式发布。

在 11 月这个时间节点,Spring 官方同时发布了多个旗舰项目的全新主版本:Spring Framework 7、Spring Boot 4、Spring Data 2025.1、Spring AI 1.1……这一系列集中式发布并非例行升级,而是一场覆盖整个 Spring 生态的深度重构。

Sp

爆炸式升级。它不仅清理了技术债,更将整个平台重新定位在未来十年的关键主题上:Jakarta EE 11、JSpecify 空安全、AOT、Project Leyden,以及全面拥抱 AI 原生能力:

1.底层依赖全面升级:Jakarta EE 11 + JDK 25

Spring Framework 7 保留了对JDK 17的兼容性,但明确推荐使用最新的 LTS 版本JDK 25。更重要的是,它正式将Jakarta EE 11作为新的基准:

Servlet 6.1(Tomcat 11.0 / Jetty 12.1)•JPA 3.2(Hibernate ORM 7.1/7.2)•Bean Validation 3.1(Hibernate Validator 9.0+)•WebSocket 2.2- ** Kotlin 2.2 ** 与 ** GraalVM 25*

这意味着javax.*包彻底退出历史舞台。所有@javax.annotation.PostConstruct@javax.inject.Inject等注解必须迁移至jakarta.*命名空间。Undertow 因不支持 Servlet 6.1 被移除,WebFlux 和 WebSocket 的底层实现也随之调整。

2.空安全革命:从 JSR-305 到 JSpecify

Spring 框架代码库已全面采用JSpecify注解替代旧有的 JSR-305 风格。这一变化不仅提升了 Kotlin 与 Java 的互操作一致性,还首次支持对泛型、数组和可变参数的空值语义精确描述。

如果你近期准备面试跳槽,建议在ddkk.com在线刷题,涵盖 一万+ 道 Java 面试题,几乎覆盖了所有主流技术面试题,还有市面上最全的技术五百套,精品系列教程,免费提供。

对开发者而言,这意味着:

•Kotlin 项目可能因 API 空安全语义变化而需要调整•推荐在自己的应用中也采用 JSpecify,以构建真正 null-safe 的系统

3.从运行时魔法到构建期优化:Spring 与 Project Leyden 形成共振

Spring 长期以来最大的特点是“运行时魔法”:

•classpath 扫描•各种动态代理•反射•自动配置的条件判断

这些机制塑造了 Spring 的灵活性,但也带来了启动慢、原生镜像构建复杂等问题。

Spring Boot 4 与 Framework 7 的方向非常明确:把能在构建期完成的事情全部提前到构建期

4.现代化 HTTP 客户端与测试工具链

RestTemplate正式进入弃用倒计时(7.1 将标记@Deprecated)•推出声明式 HTTP 客户端,通过@HttpExchange自动生成实现•支持按组配置(@ImportHttpServices),简化多服务调用管理•新增RestTestClient:非响应式的WebTestClient替代品,支持 MockMvc 与真实服务器•测试上下文自动暂停/恢复,减少后台资源占用

5. 全栈支持 Jackson 3

Spring 全栈默认支持Jackson 3.x(包名为tools.jackson),Jackson 2 被标记为废弃,并将在 7.2 彻底移除。注意:

•注解仍保留在com.fasterxml.jackson(便于迁移)•Jackson2ObjectMapperBuilder不再有 Jackson 3 对应物,推荐使用JsonMapper.builder()

6. API 版本控制原生支持

Spring MVC 与 WebFlux 现在提供原生 API 版本管理

•通过请求头、参数或媒体类型解析 API 版本•支持标记版本为“已弃用”•RestClientWebClientWebTestClient全链路支持

Spring Boot 4 通过spring.mvc.apiversion.*spring.webflux.apiversion.*自动配置。

7.“容错能力”原生支持:重试、限流、熔断进入 spring-core

Spring 正式承认:分布式系统的默认状态就是失败

因此,常用容错能力已进入核心框架:

@Retryable(maxAttempts = 3) public List<Order> getOrders() { ... }

你不再需要:

•引入 spring-retry•搭配 Resilience4j•写额外配置

这意味着 Spring 应用更轻、更一致,也更原生支持云环境。

8.模块化架构:自动配置拆分成更小更精确的模块

过去 IDE 会提示一堆根本不存在于 classpath 的配置属性。现在模块化后:

•错误提示更精准•AOT 代码生成更轻•Native Image 的分析范围更小

9. OpenTelemetry 集成:日志、指标、链路追踪一站式打通

Spring Boot 4.0 引入了官方的spring-boot-starter-opentelemetry,标志着 Spring 生态正式拥抱 OTel,并与 Micrometer 深度融合,实现 Metrics、Traces、Logs 三位一体的 OTLP 导出能力。

10.AI 的双轨战略:Spring AI 1.1 与 2.x 并行演进

本次发布揭示了 Spring 在 AI 领域的一项关键战略:Spring AI 正在明确分化为两条并行的发展路线

Spring AI 1.1 面向当下,稳定集成:

•通过 starter 快速接入主流 LLM 提供商•自动处理 MCP、JSON 映射、工具绑定•与ChatClient深度集成,支持声明式工具注册

Spring AI 2.x 面向未来,深度重构:

•全面适配 Spring Boot 4 与 Jakarta EE 11•重构ChatClientAPI,明确分离响应式与阻塞式调用路径•内建对JSpecify 空安全契约的支持•将MCP 与 AOT 编译深度融入核心架构,实现构建期代理优化

Spring 已清晰划出两条平行轨道:

Spring Framework 6 + Spring Boot 3 + Spring AI 1.1:稳定、成熟、适合维护型系统。•Spring Framework 7 + Spring Boot 4 + Spring AI 2.x:激进、前瞻、面向下一个十年。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/1/29 20:51:25

SpringBoot 数据权限新姿势,注解+动态SQL真香!

介绍easy-data-scop 是一个通过动态注入SQL实现的数据权限项目。支持MyBatis、MyBatis-plus、MyBatis-flex。使用简单&#xff0c;无需设置各种复杂配置&#xff0c;仅仅通过注解便可实现效果功能。基础项目搭建1.数据库图片这是一张简单的用户表&#xff0c;接下来我们将为这张…

作者头像 李华
网站建设 2026/1/30 18:47:12

KLayout版图设计工具:从入门到精通的完整操作指南

KLayout版图设计工具&#xff1a;从入门到精通的完整操作指南 【免费下载链接】klayout KLayout Main Sources 项目地址: https://gitcode.com/gh_mirrors/kl/klayout 在集成电路设计领域&#xff0c;专业版图设计工具对于提升设计效率和质量至关重要。KLayout作为业界领…

作者头像 李华
网站建设 2026/1/30 5:07:22

WeMod专业版完整解锁终极方案:零成本畅享高级游戏辅助特权

WeMod专业版完整解锁终极方案&#xff1a;零成本畅享高级游戏辅助特权 【免费下载链接】Wemod-Patcher WeMod patcher allows you to get some WeMod Pro features absolutely free 项目地址: https://gitcode.com/gh_mirrors/we/Wemod-Patcher 还在为WeMod免费版的功能…

作者头像 李华
网站建设 2026/2/1 14:11:01

基于单片机的温度报警设定范围系统设计

一、设计背景与核心需求 在工业生产、仓储管理、家庭环境监测等场景中&#xff0c;温度超出安全范围易引发设备故障、物资损坏甚至安全事故&#xff0c;传统固定阈值温度报警器难以适配不同场景的温度管控需求。基于单片机的温度报警设定范围系统&#xff0c;借助单片机的传感器…

作者头像 李华
网站建设 2026/1/31 8:03:09

参数少≠性能弱:VibeThinker打破小模型无法推理的偏见

参数少≠性能弱&#xff1a;VibeThinker打破小模型无法推理的偏见 在AI领域&#xff0c;我们似乎早已习惯了这样的叙事——更大的模型意味着更强的能力。百亿、千亿参数的大语言模型轮番登场&#xff0c;动辄消耗数百万美元训练成本&#xff0c;部署时还需要多卡并行甚至专用集…

作者头像 李华