原创 | 使用 JPA 实现 DDD 持久化 -JPA,Hibernate 与 Spring Data JPA

2002 年,Martin Fowler在他的名著《企业应用架构模式》中首次提出“数据映射器(Data Mapper)”模式,将面向对象的领域模型映射到关系数据库中。
2003 年,澳大利亚程序员Gavin King,数据系统素人,因为嫌弃EJB Entity Bean 1.1的架构复杂,自行开发了一个对象关系映射框架Hibernate。值得一提的是,此前他从未用SQL开发过任何系统。为了开发Hibernate,他临时去书店买了一个SQL基础的书。现在Hibernate已经成为最流行的对象关系影射(ORM)工具。
2006 年,EJB 3.0软件专家组发布了Java Persistence API(简称JPA)规范 1.0 版。对对象-关系映射(ORM)进行了规范化。JPA不限于 EJB 3.0,你可以在Web应用、甚至桌面应用中使用。现在是Java数据库持久化的标准。目前发布了 2.2 版。
Hibernate实现了JPA,是目前为止最流行的JPA规范的实现。
Spring Data JPA是对JPA的一层封装,它使得我们在定义针对JPA的查询的时候,可以只针对持久化对象的属性定义查询接口,而由Spring自动提供实现,大大简化了基于JPA的查询操作。
当前基于JPA的数据访问,一般做法是:
基于
JPA进行对象-关系映射。基于
Spring Data JPA定义查询,进行数据存取和访问。Hibernate作为JPA的实现,隐于幕后。任何代码都没有直接使用到Hibernate。
本书后面的叙述,都是基于这个思路铺开。
详细内容请戳这里↓↓↓
原创 | 使用JPA实现DDD持久化-JPA,Hibernate与Spring Data JPA
这一节就讲到这里,下一节我们讲"JPA vs MyBatis"。
如果觉得有收获,点个【赞】鼓励一下呗!
版权声明: 本文为 InfoQ 作者【编程道与术】的原创文章。
原文链接:【http://xie.infoq.cn/article/cb2bedfcebcb057386b3ee4ed】。文章转载请联系作者。











评论