[JPA 기본] 매핑 정보 (공통 속성) 상속

강신현·2022년 7월 16일
0

✅ @MappedSuperclass

모든 엔티티에서 공통 매핑 정보가 필요할 때 사용한다. (공통 속성 사용)

  • 부모 클래스를 상속 받는 자식 클래스에 매핑 정보만 제공
  • 조회, 검색 불가(em.find(BaseEntity) 불가)
  • 직접 생성해서 사용할 일이 없으므로 추상 클래스 (abstract class) 권장

코드

  • BaseEntity
    • @MappedSuperclass
    • 추상 클래스
@MappedSuperclass
public abstract class BaseEntity {

    private String createdBy;
    private LocalDateTime createdTime;
    private String lastModifiedBy;
    private LocalDateTime lastModifiedTime;
 	
    getter;
    setter;
}
  • Member
    : BaseEntity 상속
@Entity
public class Member extends BaseEntity{

    @Id
    @GeneratedValue
    @Column(name = "MEMBER_ID")
    private Long id;
    
    ...(생략)
}
profile
땅콩의 모험 (server)

0개의 댓글