我正在尝试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();
我们如何从GraphDatabaseService
或driver
实例或其他方式获取session
实例,以便我们可以使用本地运行的neo4j服务器实例?或者我们只能在嵌入式neo4j数据库中使用遍历api?
答案 0 :(得分:1)
GraphDatabaseService
来自Neo4j的内部Java API。
因此,要获得它,您应该在数据库端(而不是在客户端/驱动程序端)。
司机只会说Cypher(不是Java)。
为此,许多示例直接在Java代码中创建嵌入式数据库,因此他们可以访问该服务。
另一个解决方案是创建一个可以在Cypher中调用的Java过程。请查看此文档:http://neo4j.com/docs/developer-manual/current/extending-neo4j/procedures/