SpringFramework/Spring

Enum 객체 활용 방안

lovineff 2021. 3. 9. 17:21

@JsonFormat(shape = JsonFormat.Shape.OBJECT)

Front json 값 전달시 enum 객체 자체를 전달하여 front에서 code, name을 직접 선택하여 사용할수 있도록 한다.

 

of(String code) 

code 값에 해당하는 enum 객체 반환

 

getAll()

enum에 정의된 값을 List<enum>으로 반환 받는다.

@JsonFormat(shape = JsonFormat.Shape.OBJECT)
@Getter
@AllArgsConstructor
public enum CommonCodeType implements Code {
    TEL("tel", "전화번호"),
    PHONE("phone", "핸드폰번호")
    ;

    private String code;
    private String name;

    public static CommonCodeType of(String code) {
        return Arrays.stream(values())
                .filter(v -> code.equals(v.code))
                .findFirst()
                .orElse(null);
    }

    public static List<CommonCodeType> getAll(){
        return Arrays.asList(CommonCodeType.class.getEnumConstants());
    }
}

'SpringFramework > Spring' 카테고리의 다른 글

ObjectMapper List 변환  (0) 2021.03.16
jQuery DataTable Paging Model Mapping  (0) 2021.03.09
Redis 연동  (0) 2020.11.17
ModelMapper 사용 법  (0) 2020.11.16
Swagger2 설정 및 사용  (0) 2020.11.13