一、 hibernate是什么
(一)hibernate 是一个orm框架,orm (object relation mapping) 对象关系映射框架
o object -> 业务层(只对对象操作) r relation-> 关系数据库 m mapping 对象关系映射文件
- hibernate 处于我们项目的持久层位置(正因为如此,所以有人又把hibernate称为 持久层框架)
- hibernate 实际上就是对jdbc进行了轻量级的封装.
- hibernate 的基础还是我们java 反射机制
Hibernate有核心接口和类,两个主要配置文件,我们的学习也主要是围绕它们:
1、Configuration类:负责配置并启动Hibernate
2、SessionFactory接口:负责初始化Hibernate
3、Session接口:负责持久化对象的CRUD操作
4、Transaction接口:负责事务
5、Query接口和Criteria接口:负责执行各种数据库查询
还有比较常见的持久层框架:mybatis(现在mybatis用的非常多)、ojb、ejb等。
(二)什么是对象的持久化?
持久化(Persistence),即把数据(如内存中的对象)保存到可永久保存的存储设备中(如磁盘)。持久化的主要应用是将内存中的对象存储在关系型的数据库中,当然也可以存储在磁盘文件中、XML数据文件中等等。
(三)为什么需要hibernate?
①引入hibernate可以使工作人员角色细化,让程序员更关心业务流
程。让数据库人员关注数据库相关的各种操作。
②分层更清晰,耦合性更小。
③通用性强:可以更轻松的从一个数据库平台转移到别的平台。
④对象化:把关系数据库变成了Java的对象,更加方便操作。
⑤性能保证:hibernate可能按不同的数据库,处理不同的操作是用
最优化的SQL语句,不用我们去想,对于分等算法,在hibernate中会显得更简单,可靠。