Hibernate is an Object/Relational Mapper tool. It's very popular among Java applications and implements the Java Persistence API.
Hibernate ORM enables developers to more easily write applications whose data outlives the application process.
Key Features Include:
- JPA Provider: In addition to its own "native" API, Hibernate is also an implementation of the Java Persistence API (JPA) specification. As such, it can be easily used in any environment supporting JPA including Java SE applications, Java EE application servers, Enterprise OSGi containers, etc.
- Idiomatic persistence: Hibernate enables you to develop persistent classes following natural Object-oriented idioms including inheritance, polymorphism, association, composition, and the Java collections framework. Hibernate requires no interfaces or base classes for persistent classes and enables any class or data structure to be persistent.
- Scalable: Hibernate was designed to work in an application server cluster and deliver a highly scalable architecture. Hibernate scales well in any environment: Use it to drive your in-house Intranet that serves hundreds of users or for mission-critical applications that serve hundreds of thousands.
- Reliable: Hibernate is well known for its excellent stability and quality, proven by the acceptance and use by tens of thousands of Java developers.
- Extensibile: Hibernate is highly configurable and extensible It can be altered to best suit specific needs and requirements.
As an Object/Relational Mapping (ORM) framework, Hibernate is concerned with data persistence as it applies to relational databases (via JDBC).