Member Menu
 
 Monthly JBoss newsletter:
 
Hibernate Books
CaveatEmptor

Hibernate Core for Java

Project Lead: Steve Ebersole
Contributors: Gavin King, Max R. Andersen, Emmanuel Bernard,
Christian Bauer, Joshua Davis, David Channon, and others
Latest release: 3.3.0.SP1 (Changelog) (Road Map)
Release date: 2008.08.19
Requirements: JDK 1.4 or newer
Whitepapers: Hibernate PDF datasheet

Hibernate's goal is to relieve the developer from 95 percent of common data persistence related programming tasks, compared to manual coding with SQL and the JDBC API.

Hibernate Core for Java generates SQL for you, relieves you from manual JDBC result set handling and object conversion, and keeps your application portable to all SQL databases.

Hibernate provides transparent persistence, the only requirement for a persistent class is a no-argument constructor. You don't even need classes, you can also persist a model using Maps of Maps, or just about anything else. You don't even need tables, Hibernate can map entities and particular properties to SQL expressions.

Hibernate offers sophisticated query options, you can write plain SQL, object-oriented HQL (Hibernate Query Language), or create programatic Criteria and Example queries. Hibernate can optimize object loading all the time, with various fetching and caching options.

Hibernate adapts to your development process, no matter if you start with a design from scratch or work with an existing database, and it will support any application architecture. Combined with Hibernate EntityManager and Hibernate Annotations you can use Hibernate as a certified Java Persistence provider.

Please read our Product Evaluation FAQ if you are planning a competitive analysis of Hibernate features. The most frequently asked questions about Hibernate's open source license are available as the LicenseFAQ.

If you are a first time user and like to develop an application with Hibernate, follow the guidelines to learn Hibernate for Java quickly.

Hibernate Core for Java key features:

  • Natural programming model - Hibernate supports natural OO idiom; inheritance, polymorphism, composition and the Java collections framework
  • Support for fine-grained object models - a rich variety of mappings for collections and dependent objects
  • No build-time bytecode enhancement - there's no extra code generation or bytecode processing steps in your build procedure
  • Extreme scalability - Hibernate is extremely performant, has a dual-layer cache architecture, and may be used in a cluster
  • The query options - Hibernate addresses both sides of the problem; not only how to get objects into the database, but also how to get them out again
  • Support for "conversations" - Hibernate supports both long-lived persistence contexts, detach/reattach of objects, and takes care of optimistic locking automatically
  • Free/open source - Hibernate is licensed under the LGPL (Lesser GNU Public License)
  • EJB 3.0 - Hibernate implements the Java Persistence management API and object/relational mapping options, two members of the Hibernate team are active in the expert group

Browse the full feature list:

© Copyright 2006, Red Hat Middleware, LLC. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc. [Privacy Policy]