当前位置: 首页 > 工具软件 > graphql-ide > 使用案例 >

GraphQL的探索之路 – SpringBoot集成GraphQL小栗子篇二 - 第315篇

郎同化
2023-12-01

一、GraphQL demo 说明

1.1 环境说明

操作系统 : 苹果电脑

春季启动:2.3.1.发布

JDK:1.8

graphql-spring-boot-starter : 5.0.2

GraphQL-java-tools:5.2.4

图形iql-弹簧-启动器:7.1.0

1.2 编码思路说明

(1)我们会新创建一个maven项目;

(2)引入相关的依赖,比如spring boot和graphql的依赖包;

(3)编写相应的实体类以及服务(这里的demo简化了DAO的部分);

(4)定义GraphQLQueryResolver进行方法的声明;

(5)定义graphqls的接口定义和scheme定义。

二、GraphQL小栗子

2.1 新建一个Maven项目

       使用IDE新建一个maven project,取名为:springboot-graphql-demo2020

2.2 引入相关依赖

       在pom.xml文件添加依赖:

 
  1. <?xml version="1.0" encoding="UTF-8"?>

  2. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

  3. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">

  4. <modelVersion>4.0.0</modelVersion>

  5. <parent>

  6. <groupId>org.springframework.boot</groupId>

  7. <artifactId>spring-boot-starter-parent</artifactId>

  8. <version>2.3.1.RELEASE</version>

  9. <relativePath/> <!-- lookup parent from repository -->

  10. </parent>

  11. <groupId>com.kfit</groupId>

  12. <artifactId>springboot-graphql-demo2020</artifactId>

  13. <version>0.0.1-SNAPSHOT</version>

  14. <name>springboot-graphql-demo2020</name>

  15. <description>Demo project for Spring Boot</description>

  16. <properties>

  17. <java.version>1.8</java.version>

  18. </properties>

  19. <dependencies>

  20. <dependency>

  21. <groupId>org.springframework.boot</groupId>

  22. <artifactId>spring-boot-starter-web</artifactId>

  23. </dependency>

  24. <dependency>

  25. <groupId>com.graphql-java</groupId>

  26. <artifactId>graphql-spring-boot-starter</artifactId>

  27. <version>5.0.2</version>

  28. </dependency>

  29. <dependency>

  30. <groupId>com.graphql-java</groupId>

  31. <artifactId>graphql-java-tools</artifactId>

  32. <version>5.2.4</version>

  33. </dependency>

  34. <dependency>

  35. <groupId>com.graphql-java-kickstart</groupId>

  36. <artifactId>graphiql-spring-boot-starter</artifactId>

  37. <version>7.1.0</version>

  38. </dependency>

  39. </dependencies>

  40. <build>

  41. <plugins>

  42. <plugin>

  43. <groupId>org.springframework.boot</groupId>

  44. <artifactId>spring-boot-maven-plugin</artifactId>

  45. </plugin>

  46. </plugins>

  47. </build>

  48. </project>

说明:

(1)GraphQL的依赖:GraphQL-spring-boot-starter、graphql-java-tools。

(2)graphiql(graphql GUI,图形化工具不是必需的):graphiql-spring-boot-starter;GraphiQL 是一个可以直接和 GraphQL 服务交互的 UI 界面,可以执行查询和修改请求。

2.3 编写实体类

       这里我们编写一个作者的实体类作者:

 
  1. package com.kfit.test.bean;

  2. public class Author {

  3. private int id;//作者的ID.

  4. private String name;//作者名称.

  5. private String photo;//照片.

  6. public int getId() {

  7. return id;

  8. }

  9. public void setId(int id) {

  10. this.id = id;

  11. }

  12. public String getName() {

  13. return name;

  14. }

  15. public void setName(String name) {

  16. this.name = name;

  17. }

  18. public String getPhoto() {

  19. return photo;

  20. }

  21. public void setPhoto(String photo) {

  22. this.photo = photo;

  23. }

  24. }

2.4 编写服务

。。。。。。。。。。。。。。。。。

版权原因,完整文章,请参考如下:GraphQL的探索之路 – SpringBoot集成GraphQL小栗子篇二 - 第315篇

 类似资料: