基于对于一个陌生的技术框架,先使用后研究其实现的原则(大部分本人如此,就如小朋友学习骑自行车不会先研究自行车是怎么动起来的而是先骑会了),对于Spring JPA先通过案例实践其怎么用吧。
用之前得明白Spring Data JPA是什么?首先JPA 是⼀套规范,内部是由接⼝和抽象类组成的。Spring Data JPA 是 Spring 提供的⼀套对 JPA 操作更加⾼级的封装,是在 JPA 规范下的专⻔⽤来进⾏数据持久化的解决⽅案。
下面进行具体实践:
需求:使⽤ Spring Data JPA 完成对 r_resume 表(简历表)的Dao 层操作(增删改查,排序,分⻚等)
数据库表设计——具体表结构及存量数据如下图:
大致开发流程汇总:
1、构建⼯程
创建⼯程导⼊坐标(Java框架于我们⽽⾔就是⼀堆jar)
配置 Spring 的配置⽂件(配置指定框架执⾏的细节)
编写实体类 Resume,使⽤ JPA 注解配置映射关系
编写⼀个符合 Spring Data JPA 的 Dao 层接⼝(ResumeDao接⼝)
2、操作 ResumeDao 接⼝对象完成 Dao 层开发
下面开始按大致流程进行具体的实践:
1、导入坐标(本人一般记不住都是在开发过程中,边开发变导入坐标)
2、配置Spring配置文件(xml)
如果使用注解进行配置,可以如下:
3、编写实体类Resume,使用JPA注解配置映射关系
4、编写符合Spring Data JPA数据范围规范的Dao层接口
使用Spring Data JPA建立数据访问层十分简单,只需要定义一个基础JpaRepository的接口即可,如下:
仅接口名,里面可以没有任何方法。
5、测试类
整个过程中没有出现任何的sql相关的内容,甚至自定义的接口中方法都可以没有直接使用父类的方法。与Mybatis对比,可能某些查询更简便。