0
Traversal APIを使用していますが、Traversal.expanderForTypes()は推奨されておらず、2つのノード間の最短経路を見つける方法がわかりません。Neo4j 3.1トラバーサルAPI、2つのノード間の最短経路を見つける方法
私の方法
public Iterable<Path> shortestPath(long firstNodeId, long secondNodeId) {
Node firstNode = null;
Node secondNode = null;
try (Transaction tx = mainServiceBean.getDatabaseService().beginTx()) {
firstNode = mainServiceBean.getDatabaseService().getNodeById(firstNodeId);
secondNode = mainServiceBean.getDatabaseService().getNodeById(secondNodeId);
PathExpander expander = Traversal.expanderForTypes();//?
PathFinder<Path> shortestPath = GraphAlgoFactory.shortestPath(expander, 4, 4);
tx.success();
return shortestPath.findAllPaths(firstNode, secondNode);
}
}
マイノードの都市と
このようなNode nodeACity = mainServiceBean.getDatabaseService().createNode(ProjectLabels.City);
nodeACity .setProperty(City.NAME, CityNames.ACiTY.name());
Node nodeBCity = mainServiceBean.getDatabaseService().createNode(ProjectLabels.City);
nodeBCity.setProperty(City.NAME, CityNames.BCity.name());
Relationship ab= nodeACity .createRelationshipTo(nodeBCity , NodesRelationship.DISTANCE_TO);
ab.setProperty("distance", 124.31);
Relationship ba= nodeBCity .createRelationshipTo(nodeACity , NodesRelationship.DISTANCE_TO);
ba.setProperty("distance", 124.31);
との関係だから、関係が値を持つプロパティの距離を持っています。
neo4j 3からのトラバーサルAPIはどのように使用できますか?多くの変更があるようだ。
を明示することができます:あなたは本当にNeo4j 3.1について話していますか?これはGAではなく、マイルストーン8はありません。または、あなたは、GAであるNeo4j 3.0.xを指していますか? –
はいそれは約3.0.xです –