Web/JPA

EP4. API 개발 순서

 

한눈에 정리

엔티티 조회

엔티티는 그대로 반환하지 말고 DTO로 변환해서 반환해라

컬렉션은 패치조인 하지말고 지연로딩을 유지후 BatchSize로 최적화해라

 

DTO 직접 조회

컬렉션은 IN 절을 이용해 메모리에 미리 조회해서 최적화해라

 

 

 

 

 

API 개발 순서

 

1. 엔티티 조회 방식으로 먼저 접근하기

    1) 페치 조인으로 쿼리 수를 최적화한다.

    2) 컬렉션을 최적화해라

        1. 페이징이 필요하면 hibernate.default_batch_fetch_size 혹은 @BatchSize로 최적화해라

        2. 페이징이 필요 없다면 페치조인을 사용해라

2. 엔티티 조회 방식으로 해결이 안되면 DTO 조회 방식을 사용해라

    1) 컬렉션은 IN 절을 이용해 메모리에 미리 조회해서 최적화해라

3. DTO 조회 방식으로도 해결이 안되면 NativeSQL 이나 스프링 Jdbc Template 을 이용해라