지연로딩
-
지연로딩, 즉시로딩JPA 2021. 8. 22. 21:56
Team과 Member의 관계가 1:N이고 member를 조회 할 때 member만 사용하는대 Team까지 가져오면 비용적 손해다. 그럴 경우 LAZY로딩을 이용해 proxy로 조회하는 방법을 쓰면된다. ex) @ManyToOne(fetch = FetchType.LAZY) // 지연로딩 주의사항 1.기본은 모두 LAZY로딩으로 잡아 놓고, 필요한 부분만 EAGER로딩으로 변경하는 것을 권장하고 있다. 이유 1-1 JPQL로 작성시 N+1 이슈발생. 1-2 다른 팀원이 member만 조회하려고 findById를 날렸는대, team 쿼리까지나가면 당황. 2. 연관관계 별로 fetch 기본값이 다름. @ManyToOne -> EAGER @OneToOne -> EAGER @ManyToMany -> LAZY @..