JPA

[Spring Data JPA] LIKE Queries in Spring JPA Repositories

hrming 2024. 3. 10. 01:16

Share Book 개인프로젝트 진행하면서, Spring Data JPA로 검색기능을 구현하는 중에  아래처럼 searchText를 매개변수로 넘기면, DB에서 타이틀이나 내용에 searchText값이 있는 데이터만 불러온다고 하는데.. 저게 메서드명을 저렇게 설정한다고 되는건가?.... 이게 어떻게 가능한거지 이해가 안되서 좀 찾아봤다. ;(

reviewRepository.findByTitleContainingOrContentContaining(searchText, searchText, pageable);

 

찾아보니 Spring Data JPA, Repository에서는 'Containig, Contains 혹은 IsContaining' 키워드를 사용해서 아래와 같이 메서드를 만들면, SELECT * FROM movie WHERE title LIKE '%in%';  쿼리 기능을 한다고 한다..! 😯

Containing, Contains, IsContaining

SELECT * FROM movie WHERE title LIKE '%in%';

 

List<Movie> findByTitleContaining(String title);

List<Movie> findByTitleContains(String title);

List<Movie> findByTitleIsContaining(String title);

 

 

 

출처 & 참고 : 

https://www.baeldung.com/spring-jpa-like-queries