Apache Cayenne

Cayenne binds one or more database schemas directly to Java objects, managing atomic commit and rollbacks, SQL generation, joins, sequences, and more.

Or, with native XML serialization, objects can be further persisted to non-Java clients—such as an Ajax-capable browser.

An entire database schema can be mapped directly to Java objects quickly, all from the comfort of the GUI-based CayenneModeler.

These things together make Cayenne interesting for a user who is new to the enterprise world.

Cayenne started as a project run by ObjectStyle and led by Andrus Adamchik.