인프런 커뮤니티 질문&답변

k_ms1998님의 프로필 이미지
k_ms1998

작성한 질문수

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

상품 수정

상속관계 JOINED일때 persist(), find()

작성

·

257

0

안녕하세요 강사님, 덕분에 좋은 수업 잘 듣고 있습니다! 질문이 있어서 글을 남깁니다

 

예제와는 다르게, 저는 Item을 슈퍼로 두고, album, book, movie를 서브 객체로 상속받아서 해보고 있습니다.

그런데, Repository는 예제와 동일하게 개발했음에도 불구하고, persist() 또는 find() 실행시 JPA가 알아서 item에 album, book, movie을 외부 조인해서 쿼리문을 처리하는 것을 확인했습니다.

이렇게 상속 관계에 있을때 자동으로 조인을 해주는 것이 기본적으로 일어나는 상황이 맞는건가요?

또한, 저는 Item과 Book만 외부 조인을 하면 되는데, 자동으로 상속 관계에 있는 album, book, moive 모두 외부 조인을 하는 것으로 보이는데요, 이렇게되면 성능 면에서 적합하지 않을 것 같습니다. 혹시 book인 것을 확인하고 book만 외부 조인하도록 하는 팁이 있을까요?

 

감사합니다!

답변 2

0

k_ms1998님의 프로필 이미지
k_ms1998
질문자

JPA 기본편에서 제가 놓친 부분이 있었던것 같습니다. 다시 한번 확인해 보겠습니다!

답변 감사드립니다!

0

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. k_ms1998님

1. 상속에 대한 자세한 내용은 JPA 기본편을 참고해주세요^^

2. 혹시 book인 것을 확인하고 book만 외부 조인하도록 하는 팁이 있을까요?

-> 이 경우 BOOK 타입을 명시해서 조회해야 합니다.

감사합니다.

 

k_ms1998님의 프로필 이미지
k_ms1998

작성한 질문수

질문하기