-
[Spring JPA] 검색 쿼리 - 대소문자 무시하기백엔드/Spring 2021. 1. 2. 02:48
🚀 들어가며...
- 커뮤니티 게시판에서 검색 기능을 개발할때, 대소문자에 구분 없이 사용하도록 해야한다.
💌 소스코드
package org.rojae.examples; import java.util.List; public interface CommentRepository extends MyRepository<Comment, Long>{ // IgnoreCase를 추가 ~> keyword의 문자를 대문자로 바꾸어 준다 List<Comment> findByCommentContainsIgnoreCase(String keyword); }
위의 코드를 사용하여 (IgnoreCase를 추가한)
하이버네이트가 생성한 쿼리를 확인해보면
upper()를 통해서 무조건 대문자로 검색하는 것을 알 수 있다. (사용한 데이터베이스는 postgres)
이를 통해서 대소문자 구분 없이 JPQL을 만들수 있다는 것.
📑 결론
JPQL의 구조
~> 리턴타입 {접두어}{도입부}By{프로퍼티 표현식}(조건식)[(And|Or){프로퍼티 표현식}(조건식)]{정렬 조건} (매개변수)
에서 IgnoreCase 조건식을 추가하여 대소문자를 무시할 수 있다.
🙋🏻♂️ 후기
레퍼런스를 평소에 잘 보는 습관을 가져야겠습니다.
🔗 참고한 글
반응형'백엔드 > Spring' 카테고리의 다른 글
[Spring JPA] 객체의 상태에 대해서 알아보자 (Transient, Persistent, Detached) (0) 2021.01.12 [Spring JPA] 검색 쿼리 개발 (5) 2021.01.02 [Spring JPA] Hibernate 파라미터 출력 설정 (로그 출력) (2) 2020.12.29 [Spring Framework] 한글 인코딩이 깨질때 (Spring Security 사용시) (0) 2020.12.02