我对在OrientDB中将Gremlin API与Java结合使用存在疑问。
因此,我创建了一个GremlinPipeline
对象,从该管道对象中我想跳到下一个顶点:
GremlinPipeline pipe = new GremlinPipeline();
pipe.start(graph.getVertex("#18:0"));
pipe.out();
输出:
v(TokenClass)[#19:0]
v(TokenClass)[#19:1]
v(TokenClass)[#19:2]
使用此代码,就我而言,它返回三个顶点,到目前为止是完美的。现在,我想再次遍历每个返回的顶点,并将每个结果保存在单独的List中。
我该如何实施?
我是否为每个顶点创建了一个新的GremlinPipeline
对象,还是有一个嵌套的GremlinPipeline
函数?
非常感谢
Sedir Mohammed
答案 0 :(得分:0)
好的,这是我网站上的误会。 GremlinPipeline
返回Vertex
个对象。关键在于,如果我们要开始一个新的GremlinPipeline
,我们只需要返回的顶点之一,所以我们不需要对OrientDB进行新的调用来检索所需的顶点。我们已经有Vertex
个对象来开始新的GremlinPipeline
。例如,它看起来像这样:
GremlinPipeline pipe = new GremlinPipeline();
pipe.start(graph.getVertex("#18:0"));
pipe.out();
List<Vertex> currentTokenList = pipe.toList();
for (Vertex currentToken : currentTokenList) { //with the currentToken we can start a new GremlinPipeline
System.out.println("aktuelles Token " + currentToken);
GremlinPipeline pipe2 = new GremlinPipeline();
pipe2.start(currentToken);
pipe2.out();
List<Vertex> currentRIDList = pipe2.toList();
for (Vertex ridVertex : currentRIDList) {
System.out.println(ridVertex);
}
}