Más contenido relacionado La actualidad más candente (12) Similar a GraphQL vs Traditional Rest API (20) Más de Vladimir Dejanovic (20) GraphQL vs Traditional Rest API77. #GraphQlVsRest
@VladimirD_42
public class GraphQLEntryPoint extends
SimpleGraphQLServlet {
public
GraphQLEntryPoint(PostRepository p) {
super(buildSchema(p));
}
private static GraphQLSchema
buildSchema(PostRepository p) {
return SchemaParser.newParser()
.file("schema.graphqls")
.resolvers(new Query(postRepository))
.build().makeExecutableSchema();
}
}
78. #GraphQlVsRest
@VladimirD_42
public class GraphQLEntryPoint extends
SimpleGraphQLServlet {
public
GraphQLEntryPoint(PostRepository p) {
super(buildSchema(p));
}
private static GraphQLSchema
buildSchema(PostRepository p) {
return SchemaParser.newParser()
.file("schema.graphqls")
.resolvers(new Query(postRepository))
.build().makeExecutableSchema();
}
}
79. #GraphQlVsRest
@VladimirD_42
public class GraphQLEntryPoint extends
SimpleGraphQLServlet {
public
GraphQLEntryPoint(PostRepository p) {
super(buildSchema(p));
}
private static GraphQLSchema
buildSchema(PostRepository p) {
return SchemaParser.newParser()
.file("schema.graphqls")
.resolvers(new Query(postRepository))
.build().makeExecutableSchema();
}
}
80. #GraphQlVsRest
@VladimirD_42
public class GraphQLEntryPoint extends
SimpleGraphQLServlet {
public
GraphQLEntryPoint(PostRepository p) {
super(buildSchema(p));
}
private static GraphQLSchema
buildSchema(PostRepository p) {
return SchemaParser.newParser()
.file("schema.graphqls")
.resolvers(new Query(postRepository))
.build().makeExecutableSchema();
}
}
81. #GraphQlVsRest
@VladimirD_42
public class GraphQLEntryPoint extends
SimpleGraphQLServlet {
public
GraphQLEntryPoint(PostRepository p) {
super(buildSchema(p));
}
private static GraphQLSchema
buildSchema(PostRepository p) {
return SchemaParser.newParser()
.file("schema.graphqls")
.resolvers(new Query(postRepository))
.build().makeExecutableSchema();
}
}
82. #GraphQlVsRest
@VladimirD_42
public class GraphQLEntryPoint extends
SimpleGraphQLServlet {
public
GraphQLEntryPoint(PostRepository p) {
super(buildSchema(p));
}
private static GraphQLSchema
buildSchema(PostRepository p) {
return SchemaParser.newParser()
.file("schema.graphqls")
.resolvers(new Query(postRepository))
.build().makeExecutableSchema();
}
}
83. #GraphQlVsRest
@VladimirD_42
public class GraphQLEntryPoint extends
SimpleGraphQLServlet {
public
GraphQLEntryPoint(PostRepository p) {
super(buildSchema(p));
}
private static GraphQLSchema
buildSchema(PostRepository p) {
return SchemaParser.newParser()
.file("schema.graphqls")
.resolvers(new Query(postRepository))
.build().makeExecutableSchema();
}
}
84. #GraphQlVsRest
@VladimirD_42
public class GraphQLEntryPoint extends
SimpleGraphQLServlet {
public
GraphQLEntryPoint(PostRepository p) {
super(buildSchema(p));
}
private static GraphQLSchema
buildSchema(PostRepository p) {
return SchemaParser.newParser()
.file("schema.graphqls")
.resolvers(new Query(postRepository))
.build().makeExecutableSchema();
}
}
85. #GraphQlVsRest
@VladimirD_42
public class GraphQLEntryPoint extends
SimpleGraphQLServlet {
public
GraphQLEntryPoint(PostRepository p) {
super(buildSchema(p));
}
private static GraphQLSchema
buildSchema(PostRepository p) {
return SchemaParser.newParser()
.file("schema.graphqls")
.resolvers(new Query(postRepository))
.build().makeExecutableSchema();
}
}
140. #GraphQlVsRest
@VladimirD_42
public class Mutation
implements GraphQLRootResolver {
private final AuthorRepository authRepo;
public Author addAuthor(String name) {
return authRepo.save(new Author(null, name));
}
public Author removeAuthour(String id) {
Author auth = authRepo.findOne(id);
authRepo.delete(id); return auth;
}
}
141. #GraphQlVsRest
@VladimirD_42
public class Mutation
implements GraphQLRootResolver {
private final AuthorRepository authRepo;
public Author addAuthor(String name) {
return authRepo.save(new Author(null, name));
}
public Author removeAuthour(String id) {
Author auth = authRepo.findOne(id);
authRepo.delete(id); return auth;
}
}
142. #GraphQlVsRest
@VladimirD_42
public class Mutation
implements GraphQLRootResolver {
private final AuthorRepository authRepo;
public Author addAuthor(String name) {
return authRepo.save(new Author(null, name));
}
public Author removeAuthour(String id) {
Author auth = authRepo.findOne(id);
authRepo.delete(id); return auth;
}
}
143. #GraphQlVsRest
@VladimirD_42
public class Mutation
implements GraphQLRootResolver {
private final AuthorRepository authRepo;
public Author addAuthor(String name) {
return authRepo.save(new Author(null, name));
}
public Author removeAuthour(String id) {
Author auth = authRepo.findOne(id);
authRepo.delete(id); return auth;
}
}
144. #GraphQlVsRest
@VladimirD_42
public class Mutation
implements GraphQLRootResolver {
private final AuthorRepository authRepo;
public Author addAuthor(String name) {
return authRepo.save(new Author(null, name));
}
public Author removeAuthour(String id) {
Author auth = authRepo.findOne(id);
authRepo.delete(id); return auth;
}
}
145. #GraphQlVsRest
@VladimirD_42
public class Mutation
implements GraphQLRootResolver {
private final AuthorRepository authRepo;
public Author addAuthor(String name) {
return authRepo.save(new Author(null, name));
}
public Author removeAuthour(String id) {
Author auth = authRepo.findOne(id);
authRepo.delete(id); return auth;
}
}
146. #GraphQlVsRest
@VladimirD_42
public class Mutation
implements GraphQLRootResolver {
private final AuthorRepository authRepo;
public Author addAuthor(String name) {
return authRepo.save(new Author(null, name));
}
public Author removeAuthour(String id) {
Author auth = authRepo.findOne(id);
authRepo.delete(id); return auth;
}
}
147. #GraphQlVsRest
@VladimirD_42
public class Mutation
implements GraphQLRootResolver {
private final AuthorRepository authRepo;
public Author addAuthor(String name) {
return authRepo.save(new Author(null, name));
}
public Author removeAuthour(String id) {
Author auth = authRepo.findOne(id);
authRepo.delete(id); return auth;
}
}
148. #GraphQlVsRest
@VladimirD_42
public class Mutation
implements GraphQLRootResolver {
private final AuthorRepository authRepo;
public Author addAuthor(String name) {
return authRepo.save(new Author(null, name));
}
public Author removeAuthour(String id) {
Author auth = authRepo.findOne(id);
authRepo.delete(id); return auth;
}
}
149. #GraphQlVsRest
@VladimirD_42
public class Mutation
implements GraphQLRootResolver {
private final AuthorRepository authRepo;
public Author addAuthor(String name) {
return authRepo.save(new Author(null, name));
}
public Author removeAuthour(String id) {
Author auth = authRepo.findOne(id);
authRepo.delete(id); return auth;
}
}
160. #GraphQlVsRest
@VladimirD_42
class MyCustomContext extends GraphQLContext
. . . .
@Override
protected GraphQLContext
createContext(Optional<HttpServletRequest> r,
Optional<HttpServletResponse> response) {
. . . .
return MyCustomContext
}
. . . .
public ? <method>(<args>,
DataFetchingEnvironment env) {
MyCustomContext con = env.getContext();
. . . .
161. #GraphQlVsRest
@VladimirD_42
class MyCustomContext extends GraphQLContext
. . . .
@Override
protected GraphQLContext
createContext(Optional<HttpServletRequest> r,
Optional<HttpServletResponse> response) {
. . . .
return MyCustomContext
}
. . . .
public ? <method>(<args>,
DataFetchingEnvironment env) {
MyCustomContext con = env.getContext();
. . . .
162. #GraphQlVsRest
@VladimirD_42
class MyCustomContext extends GraphQLContext
. . . .
@Override
protected GraphQLContext
createContext(Optional<HttpServletRequest> r,
Optional<HttpServletResponse> response) {
. . . .
return MyCustomContext
}
. . . .
public ? <method>(<args>,
DataFetchingEnvironment env) {
MyCustomContext con = env.getContext();
. . . .
163. #GraphQlVsRest
@VladimirD_42
class MyCustomContext extends GraphQLContext
. . . .
@Override
protected GraphQLContext
createContext(Optional<HttpServletRequest> r,
Optional<HttpServletResponse> response) {
. . . .
return MyCustomContext
}
. . . .
public ? <method>(<args>,
DataFetchingEnvironment env) {
MyCustomContext con = env.getContext();
. . . .
164. #GraphQlVsRest
@VladimirD_42
class MyCustomContext extends GraphQLContext
. . . .
@Override
protected GraphQLContext
createContext(Optional<HttpServletRequest> r,
Optional<HttpServletResponse> response) {
. . . .
return MyCustomContext
}
. . . .
public ? <method>(<args>,
DataFetchingEnvironment env) {
MyCustomContext con = env.getContext();
. . . .
165. #GraphQlVsRest
@VladimirD_42
class MyCustomContext extends GraphQLContext
. . . .
@Override
protected GraphQLContext
createContext(Optional<HttpServletRequest> r,
Optional<HttpServletResponse> response) {
. . . .
return MyCustomContext
}
. . . .
public ? <method>(<args>,
DataFetchingEnvironment env) {
MyCustomContext con = env.getContext();
. . . .
166. #GraphQlVsRest
@VladimirD_42
class MyCustomContext extends GraphQLContext
. . . .
@Override
protected GraphQLContext
createContext(Optional<HttpServletRequest> r,
Optional<HttpServletResponse> response) {
. . . .
return MyCustomContext
}
. . . .
public ? <method>(<args>,
DataFetchingEnvironment env) {
MyCustomContext con = env.getContext();
. . . .
167. #GraphQlVsRest
@VladimirD_42
class MyCustomContext extends GraphQLContext
. . . .
@Override
protected GraphQLContext
createContext(Optional<HttpServletRequest> r,
Optional<HttpServletResponse> response) {
. . . .
return MyCustomContext
}
. . . .
public ? <method>(<args>,
DataFetchingEnvironment env) {
MyCustomContext con = env.getContext();
. . . .
168. #GraphQlVsRest
@VladimirD_42
class MyCustomContext extends GraphQLContext
. . . .
@Override
protected GraphQLContext
createContext(Optional<HttpServletRequest> r,
Optional<HttpServletResponse> response) {
. . . .
return MyCustomContext
}
. . . .
public ? <method>(<args>,
DataFetchingEnvironment env) {
MyCustomContext con = env.getContext();
. . . .
169. #GraphQlVsRest
@VladimirD_42
class MyCustomContext extends GraphQLContext
. . . .
@Override
protected GraphQLContext
createContext(Optional<HttpServletRequest> r,
Optional<HttpServletResponse> response) {
. . . .
return MyCustomContext
}
. . . .
public ? <method>(<args>,
DataFetchingEnvironment env) {
MyCustomContext con = env.getContext();
. . . .
170. #GraphQlVsRest
@VladimirD_42
class MyCustomContext extends GraphQLContext
. . . .
@Override
protected GraphQLContext
createContext(Optional<HttpServletRequest> r,
Optional<HttpServletResponse> response) {
. . . .
return MyCustomContext
}
. . . .
public ? <method>(<args>,
DataFetchingEnvironment env) {
MyCustomContext con = env.getContext();
. . . .
171. #GraphQlVsRest
@VladimirD_42
class MyCustomContext extends GraphQLContext
. . . .
@Override
protected GraphQLContext
createContext(Optional<HttpServletRequest> r,
Optional<HttpServletResponse> response) {
. . . .
return MyCustomContext
}
. . . .
public ? <method>(<args>,
DataFetchingEnvironment env) {
MyCustomContext con = env.getContext();
. . . .
172. #GraphQlVsRest
@VladimirD_42
class MyCustomContext extends GraphQLContext
. . . .
@Override
protected GraphQLContext
createContext(Optional<HttpServletRequest> r,
Optional<HttpServletResponse> response) {
. . . .
return MyCustomContext
}
. . . .
public ? <method>(<args>,
DataFetchingEnvironment env) {
MyCustomContext con = env.getContext();
. . . .
183. #GraphQlVsRest
@VladimirD_42
$ curl -H "Content-Type: application/json" -X POST
-d '{"query":"query {allPosts { title }}",
"variables":null}' http://localhost:8080/graphql |
json_pp
{
"data" : {
"allPosts" : [
{
"title" : "Who is Ed Wong”
}, {
"title" : "Who is Son Goku”
},
. . . .
184. #GraphQlVsRest
@VladimirD_42
$ curl -H "Content-Type: application/json" -X POST
-d '{"query":"query {allPosts { title }}",
"variables":null}' http://localhost:8080/graphql |
json_pp
{
"data" : {
"allPosts" : [
{
"title" : "Who is Ed Wong”
}, {
"title" : "Who is Son Goku”
},
. . . .
185. #GraphQlVsRest
@VladimirD_42
$ curl -H "Content-Type: application/json" -X POST
-d '{"query":"query {allPosts { title }}",
"variables":null}' http://localhost:8080/graphql |
json_pp
{
"data" : {
"allPosts" : [
{
"title" : "Who is Ed Wong”
}, {
"title" : "Who is Son Goku”
},
. . . .
186. #GraphQlVsRest
@VladimirD_42
$ curl -H "Content-Type: application/json" -X POST
-d '{"query":"query {allPosts { title }}",
"variables":null}' http://localhost:8080/graphql |
json_pp
{
"data" : {
"allPosts" : [
{
"title" : "Who is Ed Wong”
}, {
"title" : "Who is Son Goku”
},
. . . .
187. #GraphQlVsRest
@VladimirD_42
$ curl -H "Content-Type: application/json" -X POST
-d '{"query":"query {allPosts { title }}",
"variables":null}' http://localhost:8080/graphql |
json_pp
{
"data" : {
"allPosts" : [
{
"title" : "Who is Ed Wong”
}, {
"title" : "Who is Son Goku”
},
. . . .
188. #GraphQlVsRest
@VladimirD_42
$ curl -H "Content-Type: application/json" -X POST
-d '{"query":"query {allPosts { title }}",
"variables":null}' http://localhost:8080/graphql |
json_pp
{
"data" : {
"allPosts" : [
{
"title" : "Who is Ed Wong”
}, {
"title" : "Who is Son Goku”
},
. . . .
189. #GraphQlVsRest
@VladimirD_42
$ curl -H "Content-Type: application/json" -X POST
-d '{"query":"query {allPosts { title }}",
"variables":null}' http://localhost:8080/graphql |
json_pp
{
"data" : {
"allPosts" : [
{
"title" : "Who is Ed Wong”
}, {
"title" : "Who is Son Goku”
},
. . . .
190. #GraphQlVsRest
@VladimirD_42
$ curl -H "Content-Type: application/json" -X POST
-d '{"query":"query {allPosts { title }}",
"variables":null}' http://localhost:8080/graphql |
json_pp
{
"data" : {
"allPosts" : [
{
"title" : "Who is Ed Wong”
}, {
"title" : "Who is Son Goku”
},
. . . .
191. #GraphQlVsRest
@VladimirD_42
$ curl -H "Content-Type: application/json" -X POST
-d '{"query":"query {allPosts { title }}",
"variables":null}' http://localhost:8080/graphql |
json_pp
{
"data" : {
"allPosts" : [
{
"title" : "Who is Ed Wong”
}, {
"title" : "Who is Son Goku”
},
. . . .