- 예시 (Order 엔티티 클래스를 외부에 노출)
- 예시
(위의 사진과 다르게 Dto라는 클래스를 만들어 필요한 엔티티의 데이터값을 반환하여 사용한다)
- 예시
(fetch 조인을 사용해 엮여있는 데이터를 한방쿼리로 조회),
LAZY (지연로딩) 발생 X
(inner)생략가능 join
📌 쿼리 방식 선택 권장 순서
1. 우선 엔티티를 DTO로 변환하는 방법을 선택한다.
2. 필요하면 패치 조인으로 성능을 최적화 한다 --> 대부분 성능 이슈가 해결된다.
3. 그래도 안되면, DTO로 직접 조회하는 방법을 사용한다.
4. 최후의 방법은 JPA가 제공하는 네이티브 SQL이나 스프링 JDBC Template을 사용해 SQL을 직접 작성한다.