GraphQL Java 入门

2025-06-08

GraphQL Java 入门

GraphQL可以用任何语言实现。今天我们来看看 GraphQL 的 Java 服务器实现。我们使用Maven,并假设我们已经设置好了项目结构。下一步是什么?

依赖项

要在 Java 项目中运行 GraphQL,你只需要一个库,即GraphQL Java实现。不过,在使用 GraphQL Java 时,你可能会发现以下几个库很有用:

  • Spring Boot/graphql - GraphQL Java Spring 和 Spring Boot 集成将处理任何与 HTTP 相关的任务,在应用程序的端点上公开 GraphQL 服务并接受POST包含 GraphQL 有效负载的请求。
  • GraphQL Java 工具——这个库允许您使用 GraphQL SDL 来构建您的 graphql-java 模式。
  • GraphQL Java Servlet - GraphQL Java Servlet 的实现,包括对 Relay.js、Apollo 等库的支持,并包装了 GraphQL Java 提供的 GraphQL 的 Java 实现。

因此,将您需要的依赖项添加到项目对象模型文件(pom.xml)中:
添加 GraphQL Java 依赖项

定义架构

GraphQL Schema是任何 GraphQL 实现的核心,因此在进一步深入之前,我们绝对需要一个 Schema。为了更容易理解服务器能够执行的操作,GraphQL 定义了一种通用的 Schema 语法,称为SDL(Schema 定义语言)

SDL 定义项目的元素如下:

  • type(最基本的 GraphQL 模式组件):GraphQL 类型
  • query(向服务器请求数据)GraphQL 查询
  • mutation(操作数据):GraphQL 突变定义架构的最快方法是使用GraphQL 编辑器。它允许您以传统方式(代码)定义架构,或通过可视化节点对其进行塑造。低代码 GraphQL 编辑器

服务器

市面上有很多 servlet 容器可供选择,既有开源的,也有商业的,所以选择你觉得合适的就好。我们以 Jetty 为例,并通过Maven 插件来实现它:
码头

您已经快完成了,接下来的步骤是:

  • 添加一些更基本的服务器配置,如正确的 Java 版本或 servlet 规范
  • 创建GraphQLEndpoint用于公开 API 的类
  • 定义解析器

如果您想了解有关 GraphQL Java 实现的更多详细信息,请查看 Bojan 关于在https://www.howtographql.com/上设置GraphQL Java服务器的教程

鏂囩珷鏉ユ簮锛�https://dev.to/graphqleditor/getting-started-with-graphql-java-13j1
PREV
GraphQL 代码生成器 GenAI 上线!| 2025 年 6 月 4 日
NEXT
如何为 Edge 或 Chrome 制作扩展程序