Neo4j embedded:使用图形算法过滤节点属性

Neo4j embedded: filter on node properties using graph algorithm

我正在使用从 eclipse 嵌入的 Neo4j,并希望在旅行和车站网络中导航。它们的连接方式如下:

(t:Trip)-[:STOPS {arrival:"10:12:00", departure:"10:13:00"}]->(s:Station)

由于一次旅行有多个停靠站,并且有多个旅行停靠在一个车站,所以有很多连接。有时,如果不换乘不同的行程,就无法从一个车站到达另一个车站。出于这个原因,我使用下面的图表算法

    PathFinder<Path> finder = GraphAlgoFactory.shortestPath(PathExpanders.forType(RelTypes.STOPS), depth);
    ArrayList<Path> path = (ArrayList<Path>) finder.findAllPaths(source,target);

但我找不到是否有方法可以过滤我的属性 arrivaldeparture,因为我只想查找在给定时间后出发的行程。

您需要使用 PathExpander 的自定义实现,而不是 PathExpanders.forType()

您的实施基本上会过滤 path.endNode().getRelationships(RelTypes.STOPS) 那些具有正确到达和离开属性的人。