Hibernate (Java)

From Wikipedia, the free encyclopedia

Hibernate
Developer: JBoss, Inc.
Latest release: 3.2.0 / October 16, 2006
Preview release: 3.2.0CR5 / October 04, 2006
OS: Cross-platform
Platform: Java
Use: ORM
License: LGPL
Website: www.hibernate.org

Hibernate is an object-relational mapping (ORM) solution for the Java language. It is free, open source software that is distributed under the GNU Lesser General Public License. It provides an easy to use framework for mapping an object-oriented domain model to a traditional relational database.

Contents

[edit] Feature summary

The purpose of Hibernate is to relieve the developer from a significant amount of common data persistence-related programming tasks. Hibernate adapts to the developer's development process, whether starting from scratch or from a legacy database.

Hibernate not only takes care of the mapping from Java classes to database tables (and from Java data types to SQL data types), but also provides data query and retrieval facilities and can significantly reduce development time otherwise spent with manual data handling in SQL and JDBC. Hibernate generates the SQL calls and relieves the developer from manual result set handling and object conversion, keeping the application portable to all SQL databases.

Hibernate provides transparent persistence for "Plain Old Java Objects"; the only strict requirement for a persistent class is a no-argument constructor, not compulsorily public. (Proper behavior in some applications also requires special attention to the equals() and hashCode() methods.[1])

Hibernate is typically used both in standalone Java applications and in Java EE applications using servlets or EJB session beans.

[edit] History

Hibernate was developed by a team of Java software developers around the world led by Gavin King.

JBoss Group (now part of Red Hat) later hired the lead Hibernate developers and worked with them in supporting Hibernate. This move brought Hibernate development under Java EE Specifications.

The current version of Hibernate is Version 3.x, which enriched the platform with new features like a new Interceptor/Callback architecture, user defined filters, and JDK 5.0 Annotations (Java's metadata feature). Hibernate 3 is also very close to the EJB 3.0 specification (although it was finished before the EJB 3.0 specification was released by the Java Community Process) and serves as the backbone for the EJB 3.0 implementation of JBoss.

[edit] See also

[edit] References

  • Christian Bauer, Gavin King: Java Persistence with Hibernate, Manning Publications Company, ISBN 1932394885
  • Christian Bauer, Gavin King: Hibernate In Action, Manning Publications Company, ISBN 1-932394-15-X
  • Will Iverson: Hibernate: A J2EE™ Developer's Guide, Addison Wesley Professional, ISBN 0-321-26819-9
  • James Elliott: Hibernate: A Developer's Notebook, O'Reilly, ISBN 0-596-00696-9

[edit] External links

Ports
Tools
  • Linguine Maps - Visualization library for Hibernate mapping files