Today's Internet-driven view of information systems is helping to popu
larize Java as an application development language. Developers are beg
inning to use Java to create multitier application architectures that
often integrate relational data stores with new data types, in order t
o package information in easier-to-use, dynamic ways. Java's object-or
iented nature is ideally suited to this new world. Using objects, Java
developers can encapsulate both data and data manipulation methods to
give applications a runtime dynamism and self-contained intelligence
that is difficult to achieve using other methods. Java application dev
elopers need to be able to store these Java objects-technically, to gi
ve them persistence-in order to take advantage of these capabilities.
In this article, we examine the development issues surrounding Java ob
ject storage, including a brief overview of the ODMG Java binding, a s
tandard that adds object persistence to Java. We compare this with the
much greater level of effort required to implement the same applicati
on using the lower level JDBC interface, which supports Java object st
orage in relational databases. The ODMG binding for Java and JDBC are
not competitive specifications: ODMG interfaces can be built on top of
JDBC.