인프런 커뮤니티 질문&답변

은무님의 프로필 이미지
은무

작성한 질문수

자바 ORM 표준 JPA 프로그래밍 - 기본편

@MappedSuperclass 에 기본키를 명시해도 되나요?

해결된 질문

작성

·

179

0

안녕하세요.

User, Company class 에서 모두 BasicColumn 을 상속받아 사용할때에

둘다 sId 라는 기본키를 가진다고 하면 해당 컬럼도 BasicColumn 내에 작성해도 되는지 궁금합니다!

공통된 컬럼을 @MappedSuperclass에 작성할 때에 기본키/외래키에 관계없이 작성해도 되는건가요?

User.java

@Entity
public class User extends BasicColumn {
    @Id @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name="S_ID", updatable=false)
    private Long sId;
...
}

 

Company.java

@Entity
public class Company extends BasicColumn {
    @Id @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name="S_ID", updatable=false)
    private Long sId;
...
}


BasicColumn.java

@MappedSuperclass
public abstract class BasicColumn {
...// 이부분에 sId작성 후 User/Company 내에서 제거해도 되나요?
}

답변 1

0

안녕하세요. 은무님, 공식 서포터즈 y2gcoder입니다.

가능합니다! 더불어 다음 링크(클릭)을 참고해보시는 것을 추천합니다!

감사합니다.

은무님의 프로필 이미지
은무
질문자

감사합니다 😃

은무님의 프로필 이미지
은무

작성한 질문수

질문하기