@@ -131,31 +131,36 @@ A Java library for building GraphQL APIs.
131
131
Code that executes a hello world GraphQL query with \`graphql-java\`:
132
132
133
133
\`\`\`java
134
- import graphql.schema.GraphQLObjectType;
134
+ import graphql.ExecutionResult;
135
+ import graphql.GraphQL;
135
136
import graphql.schema.GraphQLSchema;
137
+ import graphql.schema.StaticDataFetcher;
138
+ import graphql.schema.idl.RuntimeWiring;
139
+ import graphql.schema.idl.SchemaGenerator;
140
+ import graphql.schema.idl.SchemaParser;
141
+ import graphql.schema.idl.TypeDefinitionRegistry;
136
142
137
- import static graphql.Scalars.GraphQLString;
138
- import static graphql.schema.GraphQLFieldDefinition.newFieldDefinition;
139
- import static graphql.schema.GraphQLObjectType.newObject;
143
+ import static graphql.schema.idl.RuntimeWiring.newRuntimeWiring;
140
144
141
145
public class HelloWorld {
142
146
143
147
public static void main(String[] args) {
148
+ String schema = "type Query{hello: String} schema{query: Query}";
144
149
145
- GraphQLObjectType queryType = newObject()
146
- .name("helloWorldQuery")
147
- .field(newFieldDefinition()
148
- .type(GraphQLString)
149
- .name("hello")
150
- .staticValue("world"))
151
- .build();
150
+ SchemaParser schemaParser = new SchemaParser();
151
+ TypeDefinitionRegistry typeDefinitionRegistry = schemaParser.parse(schema);
152
152
153
- GraphQLSchema schema = GraphQLSchema.newSchema()
154
- .query(queryType)
155
- .build();
156
- Map<String, Object> result = new GraphQL(schema).execute("{hello}").getData();
153
+ RuntimeWiring runtimeWiring = newRuntimeWiring()
154
+ .type("Query", builder -> builder.dataFetcher("hello", new StaticDataFetcher("world")))
155
+ .build();
157
156
158
- System.out.println(result);
157
+ SchemaGenerator schemaGenerator = new SchemaGenerator();
158
+ GraphQLSchema graphQLSchema = schemaGenerator.makeExecutableSchema(typeDefinitionRegistry, runtimeWiring);
159
+
160
+ GraphQL build = GraphQL.newGraphQL(graphQLSchema).build();
161
+ ExecutionResult executionResult = build.execute("{hello}");
162
+
163
+ System.out.println(executionResult.getData().toString());
159
164
// Prints: {hello=world}
160
165
}
161
166
}
0 commit comments