Content deleted Content added
Sreejithwiki (talk | contribs) No edit summary |
m Moving Category:Object-relational mapping to Category:Object–relational mapping per Wikipedia:Categories for discussion/Speedy |
||
(87 intermediate revisions by 67 users not shown) | |||
Line 1:
{{Short description|Specification of Java object persistence}}
'''Java Data Objects''' ('''JDO''') is a specification of [[Java platform|Java]] [[object (computer science)|object]] [[persistence]]. One of its features is a transparency of the persistent services to the [[___domain model]]. JDO persistent objects are ordinary [[Java (programming language)|Java programming language]] [[class (computer science)|classes]]; there's no requirement for them to implement certain [[interface (Java)|interfaces]] or extend from special classes. JDO 1.0 was developed under the [[Java Community Process]] as [http://www.jcp.org/en/jsr/detail?id=12 JSR 12]. JDO 2.0 was developed under [http://www.jcp.org/en/jsr/detail?id=243 JSR 243] and was released on [[May 10|May 10th]], [[2006]].▼
{{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
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|date=October 2012}}. Secondly, JDO may work in the context of JEE [[Java transaction service|transaction services]].
== JDO vs. EJB3 vs. JPA ==
[[Enterprise
In the end, persistence has been "broken out" of "EJB3 Core", and a new standard formed, the [[Java Persistence API]] (JPA).
▲[[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.
Leading JDO commercial implementations and open source projects
▲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 work within a Java SE environment as well, as JDO always has. JPA however is an [[Object-relational mapping]] (ORM) standard, not a transparent object persistence standard like JDO, which from an API point of view is agnostic to the technology of the underlying datastore.
== New Features in JDO Version 2 Not Found In Version 1 ==
▲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.
* Standardized ORM
▲* Disconnected Object Graphs concept
▲* Standardized ORM Mapping Descriptors (for ORM-based JDO Implementations)
* JDOQL Enhancements (Single String Form; more String, Map & Math methods support mandated)
* Get e.g. a {{Javadoc:SE|java
* More: Named Queries (pm.newNamedQuery), FetchPlan, Sequence, Delete by Query, multiple User Objects on PM
* 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
* JDO 3.1 : [[DataNucleus]] AccessPlatform 3.2.0
* JDO 3.2 : [[DataNucleus]] AccessPlatform 5.2.0
== See also ==
* [[Object-relational mapping]]
* [[Object database]]
* [[
* [[
* [[ObjectDB]]
* ActiveJPA
==Bibliography==
{{refbegin}}
* {{cite book
| first1 = David
| last1 = Jordan
| first2 = Craig
| last2 = Russell
| date = April 22, 2003
| publisher = [[O'Reilly Media]]
| edition = 1st
| pages = 384
| isbn = 0-596-00276-9
| url = http://oreilly.com/catalog/9780596002763
}}
* {{cite book
| first1 = Sameer
| last1 = Tyagi
| first2 = Michael
| last2 = Vorburger
| first3 = Keiron
| last3 = McCammon
| first4 = Heiko
| last4 = Bobzin
| date = September 21, 2003
| publisher = [[Prentice Hall]]
| edition = 1st
| pages = 576
| isbn = 0-13-140731-7
| url = http://www.informit.com/store/product.aspx?isbn=0131407317
}}
* {{cite book
|first = David
|last = Ezzio
|date = June 6, 2003
|title = Using and Understanding Java Data Objects
|publisher = [[Apress]]
|edition = 1st
|pages = 456
|isbn = 1-59059-043-0
|url = http://www.apress.com/book/view/9781590590430
|access-date = February 8, 2010
|archive-date = December 23, 2010
|archive-url = https://web.archive.org/web/20101223171047/http://apress.com/book/view/9781590590430
|url-status = dead
}}
{{refend}}
== External links ==
* [http://www.jcp.org/en/jsr/detail?id=12 JDO 1.0 specification]
* [http://
* [http://
* [http://
* [http://db.apache.org/jdo/specifications.html JDO 3.0 specification]
▲=== Implementations ===
{{Authority control}}
[[Category:Object–relational mapping]]
[[Category:Java enterprise platform|Data Objects]]
[[Category:Java specification requests|Data Objects]]
[[Category:Java APIs]]
▲[[de:Java Data Objects]]
▲[[ja:Java Data Objects]]
|