小白的springboot之旅(六) - springboot之JPA
关键词:springboot,jpa,JpaRepository,JpaSpecificationExecutor
这篇来讲一下springboot如何使用jpa。通过对jpa的使用,让开发者从繁琐的JDBC和SQL代码中解脱出来。
一、 什么是JPA
百度百科这样定义JPA:JPA是Java Persistence API的简称,中文名Java持久层API,是JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中。
JPA的宗旨是为POJO提供持久化标准规范,脱离容器独立运行,方便开发和测试。Hibernate、TopLink以及OpenJPA都提供了JPA的实现。
JPA的总体思想和现有Hibernate、TopLink、JDO等ORM框架大体一致。总的来说,JPA包括以下3方面的技术:
1)ORM映射元数据
JPA支持XML和JDK5.0注解两种元数据的形式,元数据描述对象和表之间的映射关系,框架据此将实体对象持久化到数据库表中;
2)API
用来操作实体对象,执行CRUD操作,框架在后台替代我们完成所有的事情,开发者从繁琐的JDBC和SQL代码中解脱出来。
3)查询语言
这是持久化操作中很重要的一个方面,通过面向对象而非面向数据库的查询语言查询数据,避免程序的SQL语句紧密耦合。
二、 springboot使用jpa
1)添加maven依赖
配置
2)实体映射
3)定义数据持久接口
接口中继承JpaRepository接口,JpaSpecificationExecutor。JpaRepository接口对条件查询以及保存集合数据添加了对应的方法。JpaSpecificationExecutor接口提供了一些复杂的查询接口。
4)实现业务逻辑service
5)实现controller
这里简单实现查询person,然后讲person用json的格式输出页面。运行一下看效果。
OK,其他方法的使用类推,实在不行度娘一下。