본문 바로가기
Spring/JPA/Hibernate

JPQL 기본 문법과 쿼리 API

by 개복이 2021. 5. 21.

JPQL 문법

  • select m from Member as m where m.age > 18
  • 엔티티와 속성은 대소문자 구분O (Member, age)
  • JPQL 키워드는 대소문자 구분X (select, from, where)
  • 엔티티 이름 사용(Member), 테이블 이름이 아니다.
  • 별칭은 필수(m) (as는 생략가능)

 

TypeQuery, Query

  • TypeQuery : 반환 타입이 명확할 때 사용
  • Query : 반환 타입이 명확하지 않을 때 사용

 

 

 

 

 

 

결과 조회 API

  • query.getResultList() : 결과가 하나 이상일 때, 리스트 변환
    • 결과가 없으면 빈 리스트 반환
  • query.getSingleResult() : 결과가 정확히 하나, 단일 객체 반환
    • 결과가 없으면 : javax.persistence.NoResultException
    • 둘 이상이면 : javax.persistence.NonUniqueResultException

 

 

 

 

 

 

 

 

 




파라미터 바인딩은 이름 기준으로 사용해야 한다.

 

 

 

Reference

  • 자바 ORM 표준 JPA 프로그래밍

'Spring > JPA/Hibernate' 카테고리의 다른 글

JPQL 페이징  (0) 2021.05.22
JPQL 프로젝션(SELECT)  (0) 2021.05.21
JPQL  (0) 2021.05.20
값 타입의 비교  (0) 2021.05.19
값 타입과 불변 객체  (0) 2021.05.18

댓글