Content deleted Content added
Mark Renier (talk | contribs) // clean up using AWB |
maintenance; style; wikified |
||
Line 1:
{{No footnotes|date=June 2010}}
'''Java Data Objects''' ('''JDO''') is a specification of [[Java platform|Java]] [[object (computer science)|object]] [[Persistence (computer science)|persistence]]. One of its features is a transparency of the
Object persistence is defined in the external [[XML]] metafiles, which may have vendor-specific extensions. JDO vendors provide developers with ''enhancers'', which modify compiled Java class files so they can be transparently persisted. (Note that byte-code enhancement is not mandated by the JDO specification, although it is the commonly used mechanism for implementing the JDO specification's requirements.) Currently, JDO vendors offer several options for persistence, e.g. to [[Relational database|RDBMS]], to [[Object database|OODB]], or to [[Computer file|files]].
JDO enhanced classes are portable across different vendors' implementation. Once enhanced, a Java class can be used with any vendor's JDO product.
JDO is integrated with [[Java Platform, Enterprise Edition|Java EE]] in several ways. First of all, the vendor implementation may be provided as a {{clarify-span|JEE Connector}}. Secondly, JDO may work in the context of JEE [[Java transaction service|transaction services]].
== JDO vs. EJB3 vs. JPA ==
Line 12:
[[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).
Leading JDO commercial implementations and open source projects also offer a JPA API implementation as an alternative access to their underlying persistence engines, formerly exposed solely via JDO in the original products. There are many open source implementations of JDO.
Line 18:
== New Features in JDO Version 2 Not Found In Version 1 ==
* Disconnected
* Standardized ORM
* JDOQL Enhancements (Single String Form; more String, Map & Math methods support mandated)
* Get e.g. a {{Javadoc:SE|java/sql|Connection}} from <code>javax.jdo.PersistenceManager</code>
Line 27:
* JDO 1.0 : FOStore
* JDO 2.0 : [[DataNucleus|JPOX]] 1.1
* JDO 2.1 : JPOX 1.2
* JDO 2.2 : [[DataNucleus]] AccessPlatform 1.0.1
* JDO 3.0 : DataNucleus AccessPlatform 2.1.0
|