图形数据库的新手,并尝试使用 Neo4j 博客中的示例在 Java 中创建 ACL:
问题出在提供的 ruby 代码中:
#Here's our function to check the distance between principals (and to see if they're on the same path at all).
def depth_of_principal( principal, reference_principal )
result = reference_principal.outgoing( :IS_MEMBER_OF_GROUP ).depth( :all ).path_to( principal )
return result.nil? ? nil : result.size
end
我应该在java中使用最短路径算法,还是我弄错了?将它移植到java的正确方法是什么?
PathFinder<Path> finder = GraphAlgoFactory.shortestPath(Traversal.expanderForTypes(RelTypes.IS_MEMBER_OF_GROUP, Direction.OUTGOING), maxDepth);
Path path = finder.findSinglePath(principal, referencePrincipal);
不适合的一件事是 maxDepth,但由于我的路径不会超过 15,我想应该可以吗?