
[JPA] @MappedSuperclass 핵심 개념
2022. 9. 9. 20:25
스프링/JPA
MappedSuperclass 개념 핵심부터 말하자면, 객체는 상속관계에 있으나 테이블은 상속관계 매핑이 아닐 때 사용한다. 논리적으로 상속 관계에 있는 엔티티 클래스 간에 매핑 관계를 만드는게 아니라, 단순히 공통된 매핑 컬럼을 하나의 부모 객체 안에 몰아넣고자 할 때 사용하는 어노테이션이다. Member와 Seller 테이블이 있다. 이 두 테이블은 공통적으로 id와 name을 공통 속성으로 갖는다. 우리는 이 두 속성을 부모 객체에 할당하고자 하는거다. 지금은 두 테이블밖에 없지만 만약 테이블이 수십개가 넘어간다고 가정해보자. 그리고 공통된 속성은 id와 name에서 그치는 것이 아니라 등록일자, 수정일자, 등록한 사람, 수정한 사람 등등 점점 늘어난다고 가정하자. 그때마다 모든 엔티티 클래스에 가..