본문 바로가기
Spring/JPA

MappedSuperclass

by o3oppp 2023. 12. 20.

MappedSuperclass

  • @MappedSuperclass
  • 공통 매핑 정보가 필요할 때 사용
  • 상속관계 매핑이 아님
  • 엔티티가 아니므로 테이블과 매핑 불가
  • 부모 클래스를 상속 받는 자식 클래스에 매핑 정보만 제공
  • 조회, 검색 불가
  • 추상 클래스 권장
  • 테이블과 관계가 없고 단순히 엔티티가 공통으로 사용하는 매핑 정보를 모으는 역할
  • 주로 ADD_DATE, ADD_TIME, CHANGE_DATE, CHANGE_TIME 등과 같은 전체 엔티티에서 공통으로 적용하는 정보를 모을 때 사용
  • null 허용
@MappedSuperclass
public class BaseEntity {

    private String createdBy;
    private LocalDateTime createdDate;
    private String lastModifiedBy;
    private LocalDateTime lastModifiedDate;

    public String getCreatedBy() {
        return createdBy;
    }

    public void setCreatedBy(String createdBy) {
        this.createdBy = createdBy;
    }
    ...
}
@Entity
public class Member extends BaseEntity{
    ...
}

'Spring > JPA' 카테고리의 다른 글

즉시로딩, 지연로딩  (1) 2023.12.23
프록시(Proxy)  (0) 2023.12.20
상속관계 매핑  (0) 2023.12.20
연관관계 매핑  (1) 2023.12.19
엔티티 매핑  (0) 2023.08.25