티스토리 뷰

1. 직접 할당 : 기본 키를 애플리케이션에서 직접 할당

2. 자동 생성 : 대리 키 사용 방식

 - IDENTITY : 기본 키 생성을 데이터베이스에 위임(MySQL). 먼저 엔티티를 DB에 저장한 후에 식별자를 조회해서 엔티티의 식별자에 할당.

 - SEQUENCE : 데이터베이스 시퀀스를 사용해서 기본 키 할당(오라클). persist() 호출시 먼저 DB 시퀀스를 사용해서 식별자를 조회. 그리고 조회한 식별자를 엔티티에 할당 후 엔티티를 영속성 컨텍스트에 저장)

 -> IDENTITY나 SEQUENCE전략은 사용하는 데이터베이스에 의존

 - TABLE : 키 생성 테이블을 사용 -> 모든 데이터베이스에서 사용 가능

키 생성 전략을 사용하려면 persistence.xml에

hibernate.id.new_generator_mappings=true

 위와 같은 속성을 추가해야 한다.(기본값은 JPA 과거버전과의 호환성을 위해 false)

출처 : 자바 ORM 표준 JPA 프로그래밍(P.131)

300x250
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/12   »
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
글 보관함