Java Data Objects, or JDO, is a specification of Java object persistence. One of its features is a transparency of the persistent services to the domain model. JDO persistent objects are ordinary Java classes; there's no requirement for them to implement certain interfaces or extend from special classes.

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 are transparently persisted. Currently, JDO vendors offer several options for persistence, e.g. to RDBMS, to OODB, to files.

JDO enhanced classes are portable across different vendors' implementation. Once enhanced Java class can be used with any vendor's JDO product.

JDO is integrated with J2EE in several ways. First of all, the vendor implementation may be provided as a J2EE Connector. Secondly, JDO may work in the context of J2EE transaction services.

External links