Working with object-oriented software and a relational database can be cumbersome and time consuming in todays enterprise environments. Hibernate is an object/relational mapping tool for Java environments. The term object/relational mapping (ORM) refers to the technique of mapping a data representation from an object model to a relational, SQL-based structure.
Hibernate not only takes care of the mapping from Java classes to database tables, but also provides data query and retrieval facilities and can significantly reduce development time otherwise spent with manual data handling in SQL and JDBC. Hibernates goal is to relieve the developer from 95 percent of common data persistence related programming tasks.
If you are new to Hibernate and Object/Relational Mapping or even Java, please follow these steps:
Read Chapter 1, Quickstart with Tomcat for a 30 minute tutorial, using Tomcat.
Read Chapter 2, Architecture to understand the environments where Hibernate can be used.
Have a look at the eg/ directory in the Hibernate distribution, it contains a simple standalone application. Copy your JDBC driver to the lib/ directory and edit src/hibernate.properties, specifying correct values for your database. From a command prompt in the distribution directory, type ant eg (using Ant), or under Windows, type build eg.
Use this reference documentation as your primary source of information.
FAQs are answered on the Hibernate website.
Third party demos, examples and tutorials are linked on the Hibernate website.
The Community Area on the Hibernate website is a good source for design patterns and various integration solutions (Tomcat, JBoss, Spring, Struts, EJB, etc.).
An offline version of the Hibernate website is distributed with Hibernate in the doc/ subdirectory.
If you have questions, use the user forum linked on the Hibernate website. We also provide a JIRA issue trackings system for bug reports and feature requests. If you are interested in the development of Hibernate, join the developer mailing list.