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

wschung1113님의 프로필 이미지
wschung1113

작성한 질문수

자바 ORM 표준 JPA 프로그래밍 - 기본편

실전 예제 2 - 연관관계 매핑 시작

Order entity에서 private Long memberId; 를 지우면 memberId를 통한 select 쿼리는 못 날리게 되는거죠?

작성

·

213

0

Order entity에서 private Long memberId; 를 지우면 memberId를 통한 select 쿼리는 못 날리게 되는거죠?

예를 들어 member1 (id = 1)이 주문한 모든 order를 조회하고 싶을 때

select * from orders where member_id = 1

이런식으로 order 레코드들을 찾을텐데

매핑을 하면 이런 쿼리는 안날리고

member1.getOrders() 이런식으로 list를 받는 메소드를 사용하는거죠?

답변 1

1

안녕하세요. wschung1113님, 공식 서포터즈 David입니다.

네, 맞습니다. 조인할 때 memberId (외래키)를 사용하여 주문정보를 가져와야 하기 때문입니다.

member1.getOrders()를 하면 연관관계 매핑된 엔티티를 조인하여 가져오거나 쿼리를 이중으로 날려서 가져오게 됩니다. 이 부분은 직접 실행해보시면 가장 빠르게 확인해볼 수 있습니다.

감사합니다.

wschung1113님의 프로필 이미지
wschung1113

작성한 질문수

질문하기