領先一步
VMware 提供培訓和認證,助您加速進步。
瞭解更多我代表 Spring for GraphQL 團隊,很高興宣佈 1.3 RC1 版本釋出。本文將介紹此版本。有關 1.3 中其他即將推出的功能的更多資訊,請參閱1.3 M1 部落格文章。
1.3 候選釋出版本基於今天早些時候釋出的 GraphQL Java 22 構建。GraphQL Java 22 包含許多新功能,包括顯著的效能改進,對即將加入 GraphQL 規範的 Defer 和 Stream 指令 的實驗性支援,以及更多。
此版本也包含重大變更,現在是時候在您的環境中進行實驗了。有關更多詳細資訊,請參閱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 codec 不同的 codec。這對於按需渲染 GraphQL 響應(例如帶有 null
值)而不會對常規 HTTP 端點產生副作用非常重要。
有關所有更改的列表,請參閱v1.3.0-RC1 釋出頁面。
我們將繼續與 DGS 團隊緊密合作,進行整合,為這兩個框架提供一個共同的基礎。DGS 團隊現已提供通用整合的可用版本,並規劃了路線圖。
請參閱公告部落格文章,Josh 與 Paul Bakker 和 Kavitha Srinivasan 的Bootiful 播客也值得觀看。
接下來是 5 月 21 日的 GA 版本釋出。一如既往,您的反饋至關重要,我們非常感謝!請試用此版本,並告訴我們它的工作情況。
GA 版本釋出一週後,即 5 月 30-31 日,是 2024 年度的 Spring I/O 大會,屆時我們將有一個關於 GraphQL Java 22 和 Spring for GraphQL 1.3 的專屬會議。我期待與計劃參加會議的人見面。門票所剩不多了!