- | Java to SQL mapping (object/relational) automates Java persistence into any relational database server using JDBC |
- | Java to SQL mapping uses an XML document to specify the mapping textually, and provides an API to specify them programatically |
- | Supports one-one and one-many relation types, SQL/Java inheritance, object graph to single row mapping, and multiple column primary keys and automatic type conversion |
- | Optimistic and pessimistic locking modes, in-memory concurrency engine, and dead-lock detection |
- | Provides support for EJB 1.1 CMP entity beans (release 0.9) and CMP finder declaration using OQL |
- | Efficient implementation incurs little overhead compared to direct JDBC access |
- | Support for JTA transaction demarcation, inclusion as resource in transactional environment, and JDBC connection pooling (release 0.9 integrated with Tyrex) |
- | Cache control at JDO configuration and mapping file specification - no-cache option, cache object limit, cache time limit, LRU removal deamon |
- | New architecture separating the responsibility of the CacheEngine from that of the persistent object, in order to better support relations (especially many-many) and better handle dependency object commits. |
- | Multi column primary keys and contained objects. |
- | Mapping file supporting object dependency and relations. |
- | Serializable field type |