如何获取本地运行neo4j服务器的GraphDatabaseService实例

时间:2017-02-13 11:48:51

标签: java neo4j neo4j-traversal-api

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

但是,在线示例(like this one)使用GraphDatabaseFactory从嵌入式数据库/数据库文件中获取GraphDatabaseService实例:

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

我想在本地运行的neo4j服务器实例中使用它。通常我通过调用session opbtained实例上的方法来执行此操作,如下所示:

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

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

1 个答案:

答案 0 :(得分:1)

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

司机只会说Cypher(不是Java)。

为此,许多示例直接在Java代码中创建嵌入式数据库,因此他们可以访问该服务。

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