본문 바로가기

JPA

1월 30일 JPA 고급매핑 구현클래스 마다 구현

고급매핑 구현클래스 마다 구현(부모없이 , 자식만)

@Entity

@Inheritance(strategy = InheritanceType,TABLE_PER_CLASS)

@DiscriminatorColumn

public abstract class item{}

이 전략에서는 부모를 abstract 추상형으로 만들어 주는것이 중요하다

 

그럼 JPA가 Item을 만들지 않고 자식들이 각각 item을 extends 받아서 컬럼을 가지고 있게 된다.

그리고 이 전략에서는 DiscriminatorColumn으로 구분할 필요가 없어서

사용되지 않는다.

 

이 전략의 단점은 조회시 타입이 부모 타입으로는 바로 찾을수가 없다 
(다형성을 사용불가능) 그래서 모든 자식을 union하여 다 찾아야되게 된다,.