1、什么是hibernate
hibernate是对jdbc进行轻量级封装的 orm 框架,充当项目的持久层.
(1)hibernate 是一个框架(framework)
(2) hibernate 是一个orm框架 : orm (object relation mapping) 对象关系映射框架
o object -> 业务层(只对对象操作)
r relation-> 关系数据库
m mapping 对象关系映射文件
(3) hibernate 处于我们项目的持久层位置(正因为如此,所以有人又把hibernate称为 持久层框架)
(4) hibernate 实际上就是对jdbc进行了轻量级的封装.
(5) hibernate 的基础还是我们java 反射机制
除了hiberante 这个orm框架,还有一些:
apache ojb / toplink / ibatis / ejb cmp
Apache OJB ()
Cayenne ()
Jaxor ()
Hibernate ()
iBatis ()
jRelationalFramework()
mirage ()
SMYLE ()
TopLink ()
2、为什么需要hibernate
(1)JDBC访问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性代码。
(2)Hibernate是一个基于JDBC的主流持久化框架,是一个优秀的ORM实现。他很大程度的简化DAO层的编码工作
(3) hibernate使用Java反射机制,而不是字节码增强程序来实现透明性。
(4) hibernate的性能非常好,因为它是个轻量级框架。映射的灵活性很出色。它支持各种关系数据库,从一对一到多对多的各种复杂关系。
3、hibernate学习重点
(1)hibernate的API
(2)hibernate.cfg.xml配置文件(是hibernate的核心配置文件)
(3)对象关系映射文件
4、使用hibernate的好处
①引入hibernate可以使工作人员角色细化,让程序员更关心业务流程。让数据库人员关注数据库相关的各种操作。
②分层更清晰,耦合性更小。
③通用性强:可以更轻松的从一个数据库平台转移到别的平台。
④对象化:把关系数据库变成了Java的对象,更加方便操作。
⑤性能保证:hibernate可能按不同的数据库,处理不同的操作是用最优化的SQL语句,不用我们去想,对于分等算法,在hibernate中会显得更简单,可靠。
⑥增加了程序的鲁棒性!