Last updated March 25, 2011 11:39, by Samuel Le Berrigaud

Pure-Java Object Relational Mapping


ActiveObjects is an intuitive, pure-Java ORM. AO is designed from the ground up to be extremely simple and easy to use from an API standpoint. AO can be used with either an existing database schema, or it can auto-generate the database schema from the user-specified entity interfaces. ActiveObjects also supports Rails-style database migrations, allowing incremental changes and refactoring of the database schema without data loss.

ActiveObjects can be more performant than traditional, data mapper ORMs due to its natural use of lazy-loading coupled with sophisticated caching mechanisms. However, performance is not the primary design goal of the project. Rather, the intention is to create an ORM which is powerful and yet extremely natural to use and integrate into your project. This design has lead to certain performance benefits (such as lazy-loading), but on the whole, data mapper ORMs are inherantly slightly more performant than ActiveObjects can be just from a theoretical standpoint.


Preliminary releases (leading up to 1.0) will be made available on this site. These releases are for testing purposes only and should be considered to be unstable. Please report bugs using the issue tracker (JIRA) (requires a login).

Current release

The current release is 0.8.2 released on April 22nd, 2008.

Current milestone

The current milsetone is 0.9-m17.


All versions since 0.8.2 can be found in the downloads section of the project, older versions can be found at