JPA

八卦谈 佚名 2023-09-23 00:43:37

Springdata

一、简介

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注解的查询

 

Repository

1.    repositoryspringdatajpa里最顶层的接口

提供两种查询的方式

1.1:基于方法名称命名规则的查询

1.2:基于@Query注解的查询

 

JPQLSQL

1.    JPQLSQL很像,查询关键字都是一样的

2.    唯一的区别:JPQL是面向对象的

3.    JPQL语句,类似于sql

3.1.       里面不能出现表名,列名,只能出现java的类名,属性名

3.2.       出现的sql关键字是一样的意思

3.3.       不能写select *

CrudRepository

1.      CrudRepository接口,主要是完成一些增删改查的操作

2.      CrudRepository接口继承Repository接口

PagingAndSortingRepository

1.      该接口提供了分页与排序的操作

2.      该接口继承了CrudRepository


Repository接口      

                   CrudRepository接口

                   PagingAndSortingRepository接口

                   JpaRepository接口

                   JpaSpecificationExecutor接口

jpaRepository接口是我们开发使用时最多的接口

JpaSpecificationExecutor接口是单独存在的,完全独立,该接口也提供了查询,分页,排序

JpaSpecificationExecutor不能单独使用,需要配合jpa中的其他接口一起使用


 

 

 



本文标题:JPA - 八卦谈
本文地址:www.ttdhp.com/article/40097.html

天天动画片声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
扫码关注我们