一、简介
1.springdata的目的是为了简化spring框架应用的数据访问技术。包含对关系型数据库(mysql ,sqlserver,oracle),非关系型数据库(redis mongoDB)
二、特点
1.springdata为我们提供了统一的API对数据访问层进行操作,让我们在使用关系型数据库和非关系型数据库时提供统一的标准,标准(crud,排序,分页等)
2. 统一的Repository接口
3.提供数据访问的模板类 RedisTemplates.MongoTemplates等
4.JPA与springdata
三、springdata jpa的介绍
Springdata:其实就是spring提供的一个操作数据的框架,而spring data jpa只是springdata框架下的一个基于jpa标准操作数据的一个模块
spring data jpa:基于JPA的标准对数据进行操作的方式,简化持久层的代码,编写接口。
Springboot整合springdata JPA
1. 创建项目
2. 修改pom文件,添加springdatajpa依赖
3. 在项目中添加核心配置文件
4. 创建一个实体类
四、springdata jpa提供的核心接口
1.Repository 接口
2.CrudRepository接口
3.pagingAndSortingRepository
4.JpaRepository
5.JPASpecificationExectuor接口
1. Repository 接口的使用
Repository接口是springdatajpa为我们提供的所有接口的顶层接口
Repository提供了两种查询方式的支持
1.1:基于方法名称命名规则的查询
1.2:基于@Query注解的查询
1.1:基于方法名称命名规则的查询
方法名称的命名规则查询
规则:findBy(关键字)+属性名称(属性名称的首字母大写)+查询条件(首字母大写)
1.2:基于@Query注解的查询
1. repository是springdatajpa里最顶层的接口
提供两种查询的方式
1.1:基于方法名称命名规则的查询
1.2:基于@Query注解的查询
JPQL和SQL
1. JPQL和SQL很像,查询关键字都是一样的
2. 唯一的区别:JPQL是面向对象的
3. JPQL语句,类似于sql
3.1. 里面不能出现表名,列名,只能出现java的类名,属性名
3.2. 出现的sql关键字是一样的意思
3.3. 不能写select *
1. CrudRepository接口,主要是完成一些增删改查的操作
2. CrudRepository接口继承Repository接口
1. 该接口提供了分页与排序的操作
2. 该接口继承了CrudRepository
Repository接口
CrudRepository接口
PagingAndSortingRepository接口
JpaRepository接口
JpaSpecificationExecutor接口
jpaRepository接口是我们开发使用时最多的接口
JpaSpecificationExecutor接口是单独存在的,完全独立,该接口也提供了查询,分页,排序
JpaSpecificationExecutor不能单独使用,需要配合jpa中的其他接口一起使用
「艾尔登法环」梅琳娜手办开订 立体手办▪
万代「艾尔登法环」白狼战鬼手办开订 立体手办▪
「夏目友人帐」猫咪老师粘土人开订 立体手办▪
「五等分的新娘∬」中野三玖·白无垢版手办开订 立体手办▪
「海贼王」乌索普Q版手办开订 立体手办▪
良笑社「初音未来」新手办开订 立体手办▪
「黑岩射手DAWN FALL」死亡主宰手办开订 立体手办▪
「盾之勇者成名录」菲洛手办登场 立体手办▪
「魔法少女小圆」美树沙耶香手办开订 立体手办▪
「咒术回战」七海建人粘土人登场 立体手办▪
「五等分的新娘」中野二乃白无垢手办开订 立体手办▪
「为美好的世界献上祝福!」芸芸粘土人开订 立体手办▪
「公主连结 与你重逢」六星可可萝手办开订 立体手办▪
「女神异闻录5」Joker雨宫莲手办开订 立体手办▪
「间谍过家家」约尔・福杰粘土人登场 立体手办▪
「街角魔族 2丁目」吉田优子手办开订 立体手办▪
「火影忍者 疾风传」旗木卡卡西·暗部版粘土人登场 立体手办▪
「佐佐木与宫野」宫野由美粘土人开订 立体手办▪
「盾之勇者成名录」第2季拉芙塔莉雅手办开订 立体手办▪
「咒术回战」两面宿傩Q版坐姿手办开订 立体手办▪
「DATE·A·BULLET」时崎狂三手办开订 立体手办▪
「狂赌之渊××」早乙女芽亚里粘土人开订 立体手办▪
「魔道祖师」魏无羨粘土人开订 立体手办▪
「新·奥特曼」奥特曼手办现已开订 立体手办▪