[JPA] 스프링 부트 JPA : 쿼리 메소드 JPA
[JPA] 스프링 부트 JPA : 쿼리 메소드 JPA
1. 쿼리 메소드 JPA
-
스프링 DATA JPA는 메소드의 이름만으로 원한는 쿼리가 자동으로 생성된다.
-
주의 점 : 쿼리라는 용어는 Select에만 대상함
- 쿼리 메소드 패턴
find…By…
read...By... query...By... get...By... count...By... - 쿼리 메소드 패턴 예
findBoradByTitle(String title)
게시판의 항목들 중 제목으로 검색을 함 -
쿼리 메소드 뒤에 붙는 옵션 목록
// AND 조건 : And 추가 A And B public List<Board> findBoardByTitleAndWriter(String title, String writer); // OR 조건 : Or 추가 A Or B public List<Board> findBoardByTitleOrWriter(String title, String writer); // Between 조건 : Between 추가 public List<Board> findBoardByRegDateBetween(Timestamp t1, Timestamp t2); // < 미만 값 찾기 : LessThan public List<Board> findBoardByBnoLessThan(Long bno); // <= 이하 값 찾기 : LessThanEqual public List<Board> findBoardByBnoLessThanEqual(Long bno); // > 초과 값 찾기 : GreaterThan public List<Board> findBoardByBnoGreaterThan(Long bno); // >= 이상 값 찾기 : GreaterThanEqual public List<Board> findBoardByBnoGreaterThanEqual(Long bno); //After와 Before는 기준이 되는 값은 포함시키지 않는다. // After 일자 이후 : After public List<Board> findBoardByRegDateAfter(Timestamp t1); // Null 조회 : IsNull public List<Board> findBoardByRegDateBefore(Timestamp t1); //DB 안에서 Null 인 값이다. ("") 공백 값은 체크 안함 // Null 조회 : IsNull public List<Board> findBoardByContentIsNull(); // Not Null 조회 : IsNotNull, NotNull public List<Board> findBoardByContentIsNotNull(); public List<Board> findBoardByContentNotNull(); //단순 Like의 값이다. % % 처리를 하지 않는다. //Like 문구 : Like public List<Board> findBoardByContentLike(String content); //Not Like 문구 : NotLike public List<Board> findBoardByContentNotLike(String content); //어두 찾기 : StartingWith public List<Board> findBoardByContentStartingWith(String content); //어미 찾기 : EndingWith public List<Board> findBoardByContentEndingWith(String content); //% % 찾기 : Containing public List<Board> findBoardByContentContaining(String content); //order by : 찾기 조건 모두 완료 후 맨 끝에 OrderBy A Desc(Asc) public Page<Board> findBoardByContentContainingOrderByBnoDesc(String content, Pageable page); public Page<Board> findBoardByContentContainingOrderByBnoAsc(String content, Pageable page); //In : In public List<Board> findBoardByBnoIn(Collection<Long> bno); //Not In : NotIn public List<Board> findBoardByBnoNotIn(Collection<Long> bno);
Comments