想知道我是否可以使用Neo4j Java API连接到远程数据库,或者REST是我访问远程数据库的唯一方法吗?希望使用像
这样的东西GraphDatabaseService graphDb = new GraphDatabaseFactory().newEmbeddedDatabase(NEO_4J_REMOTE_DB_ENDPOINT);
如果我可以使用,我的端点会是什么样子? '/ db / data?
或者我必须使用REST吗?
我的服务器在GAE中运行,并且在Heroku中有一个Neo4j实例。
谢谢你们。
答案 0 :(得分:6)
REST是目前唯一具有服务器版本的通信协议。已经讨论过二进制协议,但是atm不存在。
但是,这个REST API有不同语言的几个层。对于Java,您可以在此处找到它:
https://github.com/neo4j/java-rest-binding
这允许您使用与嵌入式版本相同的API,但在后台将其转换为REST。功能有一些限制,它不是所有最新版本的最新版本,但从来没有那么简单,它的工作非常好,我总是和Heroku一起使用。
编辑:如果您正在使用maven,请添加此存储库 http://m2.neo4j.org/index.html ,然后将这些行添加到您的POM
<dependency>
<groupId>org.neo4j</groupId>
<artifactId>neo4j-rest-graphdb</artifactId>
<version>2.0.1</version>
</dependency>