| • Science | • People | • Locations | • Timeline |
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 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.
The Enterprise Java Beans 3.0 (EJB3) specification also covers this same area. There has been standards conflict between the two standards bodies in terms of pre-eminence. JDO has several commercial implementations. EJB 3.0 is still under development. However, most recently another new standard has been announced by JCP to bring these two standards together and make the future standard something that works with various Java architectures.