[내일배움캠프Spring-43일차] N+1 문제
·
백엔드 부트캠프/TIL
1️⃣ FetchType : Eager 와 LazyN+1 문제에 대해서 생각을 할려면,먼저 Eager 와 Lazy 의 개념에 대해서 알아야한다."연관된 엔티티를 언제 가져올지를 결정하는 방식, Fetch Type 에는 두 가지가 있다."연관된 엔티티를 전부다 조회할 건지? 필요한 것만 나중에 조회할 것인지? 이렇게 두 종류가 있다고 생각하면 된다.1. Eager- Eager 라는 것은 엔티티를 조회할 때 즉시 연관 객체도 함께 로딩 된다- 초기 로딩이 느릴 수 있다. (불필요한 데이터까지 가져옴)- 진짜 항상 같이 쓰는 관계에서 사용해야 한다.- 코드 예시는 아래에서 비교할 때 보여주겠다.2. Lazy- 연관 객체는 실제로 사용할 때 로딩된다. 해당 연관 객체를 get 등을 할 때 로딩되는 것이다.- 처..