1. Hibernate 概述
1.1. Hibernate 是什么
百度百科:
Hibernate是一个开放源代码的 对象关系映射框架,它对JDBC进行了非常轻量级的 对象封装,它将 POJO与 数据库表建立映射关系,是一个 全自动的orm框架,hibernate可以 自动生成SQL语句,自动执行,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。
Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的JaveEE架构中取代CMP,完成数据持久化的重任。
总结:
Hibernate是一个基于ORM的持久层框架,使用POJO来操作数据库。
1.2. ORM 是什么
百度百科:
对象关系映射(Object Relational Mapping,简称ORM)是通过使用描述对象和数据库之间映射的元数据,将面向对象语言程序中的对象自动持久化到关系数据库中。本质上就是 将数据从一种形式转换到另外一种形式。这也同时暗示着额外的执行开销;然而,如果ORM作为一种中间件实现,则会有很多机会做优化,而这些在手写的持久层并不存在。更重要的是用于控制转换的元数据需要提供和管理;但是同样,这些花费要比维护手写的方案要少;而且就算是遵守ODMG规范的对象数据库依然需要类级别的元数据。
总结:
ORM是Object Relational Mapping的缩写,ORM就是在操作数据库之前,先将实体类与数据库表的关系建立起来, 通过操作实体类的对象来操作数据库。
1.3. ORM 的作用是什么
ORM是一套基于对象操作数据库的理念(规范),其主要作用就是为了实现不用写SQL语句,通过对象操作数据库。
1.4. Hibernate 的作用是什么
既然Hibernate是一个基于ORM理念实现的持久层框架。那么它的作用就是,为了实现使用对象操作数据库。
1.5. Hibernate 的应用场景是什么
[1] 在所有使用JDBC的场景都可以使用Hibernate。
[2] 编写一套兼容多种数据库的持久层代码。我们知道各种数据库的SQL语言和SQL标准是有差异的,而Hibernate实现了各种主流数据库的方言,只要开发人员严格根据Hibernate规范编写代码,可以实现编写一套代码,兼容多种数据库。
总结:
在一些需要支持多种数据库的产品型项目,使用Hibernate可以减少持久层的代码的编写。
2. Hibernate 入门
2.1. 配置流程图
通过框架的配置流程图,可以快速了解框架的必须要素。如下:
问题1:为什么需要一个配置文件?
答:因为需要一个配置文件,来存储Hibernate框架的框架信息。如果没有配置文件只能将这些信息写在类里面。配置信息写在类里面,编译后就不能修改了,灵活性差。
问题2:为什么需要一个映射文件?
答:因为Hibernate是一个ORM框架,所以需要先建立实体类与表的关系后,然后才可以通过实体类的对象操作数据库。因此必须要有建立关系的映射文件。
2.2. 配置步骤
根据以上配置流程图。我们可以得出配置步骤为:
1. 导入依赖
2. 创建一个配置文件
3. 创建一个获得操作对象(Session)的工具类
4. 创建表的实体类
5. 创建映射关系文件
6. 加载映射文件
7. 实体操作(插入数据)
2.3. Hibernate压缩文件说明
上Hibernate官网下载Hibernate压缩包