본문 바로가기

매핑2

[JPA] 고급 매핑 상속관계 매핑 · 관계형 데이터베이스는 상속 관계 X · 슈퍼타입, 서브타입 관계라는 모델링 기법이 객체 상속과 유사 · 상속관계 매핑: 객체의 상속과 구조와 DB의 슈퍼타입, 서브타입 관계를 매핑 · 슈퍼타입, 서브타입 논리 모델을 실제 물리 모델로 구현하는 방법 - 각각 테이블로 변환 → 조인 전략 - 통합 테이블로 변환 → 단일 테이블 전략 - 서브타입 테이블로 변환 → 구현 클래스마다 테이블 전략 주요 어노테이션 · @Inheritance(strategy = InheritanceType.XXX) - JOINED: 조인전략 - SINGLE_TABLE: 단일 테이블 전략 - TABLE_PER_CLASS: 구현 클래스마다 테이블 전략 · @DiscriminatorColumn(name = "DTYPE").. 2023. 10. 31.
[JPA] 엔티티 매핑 (Entity Mapping) 엔티티 매핑 종류 · 객체와 테이블 매핑: @Entity, @Table · 필드와 컬럼 매핑: @Column · 기본 키 매핑: @Id · 연관관계 매핑: @ManyToOne, @JoinColumn 객체와 테이블 매핑 @Entity · @Entity가 붙은 클래스는 JPA가 관리, 엔티티라 한다. · JPA를 사용해서 테이블과 매핑할 클래스는 @Entity 필수 · 기본 생성자 필수(파라미터가 없는 public 또는 protected 생성자) · final 클래스, enum, interface, inner 클래스 사용 X · 저장할 필드에 final 사용 X 속성 · name - JPA에서 사용할 엔티티 이름 지정 - 기본값: 클래스 이름을 그대로 사용 - 같은 클래스 이름이 없으면 가급적 기본값 사용 .. 2023. 10. 17.