Notice
Recent Posts
Recent Comments
Link
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

개발자되기 프로젝트

다형성 쿼리 본문

인프런/[인프런] 자바ORM 표준 JPA 프로그래밍

다형성 쿼리

Seung__ 2021. 8. 16. 21:11

다형성을 활용하는 경우 JPA가 특정 기능을 제공

 

 

1. TYPE


  • 조회 대상을 특정 자식으로 한정
  • 예를들어 Item중에서 Book, Movie를 조회해
  • JPQL
    • select i from Item i
      where type(i) IN(Book, Movie)
  • SQL
    • select i from i
      where i.DTYPE in ('B','M')

 

 

2. TREAT(JPA2.1)


  • 자바의 타입 캐스팅과 유사
  • 상속 구조에서 부모 타입을 특정 자식 타입으로 다룰 때 사용
  • FROM, WHERE, SELECT(하이버네이트지원) 사용
  • 예) 부모인 Item과 자식 Book이 있다.
  • JPQL
    • select i from Item i
      where treat(i as Book).auther = ‘kim’
  • SQL
    • select i.* from Item i
      where i.DTYPE = ‘B’ and i.auther = ‘kim’

'인프런 > [인프런] 자바ORM 표준 JPA 프로그래밍' 카테고리의 다른 글

JPQL Named 쿼리  (0) 2021.08.16
[JPQL] 엔티티 직접 사용  (0) 2021.08.16
Fetch Join2  (0) 2021.08.16
FETCH JOIN  (0) 2021.08.16
경로 표현식  (0) 2021.08.16
Comments