Persistent Java objects simplify the storage and exchange of complex object structures. Poet Software's FastObjects j2 is a pure Java implementation of an object database management system (ODBMS). It supports RAM-based, disk-based, and remote databases. The 450-kbyte footprint makes FastObjects j2 ideal for embedded Java applications (see the figure).
An ODBMS streamlines the movement of objects to and from a storage device. A developer must bind new objects to a database, or load stored objects from a database. Then, the ODBMS transparently handles database updates.
This update process is simple if a persistent object contains simple information, such as integers. It becomes much more complicated when an object references other objects that also require storage in the database. Indirect access to referenced information is transparent with respect to the application.
Building a comparable system from scratch is a significant endeavor. Like a conventional DBMS, an ODBMS must support transactions, concurrency controls, and multithreaded support. FastObjects j2 does this, in addition to supporting import and export using XML. The FastObjects j2 API uses the Object Data Management Group (ODMG) Java Binding definitions.
A pure Java implementation has the advantage of working with any compatible Java environment. FastObjects j2 supports the Java 2 Standard Edition (J2SE) and the Micro Edition (J2ME), which often is the basis for embedded Java environments.
More information is available at www.fastobjects.com.