有没有办法使用GraphAlgoFactory中的PathFinder和spring-data

时间:2016-05-17 07:41:24

标签: spring neo4j spring-data-neo4j-4 neo4j-ogm

我看了movies-java-spring-data-neo4j-4并且我喜欢它,但我想使用GraphAlgoFactory中的PathFinder和spring-data 4.1.1.RELEASE。

我想在我的数据库中创建某种路线图,并使用RestController查找两个给定节点之间的路径。 (基本上是这里的第二个(A *)示例:neo4j-docs-graph-algo

PathFinder<WeightedPath> astar = GraphAlgoFactory.aStar(
        PathExpanders.allTypesAndDirections(),
        doubleCostEvaluator, estimateEvaluator);
path = astar.findSinglePath(start, end);

findSinglePath需要一个org.neo4j.graphdb.Node的Object有没有办法从NodeEntity获取它?

我能找到的唯一方法是使用EmbeddedDriver并自己查找节点:

EmbeddedDriver embeddedDriver = (EmbeddedDriver) Components.driver();
GraphDatabaseService databaseService = embeddedDriver.getGraphDatabaseService();
Node node = databaseService.findNode(...)

是否有更简单的方法,最好是通过HttpDriver?

1 个答案:

答案 0 :(得分:0)

HTTP驱动程序不提供对底层图形数据库的访问。您可以编写存储过程并通过session / template / repository查询方法调用它。

以下是图算法存储过程的一些示例 - https://github.com/neo4j-contrib/neo4j-apoc-procedures/#graph-algorithms-work-in-progress