【发布时间】:2016-02-29 08:04:11
【问题描述】:
我目前正在使用graph db-neo4j开发一个程序,我需要实现以下功能。
- 我有两种类型的节点,类型A表示舞台,类型N表示让用户做一些选择。
- 首先我们有节点A1,它有几个(2-5)类型N子节点,N1,N2强>, N3, ...
- 节点 A1 也有子节点 A2、A3、...
- 在java中,到达A1后,我会要求用户根据Ni做一些选择,然后去一个类型A > 子项基于功能的选择。比如如果N1=true,N2=true,N3=false,我去A2,否则,我转到 A3。
顺便说一句,我会在我的程序中多次遇到这种情况。你们知道如何有效地实施它吗?
提前致谢。
【问题讨论】:
-
N2缺少您的图表;那是从顶部算起的第二个 N 节点还是其他什么? -
@fge 打错了,应该是N2。
-
是不是只能返回一个节点?如果没有节点或超过 1 个节点是选定 N 个节点的公共子节点怎么办?
-
@fge 是的,只会返回一个节点。我不太明白你的问题。实际上,拓扑不必是我的图。基本上,我想要的是让用户在 A 输入一些值,然后根据输入值转到子 Mi 之一。
-
好的,我不太了解neo4j,但是如果你使用
Set来收集第一个N 的孩子,那么你可以.removeAll() 来自第二个N 的孩子,等等剩下的应该是你的节点。不过,也许 neo4j 可以更有效地做到这一点。