在Java中,graphql的使用方法
时间: 2024-02-05 21:10:47 浏览: 124
graphql-client:用于Java的graphql客户端
5星 · 资源好评率100%
GraphQL 是一种用于 API 的查询语言以及一种满足你数据查询的运行时。Java 有很多 GraphQL 的实现框架,其中比较受欢迎的有 graphql-java 和 spring-graphql。
下面是一个使用 graphql-java 的简单例子:
1. 添加依赖
在 Maven 中添加以下依赖:
```xml
<dependency>
<groupId>com.graphql-java</groupId>
<artifactId>graphql-java</artifactId>
<version>16.2.0</version>
</dependency>
```
2. 定义 Schema
在 GraphQL 中,Schema 定义了可查询的类型和字段。因此,我们需要定义一个 Schema,并将其转换为 GraphQLSchema 对象。
```java
import graphql.schema.GraphQLObjectType;
import graphql.schema.GraphQLSchema;
import static graphql.Scalars.*;
import static graphql.schema.GraphQLFieldDefinition.*;
public class HelloWorldSchema {
public static void main(String[] args) {
GraphQLObjectType queryType = newObject()
.name("helloWorldQuery")
.field(newFieldDefinition()
.type(GraphQLString)
.name("hello")
.staticValue("world"))
.build();
GraphQLSchema schema = GraphQLSchema.newSchema()
.query(queryType)
.build();
System.out.println(schema);
}
}
```
3. 执行查询
现在我们可以执行一个查询并得到结果了。
```java
import graphql.ExecutionResult;
import graphql.GraphQL;
public class HelloWorld {
public static void main(String[] args) {
GraphQLSchema schema = HelloWorldSchema.getSchema();
GraphQL graphQL = GraphQL.newGraphQL(schema).build();
ExecutionResult result = graphQL.execute("{ hello }");
System.out.println(result.getData().toString());
}
}
```
输出结果为:
```
{hello=world}
```
这就是一个简单的 GraphQL 查询。你可以通过定义更复杂的 Schema 来支持更强大的查询。
阅读全文