상속관계 매핑 

   관계형 데이터베이스는 상속관계가 없다 

   슈퍼타입 서브타입 관계라는 모델링 기업이 객체 상속과 유사

   상속관계 매핑: 객체의 상속과 구조와 DB의 슈퍼타입 서브타입 관계를 매핑 

 

@DiscriminatorColumn

디타입 

디비만 쿼리 나렷을때 앨범때문에 들어왔는지 무비인지 알수가 없기 때문에 

그렇기 때문에 디타입은 웬만하면 넣어두는게 낫다

 

@DiscriminatorValue("B")

테이블마다 디타입에 들어갈 이름을 정할 수 있다 

 

@MappedSuperclass 

  상속관계 매핑하고 관계가 없다. 

  공통 매핑 정보다 필요할 때 사용 (id, name) 

   조회 검색불가 (em.find(BaseEntity)불가)

  직접 생성해서 사용할 일이 없으므로 추상 클래스 권장 

 

단일테이블 

   1. 조인이 필요가 없다 

   2.  조회 쿼리가 단순함 

  

  단점 

  1. 자식 엔티티가 매핑한 컬럼은 모두 null 허용 - 데이터 무결성의 입장에서는 좀 그렇다. 

  2. 단일 테이블에 모든 것을 저장하므로 테이블이 커질 수 있다. 상황에 따라서 조회 성능이 오히려 느려질 수 있다. 

 

 

 

 

 

 

'- 코딩 공부 > Spring' 카테고리의 다른 글

JPA - 엔티티 맵핑  (0) 2023.05.25
JPA 소개  (0) 2023.05.02
스프링 데이터 JPA - 섹션7 나머지 기능들  (0) 2023.04.26
섹션 4. 쿼리 메소드 기능  (0) 2023.04.11
11. 스프링 트랜잭션 전파2 - 활용  (0) 2023.01.31

+ Recent posts