4

我正在尝试 neo4j 遍历 api。所有在线示例都与GraphDatabaseService实例一起使用,traversalDescription()然后使用它来定义遍历模式。

但是在线示例(例如这个)用于从嵌入式数据库/数据库文件GraphDatabaseFactory中获取实例:GraphDatabaseService

GraphDatabaseService graphDb = new GraphDatabaseFactory().newEmbeddedDatabase("/tmp/neo4j/");

我想将它与本地运行的 neo4j 服务器实例一起使用。通常我通过调用sessionopbtained 实例上的方法来做到这一点,如下所示:

Driver driver = GraphDatabase.driver( "bolt://localhost", AuthTokens.basic( "neo4j", "password" ) );
session session = driver.session();

我们如何GraphDatabaseServicedriversession实例或通过其他方式获取实例,以便我们可以使用本地运行的 neo4j 服务器实例?还是我们只能在嵌入式 neo4j 数据库中使用遍历 api?

4

1 回答 1

2

GraphDatabaseService来自 Neo4j 的内部 Java API 。因此,要获得它,您应该在数据库端(而不是在客户端/驱动程序端)。

驱动程序只会说 Cypher(不是 Java)。

为此,许多示例直接在 Java 代码中创建了一个嵌入式 DB,因此它们可以访问该服务。

另一种解决方案是制作一个可以在 Cypher 中调用的 Java 过程。看看这个文档: http: //neo4j.com/docs/developer-manual/current/extending-neo4j/procedures/

于 2017-02-13T12:15:59.920 回答