2024/08/22 2

JPA 상속관계 맵핑

• 슈퍼타입 서브타입 논리 모델을 실제 물리 모델로 구현하는 방법    • 각각 테이블로 변환 -> 조인 전략    • 통합 테이블로 변환 -> 단일 테이블 전략    • 서브타입 테이블로 변환 -> 구현 클래스마다 테이블 전략  조인 전략 장점 테이블 정규화 외래 키 참조 무결성 제약조건 활용가능 저장공간 효율화 단점 조회시 조인을 많이 사용, 성능 저하 조회 쿼리가 복잡함 데이터 저장시 INSERT SQL 2번 호출  단일 테이블 전략장점조인이 필요 없으므로 일반적으로 조회 성능이 빠름조회 쿼리가 단순함단점자식 엔티티가 매핑한 컬럼은 모두 null 허용단일 테이블에 모든 것을 저장하므로 테이블이 커질 수 있다. 상 황에 따라서 조회 성능이 오히려 느려질 수 있다.   구현 클래스마다 테이블 전략이 전..

JPA 2024.08.22

JPA 연관관계 매핑

다대일 [N:1]일대다 [1:N]일대일 [1:1]다대다 [N:M] 연관관계 매핑 시 고려사항 3가지 다중성단방향, 양방향연관관계의 주인 다중성다대일: @ManyToOne -> 가장 많이 쓴다.일대다: @OneToMany일대일: @OneToOne다대다: @ManyToMany -> 실무에서 사용하면 안 된다!대칭성이 있다고 생각하면 생각하기 편하다. 단방향, 양방향테이블외래 키 하나로 양쪽 조인 가능사실 방향이라는 개념이 없음 객체참조용 필드가 있는 쪽으로만 참조 가능한쪽만 참조하면 단방향양쪽이 서로 참조하면 양방향 ->이해하기 쉽게 표현한 것이지 방향은 하나다.연관관계의 주인 • 테이블은 외래 키 하나로 두 테이블이 연관관계를 맺음• 객체 양방향 관계는 A->B, B->A처럼 참조가 2군데• 객체 양방향 ..

JPA 2024.08.22