Search

About Hibernate

Hibernate is a high-performance Object/Relational persistence and query service. The most flexible and powerful Object/Relational solution on the market, Hibernate takes care of the mapping from Java classes to database tables and from Java data types to SQL data types. It provides data query and retrieval facilities that significantly reduce development time. Hibernate’s design goal is to relieve the developer from 95% of common data persistence-related programming tasks by eliminating the need for manual, hand-crafted data processing using SQL and JDBC.  However, unlike many other persistence solutions, Hibernate does not hide the power of SQL from you and guarantees that your investment in relational technology and knowledge is as valid as always.

Working with both Object-Oriented software and Relational Databases can be cumbersome and time consuming.  Development costs are significantly higher due to a paradigm mismatch between how data is represented in objects versus relational databases. Many software developers and architects estimate that up to 30% of their code is needed to deal with this infrastructure concern. Hibernate directly addresses this challenge by providing the ability to map an object model’s data representation to a relational data model and its corresponding database schema.

Hibernate is licensed under the open source GNU Lesser General Public License (LGPL) and is free to download and free to use for both development and production deployments. The license also allows ISVs to embed and distribute Hibernate free of charge.

Hibernate eliminates repetitive and tedious coding work and enables developers to focus on the business problem. No matter which application development strategy you prefer--starting top-down with a new business problem and model or bottom up with an existing database schema--Hibernate can significantly reduce development time and as a provider of Object/Relational persistence solution will significantly reduce lines of code.  Hibernate provides a buffer between the two data representations and enables a more elegant use of object orientation on the Java side--all while keeping the relational schema normalized and guaranteeing data integrity.