Spring 新闻汇总:Boot 4.0 预览与生态更新

来源: InfoQ - 后端

原文

Spring Boot

Spring Boot" 4.0.0的第三个里程碑版本"发布,提供了Bug修复、文档改进、依赖项升级和新特性,包括:重构PropertyMapper"类,如果source为null,则默认不再调用适配器或谓词方法;用JSpecify"提供的@Nullable"注解替换了actuator端点可选参数上的@OptionalParameter注解。要了解关于这个版本的更多细节,包括破坏性更改,请查看发布说明"和维基页面"。

Spring Framework

Spring Framework团队披露"了CVE-2025-41249——Spring Framework注解检测漏洞"。Spring Framework的注解检测机制“可能无法正确解析具有未限定泛型的参数化超类型的方法注解。”受这个CVE影响的版本包括:6.2.0-6.2.10、6.1.0-6.1.22和5.3.0-5.3.44,不过仅适用于使用了Spring Security @EnableMethodSecurity"注解的应用程序。

Spring Cloud

Spring Cloud" 2025.1.0的第二个里程碑版本"(代号Oakwood)发布,涉及以下子项目5.0.0-M2版本的Bug修复和重要更新:Spring Cloud Kubernetes"、Spring Cloud Function"、Spring Cloud Stream"和Spring Cloud Circuit Breaker"。Spring Cloud 2025.1.0-M2与Spring Boot 4.0.0-M2兼容。要了解关于这个版本的更多细节,请查看发布说明"。

Spring Security

Spring Security" 7.0.0的第三个里程碑版本发布,带来了Bug修复、依赖项升级和新特性,包括:新增OneTimeTokenAuthentication"类,仅用于处理经过身份验证的用户,使现有的OneTimeTokenAuthenticationToken"类仅处理未经身份验证的用户;新增AuthorizationManagerFactory接口,可用于创建AuthorizationManager"接口的自定义实例。要了解关于这个版本的更多细节,包括破坏性更,请查看发布说明"。

Spring Security团队披露"了CVE-2025-41248——Spring Security授权绕过参数化类型的方法安全注解",该漏洞类似于上文的CVE-2025-41249。如果使用@PreAuthorize"或其他方法安全注解,这可能导致授权绕过。这个CVE影响了版本6.4.0-6.4.10和6.5.0-6.5.4,不过仅适用于使用了@EnableMethodSecurity"注解的应用程序。

Spring Authorization Server

Spring Security"团队宣布"将Spring Authorization Server"项目转移到Spring Security。VMware Tanzu首席软件工程师兼Spring Security提交者Joe Grandja"表示:

[Spring Authorization Server]已经达到了成熟稳定的阶段,我们相信,现在是时候将其转移到Spring Security 7.0了。这将为我们的用户提供更简洁的开发体验。

团队已向开发人员保证,将尽可能降低迁移的影响。

Spring for GraphQL

Spring for GraphQL" 2.0.0的第三个里程碑版本"发布,提供了文档改进、依赖项升级和新特性,包括:在Kotlin应用程序中添加模式检查功能,通过JSpecify注解验证空值处理的正确性;通过GraphQL Java" 25提供的全新实现增强对请求取消的支持。要了解关于这个版本的更多细节,请查看发布说明"和维基页面"。

Spring Integration

Spring Integration" 7.0.0的第三个里程碑版本"发布,提供了Bug修复、文档改进、依赖项升级和新特性,包括:AbstractPersistentAcceptOnceFileListFilter"类现在可以远程处理来自MetadataStore"接口的完整文件名,即使不同的目录使用了相同的文件名也可以;移除了现在处于仅维护模式的Spring Retry"项目,它将被Spring Framework 7.0中名为弹性的Spring核心特性"所取代。要了解关于这个版本的更多细节,请查看发布说明"。

Spring Modulith

Spring Modulith" 2.0.0的第三个里程碑版本"发布,带来了依赖项升级和新特性,包括:重构事件发布生命周期以支持Jakarta Persistence"规范;支持基于Jackson 3.0的事件序列化和Apache Kafka事件外部化。要了解关于这个版本的更多细节,请查看发布说明"。

Spring REST Docs

Spring REST Docs" 4.0.0的第三个里程碑版本升级了Spring Framework 7.0.0-M9和Jackson 3.0.0-RC9"。要了解关于这个版本的更多细节,请查看发布说明"。

Spring AI

Spring AI" 1.0.2发布",带来了Bug修复、文档改进、依赖项升级和新特性,包括:支持OpenAI GPT-5"模型;MariaDBVectorStore"类的相似搜索现在提供了一个score值,作为对结果元数据中现有distance值的补充;BeanOutputConverter"类的对象现在能够为Kotlin数据类和对象生成恰当的JSON模式。要了解关于这个版本的更多细节,请查看发布说明"。

Spring Batch

Spring Batch" 6.0.0的第三个里程碑版本发布,提供了Bug修复、依赖项升级和新特性,包括:能够使用JDK Flight Recorder跟踪作业执行情况;将Job和Step接口转换为函数式接口,以便它们可以作为lambda表达式或方法引用的赋值目标。要了解关于这个版本的更多细节,请查看发布说明"。

Spring AMQP

Spring AMQP" 4.0.0 的第五个里程碑版本"发布,带来了Bug修复、依赖项升级和两个新特性:用 Spring Framework 7.0中名为弹性的Spring核心特性替换Spring Retry;在自定义Java Consumer"接口bean意外或不当关闭时抛出InterruptedException异常。要了解关于这个版本的更多细节,请查看发布说明"。

Spring for Apache Kafka

Spring for Apache Kafka" 4.0.0 的第五个里程碑版本发布,提供了一个Bug修复、文档改进、依赖项升级和两个新特性:支持在AbstractMessageListenerContainer"类上配置CompositeBatchInterceptor"类,与CompositeRecordInterceptor"类的方式相同;用 Spring Framework 7.0中名为弹性的Spring核心特性替换Spring Retry。要了解关于这个版本的更多细节,请查看发布说明"。

Spring for Apache Pulsar

Spring for Apache Pulsar" 2.0.0的第三个里程碑版本发布,提供了依赖项升级和一个新特性:允许定义topicPattern参数(在@PulsarListener"注解中定义)的值而不需要全限定主题名。要了解关于这个版本的更多细节,请查看发布说明"。

原文链接:

https://www.infoq.com/news/2025/09/spring-news-roundup-sep15-2025/"