Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Spring Security
- 값 타입 컬렉션
- TABLE
- MySQL
- ddl-auto
- 값 타입 비교
- AnonymousAuthenticationFilter
- 상속관계 매핑
- 동시 세션 제어
- JPQL
- 즉시 로딩
- jpa
- SessionManagementFilter
- spring jpa
- 기본 키 매핑
- form login
- Remember-me
- 다대다
- 세션 생성 정책
- 세션 고정 보호
- field column mapping
- 임베디드 타입
- Database
- 기본값 타입
- 지연 로딩
- orphanRemovel
- 양방향 매핑
- 객제지향 쿼리 언어
- concurrentsessionfilter
- @MappedSuperclasss
Archives
- Today
- Total
hoondev
[Spring JPA] @MappedSuperclass 본문
@MappedSuperclass
공통 매핑 정보가 필요할 때 사용한다.
실제 테이블과 매핑되지 않는다.
@MappedSuperclass
public abstract class BaseEntity {
@Id @GeneratedValue
private Long id;
private String name;
...
}
@Entity
public class Member extends BaseEntity {
private String email;
}
@Entity
public class Seller extends BaseEntity {
private String shopName;
}
이렇게 하면 테이블에 BaseEntity의 id, name을 상속 받게 된다.
BaseEntity는 엔티티가 아니고 테이블과 매핑되지도 않는다.
조회, 검색도 불가하다. 직접 생성할일이 없으므로 보통 추상클래스로 만든다.
@MappedSuperclasss는 테이블과 관계 없고, 단순히 엔티티가 공통으로 사용하는 매핑 정보를 모으는 역할을 한다.
주로 등록일, 수정일, 등록자, 수정자 같은 전체 엔티티에서 공통 으로 적용하는 정보를 모을 때 사용 (@Entity 클래스는 엔티티나 @MappedSuperclass로 지 정한 클래스만 상속 가능)
Reference
'Spring JPA' 카테고리의 다른 글
[Spring JPA] 즉시 로딩과 지연 로딩 (1) | 2023.02.02 |
---|---|
[Spring JPA] 프록시 (0) | 2023.02.01 |
[Spring JPA] 상속관계 매핑 (0) | 2023.01.30 |
[Spring JPA] 다대다 관계 (0) | 2023.01.29 |
[Spring JPA] 일대일 관계 (0) | 2023.01.28 |
Comments