Loading...
Posts on the
Design Decomposition Blog
Iridium Satellite Collision in Space
You might have seen the recent news reports about the collision between U.S. and Russian communication satellites. The U.S. satellite was one of the Iridium satellites. What wasn’t reported and you probably don’t know is that an object database management system (ODBMS) is an important part of the Iridium system. Even though ODBMSs are a [...]
February 13, 2009
(The Acronym) SOA is (Perhaps) Dead (at Some Companies); Long Live Services
I am now also posting on the Cutter Blog. My initial posting is (The Acronym) SOA is (Perhaps) Dead (at Some Companies); Long Live Services. It is a response to Anne Thomas Manes’ SOA is Dead; Long Live Services on her blog at the Burton Group.
January 9, 2009
Atomicity
The typical definition of an atomic task or process is one that cannot be decomposed further. This is vague and subject to interpretation. The Decomposition Matrix on this site uses a specific definition: A task (for business process diagrams) or a process (for data flow diagrams) is atomic if every input relates to every output [...]
December 3, 2008
Well-Formed Business Process Diagrams
My last posting referenced the criteria for a well-formed business process diagram mentioned in Business Process Driven SOA using BPMN and BPEL by Matjaz B. Juric and Kapil Pant. I am going to expand on their criteria to create a more comprehensive definition of a well-formed business process diagram. To start, here are three criteria [...]
November 18, 2008
Recent Business Process Modeling Books
I recently received two new books on business process modeling. Both books looked interesting because they had great titles. As it turns out, one book is great and the other not so good. The not so good book is Business Process Driven SOA using BPMN and BPEL by Matjaz B. Juric and Kapil Pant. There [...]
October 9, 2008
The Design Decomposition Blog
is written by Doug Barry.
Loading...
Java Data Objects (JDO)

The Java Data Objects (JDO) specification is part of the Sun Java Community Process. JDO is a Java application program interface (API) for transparent persistence. It works with both object and relational databases as well as other types of systems. It is designed to also work well with EJB and J2EE.

The JDO object model is determined by a set of Java classes and XML metadata file. The metadata file contains modeling directives that either override the semantics specified in Java or provides semantics that cannot be expressed in Java. An enhancer is provided that enhances the Java classes based on these modeling directives.

The JDO specification provides a standard interface for accessing, storing, and processing persistent objects. The primary aspects in the JDO model are:

  • PersistenceManager: PersistenceManagers negotiate accesses, transactions, and queries between applications and the underlying data store. More on the JDO PersistenceManager (new window).
  • Transaction: Transactions provide for atomic, consistent, isolated, and durable management of data (ACID properties). More on ACID properties (new window).
  • Query: The JDO Query Language (JDOQL) allows users to search for persistent objects matching specific criteria. JDOQL is meant to be query language neutral so that the underlying query language could be SQL, an object database query language such as OQL, or a specialize API to a hierarchical database or EIS system. More on the JDO Query Language (new window).
  • PersistenceCapable classes: The actual entities that are stored and fetched. There are three identity models to allow for different underlying database management systems. More on JDO identity models (new window).

The JDO specification uses the Java  language as much as possible, which allows the transparent integration of Java. This is illustrated by the following diagram and contrasts with the database sublanguage of SQL and its variants. In this diagram, you only see the host programming language and no database sublanguage or call-level interface as in JDBC.

Transparent integration of programming languages and database access

An example of a host statement in Java that creates a new Person instance would be:

person = new Person();
person.ssan = "999999999";
person.name = "Doug Barry";

This code fragment would be all the code necessary to create a new person. There is no database sublanguage or call interface. If you wanted to manipulate this object in Java, you could use the object directly. Also see transparent persistence vs. JDBC call-level interface (new window).

For more information on transparent persistence, see:

For examples of JDO code, see

>>
For an architectural example of how JDO can be used, see using JDO with application servers (new window).
>>
For more details, see the JDO Specification Sun site (new window).

Related content for: Java Data Objects (JDO)

More detail for the current topic: Java Data Objects (JDO)

More on the general topic: DBMS standards

Read more free articles on this site

There are nearly 400 pages of articles on this site with over 40 pages on database concepts and standards.

Search this site for more articles

Custom Search

Browse this site for more articles

Click on the topics below to browse the articles on this site. You can see more detail by clicking on the arrows. This highlights the location of the current article: Java Data Objects (JDO).

Loading...

Related recent articles from Google News

San Francisco JUG Gets Two Day Session on Java EE 6 & GlassFish
System News
The next two sections of Gupta's talk deal with Java Server Faces 2.0 and Java Persistence API 2, then turns to Bean validation and JAX-RS 1.1, ...

1 Sep 2010 at 11:13pm
Learn to develop Java EE 6 applications using Packt's new GlassFish 3 book
Online PR News (press release)
Online PR News – 11-August-2010 – Written by David Heffelfinger, this book will enable readers to specialize in all major Java EE 6 APIs, including new ...
and more »
12 Aug 2010 at 3:46pm
How-To: Cloud Storage with Amazon SimpleDB
Enterprise Storage Forum
"Behind the scenes, many relational frameworks today implement the Java Persistence API. This makes modeling domain objects for almost any type of Java ...
and more »
9 Aug 2010 at 7:57am
JavaOne 2010 Technical Session on Scala and Clojure Canceled
Java World
These include (but are not limited to) "Java Puzzlers: Scraping the Bottom of the Barrel" (S314408), "Java Persistence API (JPA) 2.0 with EclipseLink" ...

13 Aug 2010 at 2:16am
Updated Oracle Enterprise Pack for Eclipse Aimed at Java Jocks
T.H.E. Journal
The Enterprise Pack itself is a set of free Eclipse-based plugins designed to allow developers to build Java EE and Web Services apps for Fusion Middleware. ...
and more »
11 Aug 2010 at 5:52pm
More related news on: Java JDO OR "Java Data Objects" OR "Java persistence"

Related books at Amazon.com

Object-oriented Data Structures Using Java
Object-oriented Data Structures Using Java
by Nell B. Dale
Average Customer Review: 3.5 stars based on 6 reviews.
Customer Review: This seller was very punctual with the shipping and delivery of the book and it was in very good condition like the ad had stipulated. I will recomment him to anyone ST
Data Structures and Other Objects Using Java (3rd Edition)
Data Structures and Other Objects Using Java (3rd Edition)
by Michael Main
Average Customer Review: 4 stars based on 17 reviews.
Customer Review: Even after taking a mid-level CS course where this book was the required text, this book still sits on my bookshelf at work for reference. Why? Well, certainly it is not the most comprehensive book of data structures in existence, nor is it written with a scholarly tone. But, that's the point! Michael Main's writing has the air of a...
Objects, Abstraction, Data Structures and Design: Using Java version 5.0
Objects, Abstraction, Data Structures and Design: Using Java version 5.0
by Elliot B. Koffman, Paul A. T. Wolfgang
Average Customer Review: 4 stars based on 5 reviews.
Customer Review: A reader wrote that, "this book fails to address concurrency issues". But the books title never commits this. It's about teaching data-structures using Java (correctly). And it exactly does this with great success. Although I read it to refresh my knowledge, I enjoyed a lot as I learn the subject first time. It's CS for beginners, bu...
More related books: Search Amazon.com for Java Data Objects