什么是对象持久化
所谓持久化(Persistence)即把数据(如内存中的对象)保存到持久化的设备,即可永远保存到存储设备(如硬盘)
持久化的主要应用是将内存中的数据存储到关系型的数据库中,当然也可以存储在硬盘文件中、XML 数据文件中 。
为什么要持久化
- 内存不能持久
- 内存容量有限(内存适用于存放计算数据的)
- 业务数据共享的需要(需要公共的持久设备)
- 为了使用大规模的检索(所以要将数据改为社和大规模检索的格式)
- 数据管理的需要(安全、备份)
怎样是向持久化
对象序列化
即实现了 Serializable 接口的类,适合于少量的对象进行暂时的持久化,适合在网络上传输对象。但不符合企业级应用的需要,因为企业应用中对数据的要求是大量的,长时间保存的、需要大规模查询。
JDBC
优点:功能完备,从理论上可以说是效率最高的;可以存储海量的数据并且适合进行大规模的检索。
缺点:开发效率和维护效率低;开发难度大,代码量大,站到总代吗量的 1/3 或 1/2.
ORM
ORM,即 Object-Relaational Mapping,对象关系映射,他是一种解决问题的思路,是一种思想。他的实质就是将关系数据用对象形式表示出来,并通过面向对象的方式将这些对象组织起来,以实现系统业务逻辑。或是说 ORM 就是内存中的对象与数据库中的数据间的映射关系。
ORM 的特点:开源的,实现 JDBC 的封装,实现了简单的 API,轻量级解决方案,持久化对象是一个 POJO 类。最有名的是 ORM 框架就是 Hibernate。
JPA 框架
JPA(Java Persisternce API) 是 Java EE5 的标准 ORM 接口,他是一种规范,一套接口,但不是实现。用于实现这一规范的 ORM 很多,其中 Hibernate 就是其中之一。
JPA、ORM、Hibernate 间的关系
JPA , ORM 与 Hibernate 的关系。ORM 是一种思想,JPA 是这种思想的具体表现形式,是以 Java 语言为规范表现出来的一种形式,是一套标准的接口, Hibernate 则是这套接口的具体实现。
网友评论