문서의 선택한 두 판 사이의 차이를 보여줍니다.
다음 판 | 이전 판 다음 판 양쪽 다음 판 | ||
java:hibernate:id_generator [2015/04/19 19:08] kwon37xi 만듦 |
java:hibernate:id_generator [2018/10/01 12:29] kwon37xi [hibernate.id.new_generator_mappings] |
||
---|---|---|---|
줄 1: | 줄 1: | ||
====== Hibernate Primary Key (ID) Generator ====== | ====== Hibernate Primary Key (ID) Generator ====== | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
===== hibernate.id.new_generator_mappings ===== | ===== hibernate.id.new_generator_mappings ===== | ||
- | * 최신버전에서는 '' | + | * 최신버전에서는 '' |
+ | * 구버전과의 호환성을 위한 것이 아니면 이 값을 **항상 '' | ||
* [[http:// | * [[http:// | ||
* [[http:// | * [[http:// | ||
+ | * [[https:// | ||
+ | |||
+ | ===== 기본 Custom Generator들 ===== | ||
+ | * [[https:// | ||
+ | |||
==== Sequence에 대한 변화 ==== | ==== Sequence에 대한 변화 ==== | ||
줄 13: | 줄 21: | ||
* 기존방식 : [[https:// | * 기존방식 : [[https:// | ||
* 새 방식 : [[https:// | * 새 방식 : [[https:// | ||
+ | |||
+ | ===== Identity (Auto Increment) ===== | ||
+ | <code java> | ||
+ | @Entity | ||
+ | public class EntityWithIdentityId { | ||
+ | @Id @GeneratedValue(strategy=GenerationType.IDENTITY) Long id; | ||
+ | : | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | ===== Sequence ===== | ||
+ | <code java> | ||
+ | @Entity | ||
+ | // Define a sequence - might also be in another class: | ||
+ | @SequenceGenerator(name=" | ||
+ | public class EntityWithSequenceId { | ||
+ | // Use the sequence that is defined above: | ||
+ | @GeneratedValue(strategy=GenerationType.SEQUENCE, | ||
+ | @Id Long id; | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | ===== Table ===== | ||
+ | <code java> | ||
+ | @Entity | ||
+ | @TableGenerator(name=" | ||
+ | public class EntityWithTableId { | ||
+ | @GeneratedValue(strategy=GenerationType.TABLE, | ||
+ | @Id Long id; | ||
+ | } | ||
+ | </ | ||
+ | |||
===== IdGenerator ===== | ===== IdGenerator ===== | ||
줄 59: | 줄 99: | ||
} | } | ||
</ | </ | ||
- | * [[https:// | + | * '' |