例如,我有几个朋友有标签,如老师,医生,歌手。我怎样才能得到所有老师朋友?我可以通过Cypher实现我的目标,但我想要更有效的方法,如Java-api函数。
我的意思是我想从节点“I”获取所有节点,所以以下方式对我不起作用
GlobalGraphOperations.at(graphDb).getAllNodesWithLabel(DynamicLabel.label('teacher'));
任何人都可以给我一些建议。
答案 0 :(得分:2)
这个怎么样:
Node me = graphDb.findNodesByLabelAndProperty(DynamicLabel.label("Person"), "name", "Me")
for(Relationship rel : me.getRelationships(Direction.OUTGOING, DynamicRelationshipType.withName("KNOWS")) {
System.out.println("My teacher friend: " + rel.getEndeNode());
}
这相当于这个Cypher
MATCH (me:Person {name:"Me"})-[:KNOWS]->(teacher) RETURN teacher