veganwithbacon 2023. 1. 4. 15:26
반응형

  EntityGraph란?

FetchJoin의 간편 버전이라고 생각하면 된다.

연관관계가 있는 엔티티를 조회할 경우 지연 로딩으로 설정되어 있다면 연관관계에서 종속된 엔티티의 쿼리를 실행 시에 select 되지 않고 proxy 객체를 만들어 엔티티가 적용시킨다.

그 후 해당 proxy 객체를 호출할 때마다 select 쿼리가 실행된다.

 

이처럼 연관관계가 LAZY로 되어있다면 Fetch 조인을 사용해 여러 번의 쿼리를 한 번에 해결할 수 있다.

 

@EntityGraph는 Data JPA에서 Fetch Join을 어노테이션으로 사용할 수 있도록 만들어 준 기능이라고 생각하면 된다.

 

더 정리하려 했으나 글만 적는것보다는 Querydsl을 공부한 뒤에 코드에 적용시켜보고 경험을 바탕으로 작성하겠다.

이해가 잘 안돼서 제대로 풀어쓰지를 못하겠다.

반응형