领先一步
VMware 提供培训和认证,以加速您的进步。
了解更多代表 Spring for GraphQL 团队,我很高兴地宣布 1.3 RC1 现已推出。本文档描述了此版本。有关 1.3 中其他即将推出的功能的更多信息,请参阅1.3 M1 博客文章。
1.3 版本候选版本基于今天早些时候发布的 GraphQL Java 22 构建。GraphQL Java 22 包含许多新功能,包括主要的性能改进、对 GraphQL 规范中即将推出的延迟和流指令的实验性支持等等。
此版本也包含重大更改,现在是您在环境中进行实验的好时机。有关更多详细信息,请参阅GraphQL Java 22 发布页面。
启动时的模式检查报告已被证明是一个受欢迎的功能。但是,由于它依赖于控制器方法签名才能将模式与 Java 类型匹配,因此它没有完全检查模式接口和联合类型,因为在这种情况下,控制器方法返回类型没有提供有关运行时实际类型的信息。
1.3 版本候选版本添加了对检查接口和联合的支持,这取决于确切的命名约定,可以透明地发现对应于接口实现和联合成员类型的 Java 类型。如有必要,可以自定义这些选项以帮助进行检查。
模式检查还得到了增强,可以检测和报告@Argument
控制器方法参数与模式中声明的字段参数之间的不匹配。
如果您使用模式接口,您可能需要为每个实现对象重复映射同一个字段。
1.3 版本候选版本添加了对通过使这些重复注册透明来映射到模式接口字段的支持,除非它们已经存在。这适用于@SchemaMapping和@BatchMapping方法。
@EntityMapping
进行批量加载1.3 M1 为联邦支持添加了通过@EntityMapping
注释的控制器方法加载联邦实体的功能。感谢早期反馈,我们通过批处理模式对此进行了增强,其中@EntityMapping
方法可以返回给定类型的所有实体。请参阅文档中更新的联邦部分。
WebSocket 传输现在支持在定期间隔发送保持活动 PING 消息,前提是没有发送其他消息。在服务器端,这是通过 Spring Boot 属性spring.graphql.websocket.keep-alive
启用的。在客户端,这是通过客户端构建器启用的。
现在可以为 GraphQL 端点配置一个与 HTTP 和 Web 端点使用的 Jackson 编解码器不同的编解码器。这对于根据需要呈现 GraphQL 响应(例如,使用null
值)而不会对常规 HTTP 端点造成副作用非常重要。
有关所有更改的列表,请参阅v1.3.0-RC1 发布页面。
我们继续与 DGS 团队紧密合作,以实现一个能够为两个框架提供运行基础的集成。DGS 团队现在已将集成提供给一般用户使用,并概述了路线图。
请参阅公告博客文章,以及 Josh 与 Paul Bakker 和 Kavitha Srinivasan 共同参与的Bootiful Podcast也值得观看。
接下来是 5 月 21 日的 GA 版本。与往常一样,您的反馈至关重要,我们非常感谢!请试用此版本并告诉我们您的使用体验。
GA 版本发布一周后,将于 5 月 30 日至 31 日举行 2024 年版的Spring I/O 大会,我们将举办专门的会议,介绍 GraphQL Java 22 和 Spring for GraphQL 1.3。我期待着看到那些计划参加的人。仅剩少量门票了!