인프런 커뮤니티 질문&답변
n+1 문제 개념이 이게 맞나요?
작성
·
322
1
오더 엔티티에서 패치 타입이 아래와 같다면
@ManyToOne(fetch = FetchType.EAGER)
@JoinColumn(name = "member_id")
private Member member;
오더가 100일 경우 각각의 오더에 대한 멤버 정보를 조회하기 위해 쿼리를 1번씩 더 날리게 됨
그래서 오더가 100개인것에 대해 1번씩 더한다고 해서
n+1 문제가 되는건가요? 그럼 성능상 문제가 될수 있고
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "member_id")
private Member member;
이렇게 바꾸면 오더 엔티티를 조회할때 오더 테이블만 조회하는게 되서 성능상으로 무리가 안간다는 거죠?
퀴즈
41%나 틀려요. 한번 도전해보세요!
일대다(One-to-Many) 관계에서 외래 키(Foreign Key)는 일반적으로 어느 쪽에 위치해야 할까요?
'일(One)' 쪽에 위치합니다.
'다(Many)' 쪽에 위치합니다.
관계의 소유자(Owner)가 아닌 쪽에 위치합니다.
관계 설정에 따라 달라지므로 정해진 규칙이 없습니다.





