Java Persistence API (JPA)

JPA defines an interface to persist normal Java objects (or POJO's in some peoples terminology) to a datastore. JPA is tightly coupled to RDBMS datastores and so is currently of no use when you require an alternative type of datastore (such as XML, OODBMS, etc). JPA is a standard approved in June 2006 as part of "EJB3" though can be used outside of the J2EE container. JPA defines the interface that an implementation has to implement. The whole point of having a standard interface is that users can, in principle, swap between implementations of JPA without changing their code. There is a new version of JPA (JPA2) under discussion currently.

JPA has the following principal areas.

This release of DataNucleus AccessPlatform requires JPA1. You can find the official version (from SUN) of this in the AccessPlatform download, alternatively there is an Apache 2 licensed version from Geronimo that is also included. Both should work equally well.