graphql java tools
该库允许您使用GraphQL架构语言来构建GraphQL-Java架构。受GraphQl-Tools的启发,它解析了给定的GraphQl架构,并允许您byoo(带上自己的对象)填写实现。 graphql java tools如果您已经拥有固定数据(例如RPC,ORM,REST等)的域Pojos,则可以通过“神奇地”将这些映射到GraphQl对象来奏效。
graphql java tools目的是与Java无缝集成,但适用于任何JVM语言。与Kotlin一起尝试!
我们正在寻找贡献者!
您是否有兴趣改善我们的文档,在代码库上工作,审查PRS?
在Github上与我们联系并加入团队!
快速开始
使用gradle
在您的gradle.properties中设置kotlin版本。
kotlin.version=2.1.20
添加依赖项:
compile \' com.graphql-java-kickstart:graphql-java-tools:14.0.1 \'
使用maven
在您的<properties>部分中设置Kotlin版本:
< properties > < kotlin .version>2.1.20</ kotlin .version> </ properties >
添加依赖项:
< dependency > < groupId >com.graphql-java-kickstart</ groupId > < artifactId >graphql-java-tools</ artifactId > < version >14.0.1</ version > </ dependency >
文档
查看我们的文档以获取更多详细信息。
为什么要graphql java tools ?
- 架构首先: graphql java tools允许您使用GraphQL架构语言而不是代码中难以阅读的构建器以简单的便携式方式编写架构。
- 最小的样板:手动描述您的GraphQl-Java对象需要大量工作,并且很快变得不可读。存在一些库来缓解样板痛,包括GraphQl-Java的内置模式优先的接线,但没有(到目前为止)进行类型和DataFetcher Discovery。
- 状态数据fetchers :如果您使用的是IOC容器(如Spring),则很难连接使用您已经定义的bean而没有一堆脆弱配置的bean。 graphql java tools允许您注册任何可以带来状态并使用该类型的类型的“解析器”,以解决字段。
- 生成的dataFetchers : graphql java tools会自动为您的字段创建数据fetterers,以调用Java类上适当的方法。这意味着创建一个新字段所需要做的就是将字段定义添加到模式中,并在类上添加相应的方法。
- 类型 – >类发现: graphql java tools从您的root对象(查询,突变)开始,并且在为您生成数据fetchers时,开始了解您用于某个GraphQL类型的类。
- 类验证:由于没有对类型 – >类关系的任何编译时间检查,如果您提供不需要的类/类型, graphql java tools会警告您,如果您在构建模式时使用错误的Java类,以及如果您将错误的Java类用于某个GraphQl类型,则会警告您。
- 单元测试:由于您的GraphQL架构独立于您的数据模型,因此您的类简单且可测试。
已知问题
Wiki汇总已知问题。
