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

歡迎訪問 生活随笔!

生活随笔

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

javascript

译:Spring Data Repository 不区分大小写查询

發布時間:2025/4/5 javascript 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 译:Spring Data Repository 不区分大小写查询 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2019獨角獸企業重金招聘Python工程師標準>>>

使用Spring Data Repository 不區分大小寫查詢

原文鏈接:https://www.baeldung.com/spring-data-case-insensitive-queries

作者:Shubhra Srivastava

譯者:liululee

1. 概覽

Spring Data JPA查詢默認是大小寫敏感的,換句話說,字段值的比較是區分大小寫的。 本教程中,我們將探討如何在Spring Data JPA repository快速新建不區分大小寫的查詢.

2. 依賴

首先,確保pom.xml包含Spring Data和H2依賴。

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-jpa</artifactId><version>2.1.3.RELEASE</version> </dependency> <dependency><groupId>com.h2database</groupId><artifactId>h2</artifactId><scope>runtime</scope><version>1.4.199</version> </dependency>

最新版本請移步Maven Central。

3. 初始設置

假設我們有一個具有id,firstName,lastName屬性,名為Passenger的實體類。

@Entity class Passenger {@Id@GeneratedValue@Column(nullable = false)private Long id;@Basic(optional = false)@Column(nullable = false)private String firstName;@Basic(optional = false)@Column(nullable = false)private String lastName;// constructor, static factory, getters, setters }

另外,用測試類往數據庫填充一些Passenger的樣例數據:

@DataJpaTest @RunWith(SpringRunner.class) public class PassengerRepositoryIntegrationTest {@PersistenceContextprivate EntityManager entityManager;@Autowiredprivate PassengerRepository repository;@Beforepublic void before() {entityManager.persist(Passenger.from("Jill", "Smith"));entityManager.persist(Passenger.from("Eve", "Jackson"));entityManager.persist(Passenger.from("Fred", "Bloggs"));entityManager.persist(Passenger.from("Ricki", "Bobbie"));entityManager.persist(Passenger.from("Siya", "Kolisi"));}//... }

4. 忽略大小寫查詢

現在假設我們想要執行一個不區分大小寫的搜索,以查找所有具有給定名字(firstName)的passenger。 為此,定義我們的PassengerRepository:

@Repository public interface PassengerRepository extends JpaRepository<Passenger, Long> {List<Passenger> findByFirstNameIgnoreCase(String firstName); }

這里,IgnoreCase關鍵字保證查詢不區分大小寫。 我們也可以使用JUnit測試一下:

@Test public void givenPassengers_whenMatchingIgnoreCase_thenExpectedReturned() {Passenger jill = Passenger.from("Jill", "Smith");Passenger eve = Passenger.from("Eve", "Jackson");Passenger fred = Passenger.from("Fred", "Bloggs");Passenger siya = Passenger.from("Siya", "Kolisi");Passenger ricki = Passenger.from("Ricki", "Bobbie");List<Passenger> passengers = repository.findByFirstNameIgnoreCase("FrED");assertThat(passengers, contains(fred));assertThat(passengers, not(contains(eve)));assertThat(passengers, not(contains(siya)));assertThat(passengers, not(contains(jill)));assertThat(passengers, not(contains(ricki))); }

盡管傳遞了FrED作為參數,但是返回的passenger列表中包含了一個Fred。顯然,在IgnoreCase關鍵字的幫助下,我們實現了不分大小寫的查詢。

5. 總結

在本快速教程中,我們學習了如何在Spring Data Repository中創建不區分大小寫的查詢。

最后,代碼示例可以Github上找到。

文章來自公眾號:鍋外的大佬

專注分享國外最新技術內容, 幫助每位開發者更優秀地成長

轉載于:https://my.oschina.net/liululee/blog/3054191

總結

以上是生活随笔為你收集整理的译:Spring Data Repository 不区分大小写查询的全部內容,希望文章能夠幫你解決所遇到的問題。

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