Browse files

updated readme with current abilities and note on tx-semantics change

  • Loading branch information...
jexp committed Aug 14, 2012
1 parent b95f38c commit da16e453d0b3bbd79fa71db4dcbf6cb10a030e16
Showing with 29 additions and 18 deletions.
  1. +29 −18
@@ -1,20 +1,34 @@
The Java binding for the Neo4j Server REST API wraps the REST calls behind the well known
-[GraphDatabaseService]( API.
+[GraphDatabaseService]( API.
+**Please note**, that the performance semantics are not the same, as most of these operations will cause a network
+request to the server. Make sure to minimize the fine grained operations and rely more on cypher and traversals to get
+your data and on batching and cypher to update the graph.
+You can also use the `RestAPIFacade` directly to interact with your Neo4j-Server, without the GraphDatabaseService Wrapper.
+The behavior of "transactions" changed in 1.8, in 1.7 they were no-op, i.e. just ignored. So you could just leave them off to not confuse people.
+In 1.8 it tries to collect all operations within a tx as a batch-operation which will then be executed on the server.
+This has the implication that the results retrieved within that "tx" are not immediately available but only after you called tx.success and tx.finish
Currently supports:
* all the node and relationship operations
- * the new Index API
- * Basic Http Auth (Digest)
- * preliminary traversal support
- * cypher, gremlin support
- * support for batch API
+ * [cypher operations](
+ * [REST-batch operations](
+ * Basic Http Auth (Digest) (Important for using [Neo4j on Heroku](
+ * index creation and index operations (add, get, query, delete)
+ * (Auto Index configuration)[]
+ * limited [traversal API]( but with dynamic language support
* preliminary support for arbitrary server plugins and extensions
+ * gremlin support
-Open issues:
- * full traversal support
@@ -23,24 +37,21 @@ Build it locally. Then use the maven / ivy dependency or copy the jar into your
- <version>1.6.M02</version>
+ <version>1.8.M07</version>
GraphDatabaseService gds = new RestGraphDatabase("http://localhost:7474/db/data");
GraphDatabaseService gds = new RestGraphDatabase("http://localhost:7474/db/data",username,password);
+ // or using the RestAPI directly
+ RestAPI restAPI = new RestAPIFacade("http://localhost:7474/db/data",username,password);
+ // as a Spring Bean, e.g. in [Spring Data Neo4j](
<bean id="graphDbService" class="" destroy-method="shutdown">
<constructor-arg index="0" value="http://localhost:7474/db/data" />
-**Please note: Transactions are not supported over this API.**
-Unit Test:
-to start tests you will need the to cleanup the database while
References / Community:

0 comments on commit da16e45

Please sign in to comment.