什么是Hibernate
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hibernate可以自动生成SQL语句,自动执行,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的JaveEE架构中取代CMP,完成数据持久化的重任。
什么是ORM
对象关系映射(英语:Object Relation Mapping,简称ORM,或O/RM,或O/R mapping),是一种程序技术,用于实现面向对象编程语言里不同类型系统的数据之间的转换。
对象-关系映射,是随着面向对象的软件开发方法发展而产生的。面向对象的开发方法是当今企业级应用开发环境中的主流开发方法,关系数据库是企业级应用环境中永久存放数据的主流数据存储系统。对象和关系数据是业务实体的两种表现形式,业务实体在内存中表现为对象,在数据库中表现为关系数据。内存中的对象之间存在关联和继承关系,而在数据库中,关系数据无法直接表达多对多关联和继承关系。因此,对象-关系映射(ORM)系统一般以中间件的形式存在,主要实现程序对象到关系数据库数据的映射。ORM模型的简单性简化了数据库查询过程。使用ORM查询工具,用户可以访问期望数据,而不必理解数据库的底层结构。
ORM工具将以面向对象方式对持久化对象的增删改查操作,转化对应的SQL操作进行数据库的操作。
ORM基本映射方式:
(1)数据库表映射类:持久化类被映射到一个数据库表,程序使用这个持久化类来创建实例、修改属性、删除实例时,系统会自动转换为对这个表进行CRUD操作。
(2)数据表的行映射对象:持久化类会生成很多实例,每个实例对应数据表中的一行记录。
(3)数据表的列映射对象属性:当程序修改某个持久化对象的指定属性时,ORM将会转换成对对应数据表中指定数据行、指定列的操作。
为什么使用Hibernate框架
原因:
1.Hibernate对JDBC访问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性代码。
2.Hibernate是一个基于JDBC的主流持久化框架,是一个优秀的ORM实现,它很大程度的简化了dao层编码工作。
3.总结:Hibernate是企业级开发中的主流框架,映射的灵活性很出色。它支持很多关系型数据库。
Hiberate框架学习目标
- 掌握Hiberate的基本配置——即搭建Hiberate开发环境
- 掌握Hiberate常用API——即如何使用Hiberate框架进行开发
- 掌握Hiberate的关联映射——解决表与表之间存在的关系问题,有1:n(一对多)、 1:1(一对一)、m:n(多对多)关系
- 掌握Hiberate的检索方式——即掌握Hiberate的查询
- 掌握Hiberate的优化方式——即提高Hiberate的效率