Hibernate是数据持久层的一个轻量级框架。
Hibernate是一个高性能的对象关系型持久化存储和查询的服务。Hibernate不仅关注于Java类到数据库表的映射,也有Java数据类型到SQL数据类型的映射,另外也提供了数据查询和检索服务。
ORM 表示 Object-Relational Mapping (ORM),是一个方便在关系数据库和类似于 Java, C# 等面向对象的编程语言中转换数据的技术。一个 ORM 系统相比于普通的 JDBC 有以下的优点。
序号 | 优点 |
---|---|
1 | 使用业务代码访问对象而不是数据库中的表 |
2 | 从面向对象逻辑中隐藏 SQL 查询的细节 |
3 | 基于 JDBC 的 'under the hood' |
4 | 没有必要去处理数据库实现 |
5 | 实体是基于业务的概念而不是数据库的结构 |
6 | 事务管理和键的自动生成 |
7 | 应用程序的快速开发 |
Java ORM 框架
在 Java 中有几个持久化的框架和 ORM 选项。一个持久化的框架是 ORM 存储和索引对象到关系型数据库的服务。
Hibernate将Java类映射到数据库表中,从Java数据类型中映射到SQL数据类型中。
Hibernate是传统Java对象和数据库服务器之间的桥梁,用于处理基于O/R映射机制和模式的那些对象。
Hibernate 优势
- Hibernate 使用 XML 文件来处理映射 Java 类别到数据库表格中,并且不用编写任何代码。
- 为在数据库中直接储存和检索 Java 对象提供简单的 APIs。
- 如果在数据库中或任何其它表格中出现变化,那么仅需要改变 XML 文件属性。
- 抽象不熟悉的 SQL 类型,并为我们提供工作中所熟悉的 Java 对象。
- Hibernate 不需要应用程序服务器来操作。
- 操控你数据库中对象复杂的关联。
- 最小化与访问数据库的智能提取策略。
- 提供简单的数据询问。
支持的数据库
Hibernate 支持几乎所有的主要 RDBMS。以下是一些由 Hibernate 所支持的数据库引擎。
- HSQL Database Engine
- DB2/NT
- MySQL
- PostgreSQL
- FrontBase
- Oracle
- Microsoft SQL Server Database
- Sybase SQL Server
- Informix Dynamic Server