我有公司登录并与其他公司建立了债务关系。 我想询问谁创建了关系(获取关系中的第一个节点)
我这样做
ExecutionEngine engine = new ExecutionEngine(graphDB);
ExecutionResult result = engine.execute( "start n=node(*) match n-[r]->() return distinct n.name");
当我这样做时
out.println("Companies that have entered data "+result.toString());
我得到了我想要的东西,但现在我需要以正确的方式为我的servlet显示它。我目前这样做
Iterator<Node> list_companies = result.columnAs("n.name");
while(list_companies.hasNext()){
Node compan = list_companies.next();
out.println(compan.getId()+" "+compan.getProperty("name"));
}
我没有结果。我的节点有属性名称,税号和电子邮件。 我认为正确的方法是解析
result.toString()
删除“| + --- ||”......
答案 0 :(得分:3)
如果您要返回n.name,那么您将返回一个属性而不是Node:
Iterator<Node> list_companies = result.columnAs("n.name");
最有可能是:
Iterator<String> list_companies = result.columnAs("n.name");
while(list_companies.hasNext()){
String compan = list_companies.next();
out.println(compan);
}
如果你想要id和name属性,那么你可以返回不同的n然后它就像你的例子中的Node迭代器一样。