This release contains a load of new documentation: a tutorial on
advanced o/r mapping techniques, a complete guide to the ojb
Lockmanagement, and a roadmap for planned development activities.
It is now possible to use JDK 1.3 Dynamic Proxies for lazy
loading. The implicit locking mechanism can now be configured.
A TestSuite for the Lockmanager has been written.
The new concept of RowReaders allows users to interact with object
materialization from ResultSet Rows. Mapping inheritance hierarchies on one
table is now supported. A Distributed persistent Lockmanagement has been
implemented. The LockManager, ObjectCache, SequenceManager, and
ConnectionFactory are now pluggable to support user extensions. MySQL and
PostgreSQL are now supported. A DDL Generator that produces DDL from XML
mapping files has been implemented. A JDNI/Datasource based ConnectionFactory
is now available for usage in J2EE Containers. SequenceNumbering is now
possible via declaration in the XML repository.
Many new features are included in this release. A PersistenceBroker server arcitecture has been designed, which allows you to run multiple clients against one or more loadbalanced server processes. This new architecture allows you to build highly scalable distributed applications with OJB - however, distributed Lockhandling is not finished yet. The project has been renamed to ObJectRelationalBridge, as the old name is trademark protected. Some major performance enhancements have also been made.
This release adds OQL parameter binding operation and OQL filter
operations in ODMG Collection, and a tutorial and a code example
covering Conversion Strategies. DListImpl, DBagImpl, DSetImpl,
DMapImpl, and the respective Iterators now provide remove() methods.
The __ prefix has been removed from the OJB internal tables, to allow
easier ports to Oracle, DB2, and other DBMS. To minimize the size of
serialized Identities, they are now GZIPed. The RsIterator methods
next() and hasNext() have been rewritten to work even with buggy JDBC
2.0 drivers. Creation and preparation of prepared Statements is now
compliant with JDBC 2.0 drivers for DB2 and Oracle. ojb.server has
been renamed to ojb.odmg to better reflect its content. The deletion
sequence for depended objects has been changed to prevent referential
integrity violations.