DataNucleus Access Platform
DataNucleus Access Platform is an open source, freely distributed and platform-independent software that provides data persistence and retrieval to various of data stores using various APIs, with a range of query languages.
Supported APIs, datastores and query languages
Among the supported APIs (Application Programming Interfaces), we can mention JDO (JDO1, JDO2, JDO2.1, JDO2.2, JDO3, JDO3.1) and JPA (JPA1, JPA2, JPA2.1). Supported datastores include RDBMS, db4o, LDAP, Excel, XML, NeoDatis, and JSON.
On the other hand, DataNucleus Access Platform supports various query languages, including JDOQL, JPQL, SQL, db4o Native, NucleusSQL, and NeoDatis Criteria. If you want JDO3.x and JPA2.0 you should use DataNucleus version 4.x, and if you want JDO3.x and JPA2.1 you should use DataNucleus version 3.x.
Includes a wide variety of extensions
Thanks to its powerful plugin architecture, DataNucleus Access Platform’s default functionality can be easily extended through extensions. A wide variety of extensions are available on the project’s website (see link at the end of the article), where you can see information about each one.
Among these, we can mention Java types, Level 1/2 cache, annotations, JTA locator, ClassLoader resolvers, store manager, XML MetaData handler, value generator, JMX management, autostart mechanisms, persistence properties, and connection factory.
Additionally, the query language, identity string translator, datastore identity, XML metadata entity resolver, type converters, store manager, member annotation handler, identity key translator, query cache, query methods and class annotation handler extensions are also available.
Under the hood and supported operating systems
Being written in the Java programming language, DataNucleus is independent of an operating systems, as it supports GNU/Linux, BSD, Solaris, Microsoft Windows and Mac OS X operating systems. Both 64-bit and 32-bit computer platforms are supported at this time.