JPA [기본] JPQL 기본문법, 쿼리 API

신재원·2023년 2월 1일
0

JPA 기본

목록 보기
23/31

📌 JPAL 문법

select절,
from
절,
[where_절],
[groupby_절],
[having_절],
[orderby_절]

update문 :: update절 [where_절]
delete문 :; delete절 [where 절]

✔ 예시 ) select m from Member (엔티티 객체) as m where m.age > 18

  • 엔티티 와 속성은 대소문자 구분 O (Member, age) ➡ 개발자가 구현한 로직처럼
  • JPQL 키워드는 대소문자 구분 X (SELECT, FROM, where)
  • 엔티티 이름 사용, 테이블 이름이 아님
  • 별칭은 필수(m), (as는 생략가능)

📌 TypeQuery, Query

  • TypeQuery : 반환 타입이 명확 할때 사용 (String인지 int인지 등)
  • Query : 반환 타입이 명확하지 않을때 사용

👀 결과 조회 API

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

파라미터 바인딩 - 이름 기준, (위치 기준)

  • 위치기준은 권장하지 않는 방식이다.
  • setParameter을 사용해 값을 꺼내오는것이 효율적이다.

0개의 댓글