java - 如何在 GraphQL Java 中解析多个模式文件

标签 java graphql graphql-java

我在 Java 中使用 GraphQL。我有几个要解析的模式文件。谁能告诉我是否有办法做到这一点。我使用了以下方法,它只允许解析一个模式文件。

@Value("classpath:dashboard.graphql")
private Resource schemaResource;

File schemaFile = schemaResource.getFile();
TypeDefinitionRegistry definitionRegistry = new SchemaParser().parse(schemaFile);

假设我有两个架构文件,例如 dashboard.graphqlstudent.graphql。那我们如何解析这两个文件呢?

谁能解释一下。

谢谢

最佳答案

我知道这是一个古老的问题,但 SO 答案出现在官方 GraphQL-java documentation 之前,所以我想我应该把它贴在这里:

SchemaParser schemaParser = new SchemaParser();
SchemaGenerator schemaGenerator = new SchemaGenerator();

File schemaFile1 = loadSchema("starWarsSchemaPart1.graphqls");
File schemaFile2 = loadSchema("starWarsSchemaPart2.graphqls");
File schemaFile3 = loadSchema("starWarsSchemaPart3.graphqls");

TypeDefinitionRegistry typeRegistry = new TypeDefinitionRegistry();

// each registry is merged into the main registry
typeRegistry.merge(schemaParser.parse(schemaFile1));
typeRegistry.merge(schemaParser.parse(schemaFile2));
typeRegistry.merge(schemaParser.parse(schemaFile3));

GraphQLSchema graphQLSchema = schemaGenerator.makeExecutableSchema(typeRegistry, buildRuntimeWiring());

关于java - 如何在 GraphQL Java 中解析多个模式文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46561218/

相关文章:

graphql 未使用别名时出现 FieldsConflict 类型的验证错误

java - 将 bean 注入(inject)到 GraphQL 的 DataFetcher 中

java - 让 Java 和 TWAIN 很好地协同工作

java - JPA 与 JDBC : Read only access on existing database

java - Android NullPointerException 在 View 或适配器中或

java - 如何修复 "syntax error on token abstract"错误?

node.js - 登录 apollo-server 的推荐方式

graphql - 在批处理之外发送 apollo 请求

reactjs - 如何使用 react-apollo 使用相同的查询进行多个 graphql 查询?

java - 如何获取查询/变异操作名称