[TIL/JPA] 기본개념 : 프록시와 연관관계 관리[즉시(EAGER)로딩, 지연(LAZY)로딩]
·
TIL/JPA
1. 프록시어느 경우에 Member만 가져오고, 어느 경우에는 Member와 Team 같이 가져와야한다.Member만 가져와야 하는데 Team도 같이 가져오는 경우에는 낭비이다.이런 경우를 해결하기 위해서는 지연 로딩과 즉시 로딩을 사용해서 해결을 하는데, 해당 개념을 공부하기 위해서는 프록시에 대해서 먼저 알아봐야한다! JPA에서는 find() 메서드가 아닌 getReference() 메서드를 제공하고 있다.em.find() 메서드는 데이터베이스를 통해서 실제 엔티티 객체를 조회를 하지만,em.getReference() 메서드는 참조를 가져오는 메서드이며, 데이터베이스 조회를 미루는 가짜(프록시) 엔티티 객체 조회. 즉, 쿼리를 날리지 않고 조회를 하는 메서드이다. 아래 코드를 보고 어떻게 동작하는지 ..