首先介绍一下数据的状态
瞬时状态:在程序运行的时候,有些程序数据保存在内存中,当程序退出后,这些数据就不复存在了,所以,我们称这些数据的状态为瞬时的。
持久状态:在使用一些软件的时候,有些数据,在程序退出后,还以文件等形式保存在硬盘中,那么我们称这些数据的状态是持久的。
持久化:就是将程序中的数据在瞬时状态和持久状态之间转换的机制。
JDBC就是持久化机制,将程序数据直接保存成文件也是持久化机制的一种实现。因为我们通常将程序中的数据保存在数据库中,所以持久化通常是将程序数据保存在数据库中或者是将数据库中的数据读取出来。
JDBC是java程序与数据库之间的桥梁,对于小的程序来说,JDBC完全可以胜任,但对于大型应用程序开发而言,单凭JDBC就显得有些力不从心,例如插入上千万条数据,如果使用JDBC,无论从易用性还是高效性的角度来看都不是最优的,而Hibernate提供了自己的解决方案,使得与数据库底层的交互既高效又稳定。
ORM中间件
ORM(Object Relational Mapping)是对象到关系的映射,是一种解决实体对象与关系型数据库相互匹配的技术,其实现思想是将数据库中的数据表映射为对象,对关系型数据库以对象的形式进行操作。由于对象和关系数据是业务实体的两种表现形式,ORM通过使用描述对象和数据库之间映射的元数据,将对象自动持久化到关系数据库中。实质上,ORM在业务逻辑层与数据库层之间充当桥梁的作用,他对对象(Object)到关系数据库(Relational)进行映射(Mapping)。
在Hibernate框架中,ORM的设计思想得以充分体现。Hibernate主要通过持久化对象(*.java)、Hibernate映射文件(*.hbm.xml)以及Hibernate配置文件(*.cfg.xml)与数据库进行交互。其中,持久化类是操作对象,用于描述数表的结构;映射文件指定持久化类与数据表之间的映射关系;配置文件用于指定Hibernate的属性信息等,如连接信息。
Hibernate对ORM进行了实现,是一个开放源代码的对象关系映射框架,在软件的分层结构中,Hibernate在原有的MVC三层结构的基础上,从业务逻辑层中分离出持久化层,专门负责数据的持久化操作,使业务逻辑层可以真正的专注于业务逻辑的开发,不在需要编写复杂的SQL语句。
原文地址:http://blog.csdn.net/u011740475/article/details/39134653