這個項目建立在 Boot 2.x 上,但它應該與最新的 Boot2.4.x5 相關。
要創建項目,請轉到start.spring.io并為要使用的GraphQL傳輸選擇啟動器:

依賴{
實現 'org.springframework.experimental:graphql-spring-boot-starter:1.0.0-SNAPSHOT'
// ...
MavenCentral()
maven { url 'https://repo.spring.io/snapshot' } // Spring 快照
架構
spring.graphql.schema.locations=classpath:graphql/
spring.graphql.schema.printer.enabled=false
你可以聲明RuntimeWiringConfigurer在 Spring 的配置與 GraphQL 引擎豆類和使用這些登記的數據獲取程序,類型旋轉變壓器,和更多:
公共類 PersonDataWiring 實現 RuntimeWiringConfigurer {
私有的最終 PersonService 服務;
公共 PersonDataWiring(PersonService 服務){
}
@覆蓋
builder.type("查詢", 接線 ->
}
查詢dsl存儲庫
網絡搜索
spring.graphql.path=/graphql
spring.graphql.websocket.path=/graphql
# 必須從客戶端收到“CONNECTION_INIT”消息的時間
聲明一個WebInterceptorbean,通過HTTP和WebSocket請求在GraphQL的Web攔截中注冊。
GraphiQL
spring.graphql.graphiql.enabled=true
指標
management.metrics.graphql.autotime.enabled=false
management.endpoints.web.exposure.include=health,metrics,info
請求訪問位置/actuator/metrics/graphql.request。
|
描述 |
樣本值 |
|
|---|---|---|
|
結果 |
請求結果 |
“成功”、“錯誤” |
一個DataFetcher指標定時器可在/actuator/metrics/graphql.datafetcher。
|
標簽 |
描述 |
樣本值 |
|---|---|---|
|
小路 |
數據獲取器路徑 |
“查詢.項目” |
|
結果 |
數據獲取結果 |
“成功”、“錯誤” |
錯誤投票
測試
依賴{
testImplementation 'org.springframework.graphql:spring-graphql-test:1.0.0-SNAPSHOT'
// 也添加這個,除非 spring-boot-starter-webflux 也存在
}
存儲庫{
maven { url 'https://repo.spring.io/milestone' } // 春季里程碑
}
@SpringBootTest
@AutoConfigureGraphQlTeste
私有 WebGraphQlTester graphQlTester;
}
針對 Spring WebFlux 的基于 HTTP 的 GraphQL,使用模擬服務器:
@AutoConfigureWebTestClient
公共類 MockMvcGraphQlTests {
@自動連線
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
公共類 MockMvcGraphQlTests {
@自動連線
@SpringBootTest
公共類 MockMvcGraphQlTests {
@自動連線
無效訂閱(){
.executeSubscription()
StepVerifier.create(result)
.expectNext("卓悅")
.verifyComplete();
訂閱測試直接針對WebGraphQlHandlerHTTP和WebSocket傳輸委托的對象執行。它通過WebInterceptor鏈,然后調用GraphQL的Java返回一個響應流Publisher。
-
JAVA
+關注
關注
20文章
3001瀏覽量
116430 -
spring
+關注
關注
0文章
341瀏覽量
15936 -
GraphQL
+關注
關注
0文章
14瀏覽量
801
發布評論請先 登錄
認證的意義和影響:AEC-Q102認證的深遠影響
TLE989x EvalBoard with TQFP/LQFP spring socket v01_1 評估板深度解析
一款基于Java+Spring Boot+Vue的智慧隨訪管理系統源碼
哪些產品要做MIC認證呢?
srrc認證是強制認證嗎?
3C認證派生是什么意思?
TELEC認證怎么辦理
Spring攔截器:你的請求休想逃過我的五指山!
哪些產品要做ncc認證?
一文了解什么是 BQB 認證
「Spring認證」什么是Spring GraphQL?
評論