기본키를 자동으로 생성하는 방법 4가지

- IDENTITY : @GeneratedValue(strategy = GenerationType.IDENTITY)
1.기본키 생성을 데이터베이스에게 위임하는 방식으로
2.id값을 따로 할당하지 않아도 데이터베이스가 자동으로 AUTO_INCREMENT를 하여
기본키를 생성
3.기본키를 자동으로 생성할 때에는 @Id와 @GenerratedValue 어노테이션이
함께 사용되어야 한다.

- SEQUENCE : @GeneratedValue(strategy = GenerationType.SEQUNCE)
1.데이터 베이스의 Sequence Object를 사용하여 데이터베이스가 자동으로 기본키를 생성해준다.
2.@SequenceGenerator가 필요하다.

-
TABLE : @GeneratedValue(strategy = GenerationType.TABLE)
1.키를 생성하는 테이블을 사용하는 방법으로 Sequence와 유사하다.
2.@TableGenerator가 필요하다.
-
AUTO : @GeneratedValue(strategy = GenerationType.AUTO)
1.기본 설정 값으로 각 데이터베이스에 따라 기본키를 자동으로 생성한다.
기본키의 제약조건
1.null이면 안된다.
2.유일하게 식별할 수 있어야한다.
3.변하지 않는 값이어야 한다.
권장하는 식별키 구성방법
Long형 + 대체키 + 그에 맞는 적절한 키 생성전략 사용