GraphQLizek可从现有的PostgreSQL和MySQL数据库中立即开发GraphQL API

20-03-19 banq

GraphQLize是用Clojure编写的具有Java互操作性的开源JVM库,GraphQLize用于从您现有的PostgreSQL和MySQL数据库中立即开发GraphQL API。简化在关系数据库上公开GraphQL API所需的工作。

在JVM生态系统中,开发GraphQL API以公开来自关系数据库的数据需要大量的手工工作。从定义GraphQL模式(代码优先或模式优先)到将它们与解析器和数据库访问逻辑连接在一起,我们都花费了大量的开发时间。

除此之外,我们还需要优化底层的SQL查询,以避免诸如N + 1查询之类的问题。我们还必须考虑维护所得代码库!

GraphQLize将帮助您克服所有这些缺点。它仅用几行代码即可为您提供有效的GraphQL实现。GraphQLize的关键在于生成GraphQL模式并通过使用JDBC驱动程序提供的JDBC元数据来解决查询。目前,它支持Postgres(9.4及更高版本)和MySQL(8.0及更高版本)。

GraphQLize入门很简单,仅涉及几个步骤。

  1. 在您的项目中添加GraphQLize依赖项。
  2. 通过提供Java SQL 数据源来初始化GraphQLize Resolver 。
  3. 添加一个GraphQL API端点,并在上一步中使用初始化的GraphQlize Resolver。

这些步骤的实际实现将根据哪种语言(Java,Clojure)和框架(Spring Boot,Spark Java,Pedestal等)而有所不同。请参考以下链接以获取更多详细信息。