日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

Spring Boot————Spring Data JPA简介

發布時間:2025/3/12 javascript 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spring Boot————Spring Data JPA简介 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

引言

JPA是Java 持久化API的縮寫,是一套Java數據持久化的規范,

Spring Data

Spring Data項目的目的是為了簡化構建基于Spring 框架應用的數據訪問技術,包括對關系型數據庫的訪問支持。另外也包含非關系型數據庫、Map-Reduce框架、云數據服務等等。

Spring Data包含的子項目有:

Spring Data Commons

Spring Data JPA

Spring Data KeyValue

Spring Data LDAP

Spring Data MongoDB

Spring Data Gemfire

Spring Data REST

Spring Data Redis

Spring Data for Apache Cassandra

Spring Data for Apache Solr

Spring Data Couchbase (community module)

Spring Data Elasticseach (community module)

Spring Data Neo4j (community module)

Spring Data 的特點

Spring Data的宗旨就是統一數據訪問的API。?所以它為我們提供使用統一的API來對數據訪問層進行操作;這主要是Spring Data Commons項目來實現的。Spring Data Commons讓我們在使用關系型或非關系型數據訪問技術時都基于Spring 提供的統一標準,標準包括CRUD、排序和分頁的相關操作。

統一的Repository接口

Repository<T, ID extends Serializable>:統一接口

RevisionRepository<T, ID extends Serializable, N extends Number & Comparable<N>>:基于樂觀鎖機制

CrudRepository<T, ID extends Serializable> : 基本CRUD操作

PagingAndSortingRepository<T, ID extends Serializable>:基本CRUD及分頁

數據訪問模板類

如:MongoTemplate、RedisTemplate等

Spring Data JPA

1、JpaRepository基本功能

編寫接口繼承JpaRepository既有crud及分頁等基本功能

2、定義符合規范的方法命名

在接口中只需要聲明符合規范的方法,即擁有對應的功能:

interface PersonRepository extends Repository<User, Long> {List<Person> findByEmailAddressAndLastname(EmailAddress emailAddress, String lastname);// Enables the distinct flag for the queryList<Person> findDistinctPeopleByLastnameOrFirstname(String lastname, String firstname);List<Person> findPeopleDistinctByLastnameOrFirstname(String lastname, String firstname);// Enabling ignoring case for an individual propertyList<Person> findByLastnameIgnoreCase(String lastname);// Enabling ignoring case for all suitable propertiesList<Person> findByLastnameAndFirstnameAllIgnoreCase(String lastname, String firstname);// Enabling static ORDER BY for a queryList<Person> findByLastnameOrderByFirstnameAsc(String lastname);List<Person> findByLastnameOrderByFirstnameDesc(String lastname); }

3、@Query自定義查詢,定制查詢SQL

4、 Specification查詢(Spring Data JPA支持JPA2.0的Criteria查詢)

Spring Data結構圖

來看一下Spring Data JPA相互間的結構關系:

可以看到,Spring Data JPA是針對于JPA規范開發的一套上層統一接口。它的實現有Hibernate、Toplink、OpenJPA等,因此,只要掌握了Spring Data JPA中數據訪問用法,在實際生產中選擇要實現的底層框架,就可以省去時間學習五花八門的實際數據訪問框架,節約了學習成本。

綜上,就是關于Spring Data? JPA的相關介紹。

總結

以上是生活随笔為你收集整理的Spring Boot————Spring Data JPA简介的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。