Hibernate - Overview

Hibernate is an Object-Relational Mapping (ORM) solution for JAVA. It is an open source persistent framework created by Gavin King in 2001. It is a powerful, high performance Object-Relational Persistence and Query service for any Java Application.

Hibernate maps Java classes to database tables and from Java data types to SQL data types and relieves the developer from 95% of common data persistence related programming tasks.

Hibernate sits between traditional Java objects and database server to handle all the works in persisting those objects based on the appropriate O/R mechanisms and patterns.

Hibernate Position

Hibernate Advantages

  • Hibernate takes care of mapping Java classes to database tables using XML files and without writing any line of code.

  • Provides simple APIs for storing and retrieving Java objects directly to and from the database.

  • If there is change in the database or in any table, then you need to change the XML file properties only.

  • Abstracts away the unfamiliar SQL types and provides a way to work around familiar Java Objects.

  • Hibernate does not require an application server to operate.

  • Manipulates Complex associations of objects of your database.

  • Minimizes database access with smart fetching strategies.

  • Provides simple querying of data.

Supported Databases

Hibernate supports almost all the major RDBMS. Following is a list of few of the database engines supported by Hibernate −

  • HSQL Database Engine
  • DB2/NT
  • MySQL
  • PostgreSQL
  • FrontBase
  • Oracle
  • Microsoft SQL Server Database
  • Sybase SQL Server
  • Informix Dynamic Server

Supported Technologies

Hibernate supports a variety of other technologies, including −

  • XDoclet Spring
  • J2EE
  • Eclipse plug-ins
  • Maven