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
approved in June 2006 as part of "EJB3" though can be used outside of the J2EE container. A later
version (JPA2) was approved in December 2009.
JPA defines the interface that an implementation has to implement.
The whole point of having a
interface is that users can, in principle, swap between
implementations of JPA without changing their code.
JPA has the following principal areas.
This release of DataNucleus AccessPlatform requires JPA2. There is currently no official version
however there is an Apache 2 licensed version from Geronimo that included with AccessPlatform