groupId:
com.graphql-java-kickstart
- starter:
graphql-spring-boot-starter
-> /graphql - unit test:
graphql-spring-boot-starter-test
- schema viewer:
voyager-spring-boot-starter
-> /voyager - clients:
playground-spring-boot-starter
-> /playground -> recommended (BETTER than Playground Application)graphiql-spring-boot-starter
-> /graphiqlaltair-spring-boot-starter
-> /altair
BETTER than using
DataFetcher
Resolve "N+1" fetch problem
- https://github.com/graphql-java-kickstart/graphql-spring-boot/tree/master/example-request-scoped-dataloader
- graphql.servlet.contextSetting: PER_REQUEST_WITH_INSTRUMENTATION (graphql.kickstart.execution.context.ContextSetting)
- https://www.graphql-java.com/documentation/v13/data-fetching/
- https://www.graphql-java.com/documentation/v13/batching/
Resolve authentication & authorization
- https://github.com/graphql-java-kickstart/samples/blob/master/subscription-with-authentication
- https://www.howtographql.com/graphql-java/5-authentication/
Resolve custom scalar
graphql.schema.GraphQLEnumType
Resolve custom directives (TODO)