Hibernate (Java)
From Wikipedia, the free encyclopedia
Hibernate | |
![]() |
|
Developer: | Red Hat |
---|---|
Latest release: | 3.2.2 / January 23, 2007 |
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 provides an easy to use framework for mapping an object-oriented domain model to a traditional relational database. Its purpose is to relieve the developer from a significant amount of relational data persistence-related programming tasks.
Hibernate is free as open source software that is distributed under the GNU Lesser General Public License.
Contents |
[edit] Feature summary
Hibernate adapts to the developer's development process, whether starting from scratch or from an existing database.
Hibernate's primary feature is mapping from Java classes to database tables (and from Java data types to SQL data types) and also provides data query and retrieval facilities. 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, with database portability delivered at very little performance overhead.
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 can be 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, Inc. (now part of Red Hat) later hired the lead Hibernate developers and worked with them in supporting Hibernate.
The current version of Hibernate is Version 3.x has 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 1-932394-88-5
- 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
- Hibernate Home Page
- Hibernate Sourceforge Summary
- Interview with Gavin King, founder of Hibernate
- The Road to Hibernate A learn-by-doing tutorial on the basics of Hibernate.
- First Hibernate example tutorial
- DB Visual Architect. ORM designer with UML Class Diagram and ERD.
- What is Hibernate?
- Ehcache (Java distributed cache used by Hibernate)
- Ports
- NHibernate Home Page - Port to the Microsoft .NET platform (written in C#).
- Tools
- Linguine Maps - Visualization library for Hibernate mapping files
- MyEclipse Hibernate Tool - Eclipse OR tool
- FireStorm/DAO - Generate Hibernate code from database schema
- HiberClipse Plugin - Hibernate roundtrip tool
- EasyEclipse Plugin - Edit Hibernate mappings and execute HQL queries