本周 Spring - 2025年12月02日
大家好,Spring 粉丝们!欢迎来到又一期《本周 Spring》。由于我的失误,我不小心在这期中发布了旧内容,然后试图修复它,结果又重新发布了相同的内容。更糟糕的是,我竟然删除了为这期撰写的草稿——就是我本来打算复制过来覆盖错误内容的那个。哎。真是错误百出。总之,这是一个关于为什么你应该确保获得足够睡眠的教训。这就是为什么我现在又要重新编写相同的内容了!
那么,事不宜迟,本周的总结终于来了!
- 这是一个令人兴奋的Spring Tools 项目下一代展望
- 在上周的《Bootiful 播客》中,我采访了 Spring 和 Java 社区传奇人物 Simon Martinelli
- Spring Cloud 2025.1.0 已发布
- Spring Data AOT 仓库支持上更多精彩内容
- 我喜欢 Spring Modulith 创始人 Oliver Drotbohm 这篇关于 重新思考 Spring 应用程序集成测试的文章
- 这有多酷?Spring AI 亮相 AWS re:Invent!
- 想了解 Spring Framework 7 和 Spring Boot 4 中令人惊叹的新功能吗?…
迈向 Spring Tools 5 - 刻板印象和新的结构视图
在开发 Spring 项目时,开发者不仅考虑类和接口等低级概念。在使用 Spring 时,你会想到服务、仓库、配置类、实体、聚合根等更高级的抽象和概念。为了在开发者的编码环境中突出这些概念,Spring Tools 从 Spring 视角分析你的源代码,并根据这些概念提供概览和快速导航——我们已经这样做了很长时间。
过去,我们使用“转到符号”功能来实现这一点。Spring Tools 通过分析源代码并提取必要信息,为这些 Spring 概念创建了专门的符号。例如,这导致为请求映射创建了诸如 /greeting – GET 之类的符号…
一次美好的播客:Spring 社区传奇人物兼朋友 Simon Martinelli
大家好,Spring 粉丝们!我和整个 Spring 团队祝大家感恩节快乐!显而易见,我们非常感谢您,我们的社区。本周我非常荣幸能与 Spring 社区传奇人物 Simon Martinelli 聊天。
Spring Cloud 2025.1.0(又名 Oakwood)已发布
我很高兴代表社区宣布 Spring Cloud 2025.1.0 发布列车的通用可用性(RELEASE)已于今日发布。该版本可在 Maven Central 中找到。您可以查看 2025.1.0 发行说明以获取更多信息。
2025.1.0 发布列车中的显著变化
这是一个主要版本,每个项目都已更新到 5.0.0 版本。此版本基于 Spring Framework 7 和 Spring Boot 4。
此版本的所有更改列表可在 2025.1.0 GitHub 项目中找到。
Spring Cloud 发布
spring-cloud-stater-parent工件已被移除 (#437) …
Spring Data 预编译仓库 - 第 2 部分
总结 Road to GA 博客系列,让我们探讨 Spring Data AOT Repositories 的好处。
早在 2025 年 5 月,我们首次将 预编译(AOT)仓库 作为 JPA 和 MongoDB 的预览功能引入,同时发布了 下一代 Spring Data 的第三个里程碑。简而言之,此功能利用 AOT 处理,通过依赖仓库的特定存储特性,使用实际源代码实现你的仓库查询方法。
从那时起,我们采纳了反馈,解决了粗糙之处,并增加了两个模块:Apache Cassandra 和 JDBC。这意味着,通过 2025.1.0 发布,你将能够使用 AOT 生成的仓库和四种 Spring Data…
本周 Spring - Spring Boot 4 版本!- 2025年11月25日
大家好,Spring 粉丝们!欢迎来到本周 Spring 的又一期精彩内容!在美国,现在是感恩节周。感恩节传统上在每年十一月的第四个星期四与亲朋好友一起庆祝,围坐在摆满食物的桌子旁,通常还有一只巨大的烤火鸡。如果庆祝得好,这是一个团聚并为生活中的好运心存感激的时刻。因此,本着这种精神,我的朋友们,我想提醒大家——我相信我也可以代表整个 Spring 团队在这里发言!——我们非常感谢你们。社区是最棒的…
超越 JSON:将 Spring AI 工具响应格式转换为 TOON、XML、CSV、YAML 等
JSON 是 LLM 工具响应的首选格式,但最近关于 TOON(面向令牌的对象表示法)等替代格式的讨论声称在令牌效率和性能方面具有潜在优势。尽管争论仍在继续——批判性分析 指出 结果具有上下文依赖性——问题是:如何在你的 Spring AI 应用程序中试验这些格式?
本文演示了如何配置 Spring AI 以在 JSON、TOON、XML、CSV 和 YAML 之间转换工具响应,使你能够决定哪种格式最适合你的特定用例。
Spring AI 工具调用:快速…
迈向 Spring Tools 5 - 为 Boot 4 和 Framework 7 做好准备
Spring Modulith 2.0 GA、1.4.5 和 1.3.11 发布
我很高兴代表社区宣布 Spring Modulith 2.0 的可用性。该版本是一个重要的里程碑,它包含了我们在 Spring Modulith 第一代中获得的所有经验。我们发布了以下主要功能
- 彻底检修事件发布生命周期 #796(Neo4j #1337,MongoDB #1336,JDBC #1321,JPA #1375,#1389)
- 支持应用程序模块特定的 Flyway 迁移 #1067,#1440
- 允许事件外部化的序列化执行 #1370
- 支持 Jackson 3 进行事件序列化 #1364,#1369
- 支持在启动时验证应用程序模块结构 #1287
- 将空值验证迁移到 jSpecify #1192
- 将类型的命名接口分配传播到声明的方法的返回类型和参数类型 #1264
- 从模块的
package-info.javaJavadoc 中提取模块描述 #1430 - 移除已废弃的
@ApplicationEventListener注解 …