首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GraphQL-Java对复杂过滤器的支持

GraphQL-Java对复杂过滤器的支持
EN

Stack Overflow用户
提问于 2017-03-23 01:31:02
回答 1查看 1.1K关注 0票数 1

有谁知道Java实现是否支持复杂过滤器?如果我正确地理解了这篇文章:

https://www.graph.cool/docs/tutorials/designing-powerful-apis-with-graphql-query-parameters-aing7uech3/

参考实现包含过滤器参数是一个内置参数,它支持具有嵌套条件的复杂过滤器。但是,这些示例不适用于graphql示例。

这是我使用graphql:2.3.0玩的简单示例:

代码语言:javascript
复制
    GraphQLType employeeType = newObject()
            .name("Employee")
            .field(newFieldDefinition()
                    .name("name")
                    .type(Scalars.GraphQLString)
                    )
            .field(newFieldDefinition()
                    .name("age")
                    .type(Scalars.GraphQLInt)
                    )
            .field(newFieldDefinition()
                    .name("active")
                    .type(Scalars.GraphQLBoolean)
                    )
            .build();

    GraphQLObjectType companyType = newObject()
            .name("Company")
            .field(newFieldDefinition()
                    .name("name")
                    .type(Scalars.GraphQLString)
                    )
            .field(newFieldDefinition()
                    .name("employees")
                    .type(new GraphQLList(employeeType))
                    .argument(newArgument()
                            .name("name")
                            .type(Scalars.GraphQLString)
                            .build()
                    )
                    .argument(newArgument()
                            .name("age")
                            .type(Scalars.GraphQLInt)
                            .build()
                    )
                    .argument(newArgument()
                            .name("active")
                            .type(Scalars.GraphQLBoolean)
                            .build()
                    )
                    .dataFetcher(new EmployeeFetcher())
                    )
            .build();

    GraphQLObjectType companyListType = newObject()
            .name("Companies")
            .field(newFieldDefinition()
                    .name("companies")
                    .type(new GraphQLList(companyType))
                    .argument(newArgument()
                                .name("name")
                                .type(Scalars.GraphQLString)
                                .build()
                            )
                    .dataFetcher(new CompanyFetcher())
                    )
            .build();


    GraphQLSchema schema = GraphQLSchema.newSchema()
            .query(companyListType)
            .build();

    GraphQL graphQL = new GraphQL(schema);
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-04-12 15:41:37

您所讨论的是Graph.colo的扩展,而不是引用实现。当然,您可以使用graphql构建类似的东西,但是没有什么是现成的,因为这个lib的目标是只实现规范。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42965647

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档