第一部分 ORM、JPA与Hibernate概述
第一部分介绍JPA和Hibernate的用武之地。
- 当前主流编程范式是面向对象(Object - Oriented, 简称OO)的。面向对象的分析与设计(OOAD)是软件成功的关键。
- 领域建模(Domain Modeling)将OOAD应用到软件分层结构中的领域层,描述问题域的概念模型。领域模型既描述领域对象的结构和关系,也描述领域对象的行为。
- 持久化将领域模型中的部分领域对象(实体和值对象,统称持久化对象)持久化到外部媒体(例如关系数据库、NoSQL、文件系统、云存储等),在软件重启后可以从外部媒体恢复领域对象到内存中。持久化只关心对象的结构和关系,不关注对象的行为。
- 对象-关系映射(ORM)是一种持久化方法,采用关系数据库作为对象存储的载体。其主要目的是使得开发人员可以主要关注O(领域对象模型),而很少需要关注R(数据库关系模型)。
- Java持久化API(JPA)是一种规范,将Java领域的ORM标准化。
- Hibernate是JPA规范的一种实现。
从上到下,是一个逐渐窄化、逐渐具体化的过程。