실전 예제 4 - 상속관계 매핑
Last updated
Last updated
요구사항 추가
상품의 종류는 음반, 도서, 영화가 있고 이후 더 확장될 수 있다.//상속관계 필요(매핑)
모든 데이터는 등록일과 수정일이 필수다. //MappedSuperclasss 필요
Item을 상속받는 Album, Book, Movie 추가
판단 기준
Item만 단독으로 사용할 것인가? Item만 단독으로 사용하지 않는다면 Item을 추상클래스로 생성.
Item을 상속받는 Album, Book, Movie 추가 Item에 @Inheritance 붙이고 싱글 테이블로 전략 설정!
사용자가 많이 쓰지 않는 로직 부분이라면 상속관계를 사용하면 잘 동작해서 좋다. 하지만 데이터가 억단위로 넘어가고, 파티션해야하는 극단적인 상황이라면 최대한 테이블을 단순하게 하는 것이 중요하다. 이런 경우에는 상속관계의 자식 엔티티들은 Json으로 말아넣는(?) 경우도 있다고 한다. 정답은 없다. 처음부터 모든 애플리케이션들이 크지 않다. 그렇기 때문에 처음에는 객체 지향 설계를 하다가 임계점에 도달하고 장점<단점이 되면 시스템을 재정비한다.