0

如何使用 GraphQL-Java 实现将任何数据库与 GraphQL 应用程序连接起来?示范方法将不胜感激。

4

2 回答 2

2

有几种可能的解决方案:

A) 使用数据对象调用 GraphQL 查询:

Foo data = perhapsFromDatabase();
ExecutionResult executionResult = schemaFactory.getGraphQL().execute(query, data, variables);

如果数据有方法 getTitle(),您可以直接在 GraphQL 查询中查询该属性。

B) 使用 DataFetcher:

来自GraphQL 文档的示例代码:

  DataFetcher<Foo> fooDataFetcher = new DataFetcher<Foo>() {
    @Override
    public Foo get(DataFetchingEnvironment environment) {
        // environment.getSource() is the value of the surrounding
        // object. In this case described by objectType
        Foo value = perhapsFromDatabase(); // Perhaps getting from a DB or whatever 
        return value;
    }
};

GraphQLObjectType objectType = newObject()
        .name("ObjectType")
        .field(newFieldDefinition()
                .name("foo")
                .type(GraphQLString)
                .dataFetcher(fooDataFetcher))
        .build();
于 2017-03-12T21:18:46.000 回答
0

这是我最喜欢 GraphQL 的地方,它是一个概念,就像 REST。所以它独立于技术。我使用gradle、spring-jpa、spring-boot 和 mongo-db创建了一个微博应用程序。PS:我还附加了邮递员 API 调用以使其更易于测试。

于 2017-12-29T17:01:00.360 回答