【发布时间】:2017-03-18 00:11:16
【问题描述】:
我有一个类似这样的图表:
(t:Teacher)-[:TEACHES]-(s:Student)-[:ATTENDS]-(s:Subject)-[:REQUIRES]-(b:Book)
以@NodeEntity 类表示。
我需要为 Id 在给定范围内的教师加载所有 @NodeEntities,并在一个查询中获取他们教授的所有学生,以及他们的学科和每个学科所需的书籍。
我试过了
int depth=3;
List<Long> ids = newArrayList(3,4,5);
session.loadAll(Teacher.class, ids, depth);
其实我开头对应的GraphRepositoryfindAll是一样的东西。
不幸的是,我得到了数据库中所有可用教师的列表,因为每个学生恰好都由所有教师教授。我还尝试运行自定义@Query,但您似乎无法指定自定义深度How to control depth on custom Spring Data Neo4j repository methods?,也无法从自定义密码查询返回多个节点。
你知道为什么我的方法是错误的吗?这似乎是对 neo4j 的简单使用,但我一直无法获取整个图表。
【问题讨论】:
-
我使用的是spring数据neo4j 4.0.0.RELEASE。我想避免升级到 spring data neo4j 的 4.2.0.M1 版本(有帮助吗?),因为它还需要升级我的 spring boot 版本和其他依赖项。
标签: java spring neo4j spring-data-neo4j