Developing applications is, in general, a complicated task, involving many components. Developing all of these components can be very time consuming.
The Java Data Objects API (JDO) was designed to alleviate some of this time spent, providing an API to allow java developers to persist object-oriented
data into any database, and providing a query language using the same Java syntax as the developer is already familiar with.
DataNucleus JDO provides an implementation of this JDO standard, allowing you, the user, to persist your
object-oriented data to not only the RDBMS datastores the standard was intended for, but also to a wide range of other datastores.
These include popular map stores such as Cassandra and HBase, the Neo4j graph store, spreadsheets in Excel or OpenDocument formats,
JSON formatted Amazon and Google Storage options, the popular MongoDB JSON-like document store, as well as ubiquitous LDAP and more besides.
DataNucleus doesn’t purport to be the best solution to every problem.
For example, where you want to bulk persist large amounts of data then other solutions that get closer to the datastore API would be more appropriate.
Where you want to tailor the precise query sent to the datastore to take advantage of some datastore-specific feature is another situation
in which you may find a hand-crafted solution more appropriate.
That said, the range of capabilities of DataNucleus JDO cover a wide range of use-cases, the barrier to entry for use of DataNucleus is very low.
You do not need to necessarily be an expert in all features of the chosen datastore to use it. It shields you from the majority of the
more routine handling, whilst still letting you have a high degree of control over its behaviour and we hope that you benefit from its features.