wave.log
로그인
wave.log
로그인
[JPA] 기본 키 매핑
SJ
·
2022년 12월 14일
팔로우
0
JPA
목록 보기
5/12
기본 키 매핑 어노테이션
@Id
@GeneratedValue
기본 키 매핑 방법
직접 할당: @Id
자동 생성: @GeneratedValue
IDENTITY: 데이터베이스에 위임,MYSQL(Auto Increment)
SEQUENCE: 데이터베이스 시퀀스 오브젝트 사용, ORACLE
IDENTITY 전략 - 특징
기본 키 생성을 데이터베이스에 위임한다.
주로 MySQL,PostgreSQL,SQL Server,DB2에서 사용(MySQL의 경우 AUTO_INCREMENT)
JPA는 트랜잭션 커밋 시점에 INSERT SQL 실행
AUTO_INCREMENT는 데이버베이스에 INSERT SQL을 실행한 이후에 ID값을 알 수 있다.
IDENTITY 전략은 em.persist() 즉시 INSERT SQL 실행하고 DB에서 식별자를 조회(SEQUENCE 전략은 INSERT SQL 실행 전에도 ID값 조회 가능)
권장하는 식별자 전략
기본 키 제약 조건: null 아님, 유일,
변하면 안됨.
대리 키 이용하기
권장 : Long타입 + 대체키 + 키 생성전략 사용
SJ
slowly But Surely
팔로우
이전 포스트
[JPA] 엔티티 매핑
다음 포스트
[JPA] 양방향 매핑시 가장 많이 하는 실수
0개의 댓글
댓글 작성