LOADING STRATEGY
로딩 전략은 전역 기본값보다 use case 기준으로 고른다
JPA의 기본 EAGER 연관은 보조 SELECT와 N+1로 이어질 수 있어, LAZY 중심 설계와 명시적 fetch가 안전하다.
LAZYEAGERUse case
LAZY 중심 설계
default
대부분 연관은 필요할 때만 로딩
query
fetch join, entity graph, batch fetch로 명시
benefit
불필요한 SQL과 데이터 전송 감소
EAGER 남용 위험
always
필요 없어도 가져오려는 경향
select
join fetch 누락 시 보조 SELECT 반복 가능
debug
어디서 SQL이 늘었는지 추적 어려움