一、什么是Hibernate?
①一个框架
②一个Java领域的持久化框架
③一个ORM框架
二、对象的持久化
①狭义的理解,“持久化”仅仅指把对象永久的保存到数据库中
②广义的理解,“持久化”包括和数据库相关的各种操作:
---保存:把对象永久保存到数据库。
---更新:更新数据库中对象(记录)的状态。
---删除:从数据库删除一个对象。
---查询:根据特定的查询条件,把符合查询条件的一个或多个对象从数据库加载到内存中。
---加载:根据特定的OID,把一个对象从数据库加载到内存中。
OID:为了在系统中能够找到所需对象,需要为每一个对象分配一个唯一的标识号。在关系数据库中称之为主键,而在对象术语中,则叫做对象标识(Object identifier-OID)。
三、ORM(Object/Relation Mapping):对象/关系映射
①ORM主要解决对象-关系的映射
面向对象概念 | 面向关系概念 |
---|---|
类 | 表 |
对象 | 表的行(记录) |
属性 | 表的列(字段) |
②ORM的思想:
将关系数据库中表中的记录映射成为对象,以对象的形式展现,程序员可以把对数据库的操作转化为对对象的操作。
③ORM采用元数据来描述对象-关系映射细节,元数据通常采用XML格式,并且存放在专门的对象-关系映射的文件中。
四、流行的ORM框架
①Hibernate
---非常优秀、成熟的ORM框架
---完成对象的持久化操作
---Hibernate允许开发者采用面向对象的方式来操作数据库
---消除那些针对特定数据库厂商的SQL代码
②myBatis
---相比Hibernate灵活高,运行速度快
---开发速度慢,不支持纯粹的面向对象操作,需熟悉SQL语句,并且熟练使用SQL语句优化功能。
③TopLink
④OJB
五、Hibernate开发步骤
①创建Hibernate配置文件
②创建持久化类
③创建对象-关系映射文件
④通过Hibernate API编写访问数据库的代码