기본키 매핑 (Primary key Mapping
Primary key Mapping
기본키 매핑 (Primary key Mapping
기본 키 매핑 어노테이션
직접 할당 : @Id 만 사용
자동 생성 : @GeneratedValue(strategy = GenerationType.'전략')
IDENTITY : 데이터베이스에 위임
ex) MYSQL - AUTO_INCREMENT
SEQUENCE : 데이터베이스 시퀀스 오브젝트 사용
SequenceGenerator 필요
TABLE : 키 생성용 테이블 사용, 모든 DB에서 사용
장점 : 모든 DB에 적용 가능 / 단점 : 성능
@TableGenerator 필요
AUTO : 방언에 따라 자동 지정, 기본값
권장하는 식별자 전략
기본 키 제약 조건 : Not Null, 유일, 불변
미래까지 이 조건을 만족하는 자연키는 찾기 어렵다. 대리키(대체키, ex) GenerateValue)를 사용하자.
ex) 주민등록번호도 기본키로 적절하지 않다. (ex.정책변경으로 주민등록번호 보관 불가 상황)
권장 : Long형 + 대체키 + 키 생성전략 사용
Last updated