@MappedSuperclass

정민기·2021년 8월 26일
0

Java ORM JPA

목록 보기
6/9

@MappedSuperclass

  • 공통 매핑 정보가 필요할 때 사용한다. 이때 DB 상에서는 서로 연관이 없으나 공통되는 속성이 존재할 때 편의를 위해 사용한다.
  • 상속 관계 매핑이 아니다.
  • 엔티디가 아니고, 테이블과 매핑하지 않는다.
  • 부모 클래스를 상속 받는 자식 클래스에 매핑 정보만 제공한다.
    (@Entity 클래스는 Entity나 @MappedSuperclass로 지정한 클래스만 상속 가능하다.)
  • 조회, 검색 불가하다. (em.find(BaseEntity) 불가)
  • 직접 생성해서 사용할 일이 없으므로 추상 클래스를 권장한다.
  • 코드 구현
@MappedSuperclass
public class BaseEntity {
  private Long id;
  private String name;
}

...

@Entity
public class Member extends BaseEntity {
  ...
}



[Reference]

Inflearn 김영한 님의 자바 ORM 표준 JPA 프로그래밍 - 기본편 : https://www.inflearn.com/course/ORM-JPA-Basic/dashboard

0개의 댓글

관련 채용 정보