본문 바로가기
IT/Java

JPA query Keyword2 (repository)

by 성준하이 2023. 5. 6.
반응형

이전 포스팅에서 jpa 사용하는 query keyword에서 사용하는 메서드들을 정리한 글이 있다.

(아래 참고 포스팅 참조)

 

findById부터 시작해서 다양한 메서드가 있었는데

like 문에 대한 내용을 적은적이 없는것 같아서 적으려고 한다.

 

먼저 Like는 크게 3가지 방법으로 지정할수있다.

 

1. findByNameLike(String name);

repository 에서는 이렇게 사용이 되며 service단에서 호출할때는

List<Member> list = repository.findByNameLike("%"+ dto.getName() +"%");

이렇게 와일드카드를 붙여줘야한다.

 

이점이 불편해서 나온것이 

2. findByNameContains / findByNameContaining / findByNameIsContaining (String name);

이다.

와일드 카드를안붙여도 알아서 앞뒤로 와일드 카드가 붙는다.

 

만약 여기서 A로 시작하는 ? 혹은 A로 끝나는 문을 Like 문을 걸고 싶다면?

 

3. findByNameStartsWith / findByNameEndsWith (String name);

이다.

이렇게 되면 StartsWith는 name +"%" 의 효과를 EndsWith는 "%"+ name 의 효과를 낸다.


참고 포스팅

https://thenicesj.tistory.com/414

 

JPA query Keyword (repository)

이전 포스팅에서 jpa 메서드 들을 간단하게 정리한 포스팅이 있다. 자세한 사항은 아래 참고 포스팅을 참고 바란다. jpa 메서드에 대해서 좀더 다뤄보려고 한다. 자료 출처는spring 공식 홈페이지

thenicesj.tistory.com

 

반응형

댓글