Java 全局图操作提供的是节点代理,而不是节点

Java 全局图操作提供的是节点代理,而不是节点,java,label,neo4j,Java,Label,Neo4j,运行此代码 String DB_PATH = "path/to/data/graph.db" GraphDatabaseService graphDb = new EmbeddedGraphDatabase(DB_PATH) for(Node _node: GlobalGraphOperations.at(graphDb).getAllNodesWithLabel(DynamicLabel.label('Label_Name'))) { //Do Stuff } 但是,这应该不会返回任何

运行此代码

String DB_PATH = "path/to/data/graph.db"
GraphDatabaseService graphDb = new EmbeddedGraphDatabase(DB_PATH)
for(Node _node: GlobalGraphOperations.at(graphDb).getAllNodesWithLabel(DynamicLabel.label('Label_Name')))
{
   //Do Stuff
}

但是,这应该不会返回任何内容(其中还没有标签)。此外,它返回的不是节点,而是具有数据库中不存在的ID的NodeProxies。此查询是在新的Neo4j 2.0 M3数据库上运行的。有什么想法吗?谢谢

你说它不应该返回任何东西。。。它返回了什么?你期望它返回什么?请记住,它还考虑了当前事务中的所有和任何更改

从GraphDatabaseService和friends(包括GlobalGraphOperations)返回的所有节点都是NodeProxy对象,但这并不重要。返回的是实现节点接口的对象,这些对象包含处理数据库中数据所需的所有内容