본문 바로가기

Join4

API 조회 성능 최적화 - DTO 직접 조회 0. 개요 - 일반적으로 JPA에서 조회를 수행할 때, Entity로부터 조회된 결과를 DTO를 통해 전달한다. - 그러나 이러한 과정을 스킵하고 바로 DTO를 통해 조회할 수 있는 방법은 없을까? - 이번 포스팅에서는 DTO를 통해 직접 조회 방법에 대해 알아보자. 1. DTO를 통한 직접 조회 - 이전 포스팅에서는 Entity의 조회 결과를 DTO에 넘겨서 DTO 객체를 반환하는 방법으로 조회하였다. - DTO를 통한 직접 조회 방법은 조회 결과를 DTO 객체로 직접 반환하는 방법이다. a) DTO 클래스 생성 - 다음과 같이 DTO 클래스를 생성한다. @Data public class SimpleOrderQueryDto { private Long orderId; private String name;.. 2022. 5. 30.
31. JPQL - Fetch Join 개념 0. 개요 - 이번 포스팅은 JPQL의 주요 기능 중 하나인 Fetch Join에 대해서 알아보자. - Fetch Join을 설명하기 위해 다음 Entity를 예시로 사용할 예정이다. @Entity public class Player { @Id @GeneratedValue private Long id; private String name; private String position; private int age; @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "TEAM_ID") private Team team; // Getter & Setter 생략 } @Entity public class Team { @Id @GeneratedValue private L.. 2022. 5. 4.
30. JPQL - 경로 표현식과 묵시적 JOIN 0. 개요 - 이번 포스팅에서는 경로 표현식과 묵시적 JOIN에 대해서 알아보자. - 설명을 위해 다음 객체를 사용할 예정이다. @Entity public class Player { @Id @GeneratedValue private Long id; private String name; private String position; private int age; @Embedded private Address address; @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "TEAM_ID") private Team team; // Getter & Setter 생략 } @Entity public class Team { @Id @GeneratedValue priva.. 2022. 5. 3.
26. JPQL - 조인 0. 개요 - JPQL에서 Join을 사용하는 방법에 대해서 알아보자. 1. Join의 종류 a) 내부 조인(inner join) - 내부 조인은 INNER JOIN 키워드를 사용한다. - 내부 조인은 JOIN의 기본 설정(= default)이다. - 그러므로 그냥 JOIN 키워드만 사용하더라도 내부 조인을 수행한다. - 내부 조인은 두 테이블을 조인할 때, 매칭되는 데이터가 존재하는 데이터만을 출력한다. - 예를 들어, 테이블 A에는 A, B, C가 있고 테이블 B에는 A, B만 존재한다고 가정해보자. - 내부 조인을 사용하는 경우, 조인 결과가 A, B만 출력된다. - 즉, C와는 매칭되는 데이터가 없으므로 C는 출력되지 않는다. - 다음 예시 코드를 보자. SELECT p FROM Player p .. 2022. 4. 26.