在neo4j中限制遍历特定深度

时间:2013-03-16 07:24:48

标签: java neo4j

考虑代码

int numberOfFriends = 0;
String output = neoNode.getProperty( "name" ) + "'s friends:\n";
Traverser friendsTraverser = getFriends( neoNode );
for ( Path friendPath : friendsTraverser )
{
output += "At depth " + friendPath.length() + " => "
          + friendPath.endNode()
                  .getProperty( "name" ) + "\n";
numberOfFriends++;
}
output += "Number of friends found: " + numberOfFriends + "\n";

这会给我们以下输出:

Thomas Anderson's friends:
At depth 1 => Trinity
At depth 1 => Morpheus
At depth 2 => Cypher
At depth 3 => Agent Smith
Number of friends found: 4

我想将搜索限制在深度2.我该怎么办?

1 个答案:

答案 0 :(得分:6)

使用

Traversal.description().evaluator(Evaluators.toDepth(2))