本文来简单说下jpa中常见的基本概念。
什么是JPA
JPA全称Java Persistence API,可以通过注解或者XML描述【对象-关系表】之间的映射关系,并将实体对象持久化到数据库中。JPA的出现主要是为了简化持久层开发以及整合ORM技术,结束Hibernate、TopLink、JDO等ORM框架各自为营的局面。
JAP为我们提供了ORM映射元数据,JPA的API,JPQL查询语言等,但JPA仅仅是一种规范,也就是说JPA仅仅定义了一些接口,而接口是需要实现才能工作的。所以底层需要某种实现,而Hibernate就是实现了JPA接口的ORM框架。
什么是Spring Data Jpa
它是Spring基于ORM框架、JPA规范封装的一套JPA应用框架,可以使开发者用极简的代码即可实现对数据的访问和操作。简单的讲就是CRUD等常用操作通过它就能轻松实现,可以有效提高开发效率。
Spring data jpa概述
JPA Spring Data:致力于减少数据访问层(DAO)的开发量,开发者唯一要做的,就只是声明持久层的接口,其他都交给Spring Data JPA来完成。
框架怎么可能代替开发者实现业务逻辑呢?比如:当有一个 UserDao.findUserById() 这样一个方法声明,大致应该能判断出这是根据给定条件的 ID 查询出满足条件的 User 对象。Spring Data JPA 做的便是规范方法的名字,根据符合规范的名字来确定方法需要实现什么样的逻辑。