- Tech know how online

Java data objects (JDO)

Java Data Objects (JDO) defines a transparent interface for the persistent storage of objects in the Java programming language. JDO is an industry standard and goes back to a specification from various companies such as Sun, Apple and IBM. Already in the year 2001 the specification of Sun as well as a corresponding reference implementation JPOX were made available. With the handover of the work to the Apache Project, Apache not only took over the general responsibility for the further development of JDO but also designated DataNucleus as the reference implementation. The corresponding information is available at the link below.

Besides JPOX there are several implementations with JDORI, OJB, SORM and TJDO. TDJO for example is such an open source implementation of the JDO standard. The query language JDOQL is also fully supported. JDO is a framework that is independent of a manufacturer or a specific platform. A simple and uniform use of arbitrary database and storage technologies is supported.

One speaks also of transparent Persistenz - as the illustration shows, the developer does not have to worry about Persistenz.

Transparent Persistence

Transparent Persistence

JDO was the first standardized specification that was independent of a data store and at the same time specifically designed for persistence of Java objects. Before that there were many other approaches like JDBC, Entity Beans, Object Databases or Object Relational Mapping tools. These lacked central features, simple handling and standardization. Thus there was in relatively short time a large acceptance for JDO. JDO was designed to be used in any context of distributed software. Essentially, JDO is tailored to local object models that are not tied to a specific application programming interface( API). However, JDO does not provide distributed objects, distributed transactions, or, in particular, security services.

Conceptually, JDO supports the following aspects:

  • Implementation independence. The protocol is specified exactly at runtime, and Java applications can interoperate with any JDO implementations.
  • Data store independence. The underlying data store is not recognizable from the application's point of view. The data model can have relational or object-oriented structures.
  • Transparent and transitive persistence. The handling of persistent and transient classes is identical. Data objects can be processed from the point of view of the application without knowledge (transparent) of the storage mechanisms.
  • XML metadata. Persistent class must be described in an XML file.
  • The JDO query language JDOQL. Its syntax is based on Java, but JDOQL is not as powerful as SQL and is primarily used for rough selection of objects.
  • Integration into J2EE architectures is possible due to compatibility with existing J2EE frameworks.
Englisch: Java data objects - JDO
Updated at: 03.11.2013
#Words: 425
Links: Java, interface (I/F), programming language (PL), standard (STD), Apple
Translations: DE

All rights reserved DATACOM Buchverlag GmbH © 2024