作为更新它的一部分,我很难在 java 项目中实现 GraphQL。我正在尝试将实体(使用 Hibernate ORM 映射到不同的数据库)连接到 GraphQLObjectType 。有什么建议我怎么能做到这一点?如果可以,我可以省略 GraphQL 数据库配置吗?
问问题
6809 次
2 回答
11
这里有多种选择。
- 最好不要直接映射实体。实体是数据库的直接表示,因此可能不应该直接公开,而是包装到 DTO 中(可能允许分页、展平关系或任何适当的)。
- 如果您只需要将类(实体与否)映射到 a
GraphQLObjectType
,graphql-java-annotations是最简单(也是最有限)的路线(首先检查这个项目的状态,它处于中断状态一段时间) - 如果您想通过 GraphQL 公开整个实体图,graphql-jpa可能是您最好的选择(正如Sriram 建议的那样),因为它旨在做到这一点,同时还添加分页、聚合和排序
- 如果您不仅想自动公开实体/DTO 类,还想自动公开对它的操作(例如任意服务类),请查看graphql-spqr(我是该项目的作者)
于 2017-05-29T09:11:03.913 回答
1
如果您已经使用 JPA/Hibernate 定义了实体,请尝试以下操作:
于 2017-04-28T23:27:18.030 回答