Java/JPA

@MappedSuperclass

amungstudy 2023. 11. 17. 17:44

id,name 등 공통 매핑 정보가 필요할 때 사용, 엔티티가 아님에 주의!

단순히 엔티티가 공통으로 사용하는 매핑정보를 모으는 역할

@MappedSuperclass
public abstract class BaseEntity {
    private String createBy;
    private LocalDateTime createdDate;
    private String lastModifiedBy;
    private LocalDateTime lastModifiedDate;

 

속성만 상속받을 때 쓰는 MappedSuperclass

부모 클래스를 상속 받은 자식 클래스에 매핑 정보만 제공한다. 직접 생성해서 사용할 일이 없으므로 추상 클래스 권장함.

필드 예시는 운영 시 기본으로 깔려야하는 녀석들. 나중에 Spring Data 쓰면 4가지 다 어노테이션으로 쉽게 입력가능~~