Skip to content

3.4.1

Compare
Choose a tag to compare
@Wolfgang-Schuetzelhofer Wolfgang-Schuetzelhofer released this 19 Jul 15:28
· 57 commits to master since this release

Features:

  • Access to Neo4j databases

    You can access Neo4j databases in a uniform way, no matter if you access a remote database, an embedded database, or an in-memory database, the only difference is in the initialization part
  • Query-DSL: Fluent API to formulate JCypher expressions in order to query a Neo4J database;
  • A Generic Graph Model which is easily navigable and modifyable.
  • Mapping of complex business domains to domain graphs
  • Domain Queries Part 1 - Predicate Expressions

    Domain Queries provide the power and expressiveness of queries on a graph database, while being formulated on domain objects or on types of domain objects respectively.
  • Domain Queries Part 2 - Traversal Expressions.
  • Domain Queries Part 3 - Collection Expressions (SELECT, REJECT, COLLECT, UNION, INTERSECTION).
  • Improved support for multiple domains in a single database.
  • Domain Query Concatenation.
  • Basic authentication and authorization.
  • Transaction API.
  • Generic Domain Model.
  • Concurrency support for multi client access to the graph database - optimistic locking.
  • Concurrency support - thread-safe invocation of 'IDomainAccess' an domain queries.
  • JSON Facade in preparation to access JCypher features from other, possibly remote, systems.
  • Store domain queries with the domain.
  • Use parameters with Query DSL Expressions.

Note: JCypher releases are deployed on Maven Central. You can download binaries and other artifacts from there.

Note: You need the javax.json-api, as well as an implementation e.g. from project glassfish on your classpath. One possible download source: http://www.java2s.com/Code/Jar/j/Downloadjavaxjson10jar.htm.
To access remote databases, you furthermore need a REST client API implementation, e.g. 'Jersey' from project glassfish, on your classpath.
To access embedded and in-memory databases, you need the appropriate Neo4j '.jar' files on your classpath.
(You can find all required dependencies listed in the pom.xml of the jcypher project.