Java Data Objects: Difference between revisions

Content deleted Content added
Line 11:
[[Enterprise Java Beans]] 3.0 (EJB3) specification also covered persistence, as had EJB v2 with Entity Beans. There has been standards conflict between the two standards bodies in terms of pre-eminence. JDO has several commercial implementations.
 
In the end, persistence has been "broken out" of "EJB3 Core", and a new standard formed, the [[Java Persistence API]] (JPA). JPA uses the javax.persistence package, and is specified in a separate document within the EJB3 [http://www.jcp.org/en/jsr/detail?id=220 JSR 220]. Significantly, javax.persistence will '''not''' require an EJB container, and thus will work within a Java SE environment as well, as JDO always has. JPA, however, is an [[Object-relational mapping]] (ORM) standard, whilstwhile JDO is an [[Object-relational mapping]] standard '''and''' a transparent object persistence standard. JDO, from an API point of view, is agnostic to the technology of the underlying datastore, whereas JPA isn't being oriented around RDBMS datastores.
 
Leading JDO commercial implementations and open source projects will and some already are offering a JPA API implementation as an alternative access to their underlying persistence engines, formerly exposed via JDO only in the original products. There are many open source implementations of JDO.