Hibernate
Java object-relational mapping (ORM) library
Hibernate is a Java object-relational mapping (ORM) library that provides a framework for mapping an object-oriented domain model to a relational database.
Hibernate works really well for projects that have an impedance mismatch between the object model and the relational database model.
The Java Persistence API (JPA) is a Java specification for accessing, persisting, and managing data between Java objects / classes and a relational database. Hibernate is a JPA implementation.