Eclipse JNoSQL is a Java framework that streamlines the integration of a Java application with the NoSQL database. It defines a set of APIs to interact with the NoSQL database and provides a standard implementation for most NoSQL databases. This clearly helps to achieve very low coupling with the underlying NoSQL technologies used in applications.

The project has two layers:

Communication API: These are set to APIs that define communication with NoSQL database. In the traditional RDBMS world, these can be compared with JDBC APIs. This API set contains four modules with each one representing a NoSQL database storage type like Key-Value pair, Column Family etc.

Mapping API: These are the APIs that help developers integrate their Java application with the NoSQL database. This layer is annotation-driven and uses technologies like CDI and Bean Validations to make it simpler for developers. In the traditional RDBMS world, this layer can be compared to JPA or ORM frameworks.

A Standard Easy-to-Use Extension

This particular behavior in a NoSQL database matters — that why the API is extensible.

Modules

The modules project was the most impacting change in the project, so each type has a particular module. Also, there're the bean validation module and configuration, when you would like to read configuration from either XML or JSON by @ConfigurationUnit annotation.

New Extensions to Capture Particular Behavior From a NoSQL Database

The core concept of JNoSQL is basically that it has a common API; however, an extensible one would make it easier to use specific behavior because this really matters in a NoSQL world. There are new features to Cassandra, ArangoDB, Hazelcast, and OrientDB database. In this version, there is support for AQL, Arango Query language, within JNoSQL.

List<Person> people = graphTemplate.getTraversalVertex().limit(2).<Person>stream()
.collect(toList());//limit by 2 elements
List<Person> people = graphTemplate.getTraversalVertex().range(1,3).<Person>stream()
.collect(toList());//a range of one inclusive and three exclusive

Loop:

In the graph query, there're two ways to make a loop; the first one defines times to repeat an operation and repeats the process until the condition is accurate.