作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我在 Java 中使用 GraphQL。我有几个要解析的模式文件。谁能告诉我是否有办法做到这一点。我使用了以下方法,它只允许解析一个模式文件。
@Value("classpath:dashboard.graphql")
private Resource schemaResource;
File schemaFile = schemaResource.getFile();
TypeDefinitionRegistry definitionRegistry = new SchemaParser().parse(schemaFile);
假设我有两个架构文件,例如 dashboard.graphql 和 student.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/
我是一名优秀的程序员,十分优秀!