我正在尝试将 Java API 用于 Neo4j,但我似乎被困在 IndexHits 中。如果我使用 Cypher 查询数据库
START n=node:types(type="Process") RETURN n;
我得到了“进程”类型的所有 2087 个节点。
在我的应用程序中,我有以下几行
Index<Node> nodeIndex = db.index().forNodes("types");
IndexHits<Node> hits = nodeIndex.get("type", "Process");
System.out.println("Node index size: " + hits.size());
这导致我的控制台吐出一个值 0。这里, db 当然是GraphDatabaseService
.
我期望一个包含所有 2087 个节点的对象。我究竟做错了什么?
这个.size()
问题只是我迭代器的前奏
for(Node process : hits) { ... }
但是当 hits.size() == 0 时这并不多。根据http://api.neo4j.org/1.9.2/org/neo4j/graphdb/index/IndexHits.html这应该是可能的,只要有中的东西hits
。
在此先感谢您的帮助。