迈向 Spring Tools 5 - 为 Boot 4 和 Framework 7 做好准备

工程 | Martin Lippert | 2025年11月24日 | ...

随着 Spring Framework 和 Spring Boot 新主要版本的发布,Spring Tools 的下一个主要版本也即将到来。GA 版定于 12 月 10 日发布,RC 版将从现在开始陆续出现。

支持 Spring 中的新功能

Spring Tools 5 包含了对 Spring Framework 7 和 Spring Boot 4 各种新特性的支持,从对新 API 版本控制功能的广泛支持,到通过新 bean 注册器 API 实现函数式 bean 定义的支持,再到基于 JSpecify 注解的空值分析的半自动配置以及对 Spring Data 中 AOT 仓库的支持。现在让我们深入了解一下这些细节。

支持 API 版本控制

Spring Framework 7 引入了对 API 版本控制 的支持,用于构建服务器端 web 端点以及在客户端访问 web 资源。Spring Tools 5 通过以下方式引入了对此的支持:

  • 在控制器顶部显示代码透镜,为您提供 web 配置的快速概览和摘要(无论是来自 Java web 配置还是启动属性)。

Web config codelens with summary information above a controller class

  • 版本属性作为请求映射符号的一部分显示(帮助您概览不同版本的映射,并允许您轻松导航到特定映射)。
  • 在映射上检测到版本属性时,验证是否配置了版本控制策略。

Validation showing an error if the version attribute is used without a versioning strategy being configured

  • 验证提及的版本在语法上是否正确(如果配置了默认版本控制格式)。
  • 验证策略配置的几个条件(路径段不与其他策略混合,策略未多次配置等)。

Validation showing an error if the version strategy configuration uses path segments in combination with another strategy

支持 bean 注册器

Spring Framework 7 中对函数式 bean 定义进行了相当多的改进。新的 bean 注册器 机制允许您以更结构化的方式编程定义 bean。Spring Tools 5 以与源代码中其他 bean 定义相同的方式理解这些 bean 定义,并显示这些 bean 定义及其他内容——正如您所期望的那样。无论您是在 @DependsOn 注解值上使用内容辅助,还是想快速导航到特定的 bean 定义,通过 bean 注册器定义的 bean 都会自动显示。

支持 AOT 仓库

Spring Data 2025.1 引入了 提前编译的仓库。虽然这些仓库在启动和运行时具有许多优势,但它们也允许工具直接在源代码中显示查询的详细信息。例如,这些额外的信息向您展示了 Spring Data 为仓库方法生成的精确 SQL 查询,让您深入了解查询方法如何转换为 SQL 查询。

Codelenses showing up on top of query methods in Spring Data AOT repositories

除了显示生成的查询语句细节的代码透镜外,AOT 仓库的集成还允许您从仓库接口定义直接跳转到仓库生成的源代码,或者快速将生成的 SQL 查询转换为 @Query 注解。

该工具使用 Spring Data 在构建过程中提前为仓库生成源代码时产生的元数据。这也意味着可视化信息不一定与您在编辑器中看到的代码同步。您可以通过运行项目构建或使用代码透镜仅刷新 AOT 元数据来更新 AOT 元数据(从而更新代码透镜)。

JSpecify 注解的自动配置

Spring Tools 所构建的各种环境(包括 Visual Studio Code、Cursor、Eclipse 等)中使用的 Java 编译器已经能够运行广泛的基于注解的空值分析。但是,您需要告诉编译器在进行此分析时应考虑哪些注解。Spring Tools 5 for Eclipse 版本会自动配置 JSpecify 注解。作为用户,您只需在首选项中启用基于注解的空值分析即可。即将发布的 Visual Studio Code、Cursor 和 Theia 的 Java 支持版本也将预配置并可以使用 JSpecify 注解。在这些环境中,如果这些注解在您的项目类路径上,则会弹出一个窗口询问您是否启用分析。

展望

如果您想尝试 Spring Tools 5 的最新候选版本,请访问工具预览页面,或者在 Visual Studio Code 中切换到扩展的预发布版本。

在本 Spring Tools 5 博客系列接下来的部分中,我们将了解新的基于原型(stereotype)的逻辑结构视图,并初步了解 Spring Tools 如何与 AI 工具集成,随后是 Spring Tools 5 的正式发布。敬请期待。

获取 Spring 新闻通讯

通过 Spring 新闻通讯保持联系

订阅

领先一步

VMware 提供培训和认证,助您加速进步。

了解更多

获得支持

Tanzu Spring 提供 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二进制文件,只需一份简单的订阅。

了解更多

即将举行的活动

查看 Spring 社区所有即将举行的活动。

查看所有