@GeneratedValue

임형종·2024년 1월 23일
0

스프링부트

목록 보기
15/28

기본키를 자동으로 생성하는 방법 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형 + 대체키 + 그에 맞는 적절한 키 생성전략 사용

profile
제로부터시작하는개발생활

0개의 댓글

관련 채용 정보