목록2025/06/02 (1)
코딩 이래요래
위클리 페이퍼 - 9주차
Q. JPA에서 발생하는 N+1 문제의 발생 원인과 해결 방안에 대해 설명하세요. JPA에서는 연관관계가 @ManyToOne, @OneToOne인 경우 fetchType의 default는 EAGER이다.즉시 로딩이란, 예를 들어 User와 BinaryContent(Profile)의 연관관계가 @OneToOne일 경우, User를 조회하면 JPA는 내부적으로 BinaryContent까지 함께 조회하는 것을 말한다. 반면 fetchType을 LAZY로 설정하면, User를 조회할 때는 User 엔티티만 조회하는 쿼리를 작성하여 데이터를 조회하고,이후에 user.getProfile()처럼 연관 필드에 실제 접근하는 순간에 BinaryContent를 SELECT 별도의 쿼리가 실행된다.이를 지연로딩이라고 부..
위클리 페이퍼
2025. 6. 2. 16:12