@Enumerated

김형준 Kim Hyeong Jun·2022년 12월 6일
0
post-thumbnail

@Enumerated 어노테이션을 활용하여 EntityEnum타입을 활용할 수 있다.

두가지의 기능 지원

  1. ORDINAL : Enum의 선언된 순서를 Integer 값으로 변환하여 DB column에 넣어준다. 즉, Enum 내부에 선언된 수들의 순서가 매우 중요하다.
    DB column은 numeric 타입.

  2. STRING : Enum의 선언된 상수의 이름을 String 클래스 타입으로 변환하여 DB에 넣어준다.
    DB column은 String 타입.

@Column(nullable = false)
    @Enumerated(value = EnumType.STRING)
    private UserRoleEnum role;

위와 같이 값을 해당 어노테이션의 속성을 활용하여,
value를 STRING, 혹은 ORDINAL 로 설정할 수 있다.

정리

EnumType.STRING : 각 Enum 이름을 컬럼에 저장한다. ex) G, PG, PG13..

EnumType.ORDINAL : 각 Enum에 대응되는 순서를 칼럼에 저장한다. ex) 0, 1, 2..

profile
I want be a developer🙂

0개의 댓글