백엔드/JPA

[JPA] JPA Repository 메소드 명명규칙

tero1115 2023. 7. 27. 13:22

단일 필드 검색:

  • findBy{FieldName}: 특정 필드 값을 검색합니다.
  • findBy{FieldName}Containing: 특정 문자열을 포함하는 값을 검색합니다.
  • findBy{FieldName}StartingWith: 특정 문자열로 시작하는 값을 검색합니다.
  • findBy{FieldName}EndingWith: 특정 문자열로 끝나는 값을 검색합니다.
  • findBy{FieldName}IgnoreCase: 대소문자 구분 없이 값을 검색합니다.
  • findBy{FieldName}IsNull: NULL 값인 레코드를 검색합니다.
  • findBy{FieldName}IsNotNull: NULL 값이 아닌 레코드를 검색합니다.

여러 필드 조합 검색:

  • findBy{Field1}And{Field2}: 여러 개의 필드 조건을 AND 연산자로 조합하여 검색합니다.
  • findBy{Field1}Or{Field2}: 여러 개의 필드 조건을 OR 연산자로 조합하여 검색합니다.

중복 값 제거 검색:

  • findDistinctBy{FieldName}: 중복된 값을 제거하여 특정 필드 값을 검색합니다.

정렬 기능:

  • findBy{FieldName}OrderBy{OtherField}: 특정 필드 값을 검색하고, 결과를 다른 필드를 기준으로 정렬하여 반환합니다.

특정 범위 검색:

  • findBy{FieldName}Between: 특정 범위에 속하는 값을 검색합니다.
  • findByCreatedAtBetween(Date startDate, Date endDate): 특정 날짜 범위에 속하는 생성일을 검색합니다.

In 절을 이용한 검색:

  • findBy{FieldName}In: 주어진 컬렉션에 속하는 레코드를 검색합니다.

Not In 절을 이용한 검색:

  • findBy{FieldName}NotIn: 주어진 컬렉션에 속하지 않는 레코드를 검색합니다.

NULL 값 여부에 따른 검색:

  • findBy{FieldName}IsNull(): 특정 필드의 값이 NULL인 레코드를 검색합니다.
    (예: findByDescriptionIsNull())
  • findBy{FieldName}IsNotNull(): 특정 필드의 값이 NULL이 아닌 레코드를 검색합니다.
    (예: findByAuthorIsNotNull())

'백엔드 > JPA' 카테고리의 다른 글

[JPA] 중간테이블  (0) 2024.05.31
[JPA] Entity 어노테이션  (0) 2023.07.21