Hibernate is an open source software that provides object-relational mapping library for the java language by mapping an object-oriented domain model to a traditional relational database with the help of a framework. Hibernate overcomes Object-Relational impedance mismatch problems by replacing direct persistence-related database accesses with high-level object handling functions. The latest version of Hibernate is 3.x which includes new features like a new Interceptor/Callback architecture, user defined filters and JDK 5.0 Annotations. Hibernate 3 is also much similar to EJB 3.0 specification.
Key Features of Hibernate:
Application programming interface: Java package org.hibernate provides hibernate API.
org.hibernate.SessionFactory interface: This interface refers to the immutable and threadsafe object to create new Hibernate sessions. Only applications having single instance of the class that implements this interface are developed by using this interface.
org.hibernate.Session interface: This interface is used if any time of manipulation is required on database entities. It also performs other tasks like managing the persistence state (such as transient, persisted, detached) of the objects, fetching the persisted data from the database and also manages demarcation of the transaction.
To know more about hibernate click on the link:
Recommend the tutorial