This table shows a summary of the similarities and differences between the two approaches to transparent persistence: ODMG 3.0 and JDO. It is from a presentation at JavaOne by Heiko Bobzin of POET Software.
|Transparent Persistence||Transparent Persistence|
|Persistence by Reachability||Persistence by Reachability|
|Java, C++, and Smalltalk Language Bindings on top of ODMG object model||Tight integration with Java object model|
|Vendor specific interfaces||PersistenceCapable interface|
|Collection factory for five basic collections||Collection factory “by Example”, Second Class Objects|
|Object identity managed by database system||Three identity models (more on identiy models)|
|Objects live until transaction completes||Objects can live as long as PersistenceManager (more on persistence manager)|
|Objects can not be accessed after transaction completes||API allows the setting of properties|
|Callbacks not defined||Callbacks for load, store, delete, and clear|
|Databases and Transactions|
|Easy to use but proprietary database and transaction management||Databases, connections and transactions fit into other Java APIs|
|No distributed transactions defined||Support for distributed transactions|
|Vendor specific extensions for managed environments (EJB)||Support for managed environments (EJB)|
|Vendor specific extension for optimistic locking||Optimistic locking is optional API|
|Explicit locking of objects||No explicit locking -- locks set automatically|
|OQL: an extensive object query language||Queries based on Java programming language — JDOQL (more on JDOQL)|
|Complex query expressions||Simple filter strings|
|Results can be compositions, projections or just an integer||Results are always collections of persistence capable objects|
|Class name is part of query string||Class objects explicitly used as parameters|
|No imports or name scope||Imports, "this", named parameters|
This table, copyright ? 2001 FastObjects by Poet, used with permission.
For more information on transparent persistence, see:
- Transparent persistence for object databases
- Transparent persistence for relational databases using object-relational mapping products
For more information on ODMG 3.0 and JDO as well as other database specifications, see the related content below.
Context for Detailed Comparison of ODMG 3.0 and JDO
Related Articles for Detailed Comparison of ODMG 3.0 and JDO
The Savvy Manager's Guide
Douglas K Barry is also the author of a book that explains Web Services, service-oriented architecture, and Cloud Computing in an easy-to-understand, non-technical manner.
Web Services, Service-Oriented Architectures, and Cloud Computing: The Savvy Manager's Guide (Second Edition)
by Douglas K Barry with David Dick
This is a guide for the savvy manager who wants to capitalize on the wave of change that is occurring with Web Services, service-oriented architecture, and—more recently—Cloud Computing. The changes wrought by these technologies will require both a basic grasp of the technologies and an effective way to deal with how these changes will affect the people who build and use the systems in our organizations. This book covers both issues. Managers at all levels of all organizations must be aware of both the changes that we are now seeing and ways to deal with issues created by those changes.