공부/스프링부트

Spring Boot | JPA - @Enumerated 어노테이션

유하 yuha 2022. 2. 21. 10:14
@Entity
public class Order {

    @Enumerated(EnumType.STRING)
    private OrderStatus status; // OrderStatus - ORDER / CANCLE

}

 

Enum값을 사용한다면 @Enumerated 어노테이션을 붙여주어야 한다.

 

EnumType은 ORDINAL(default값)과 STRING 두가지가 있다.

 

EnumType.ORDINAL 값이 숫자형식으로 저장된다.
앞에서부터 차례대로 1, 2, 3 ... 으로 저장되므로 중간에 만약 새로운 값이 들어온다면 꼬일 수 있으므로 사용을 자제하는 것이 좋다.
EnumType.STRING String 형태로 저장된다.
문자열 그대로 저장되므로 중간에 값이 들어와도 그 값 또한 문자열 형태로 저장된다.
STRING으로 사용을 권고한다.