Enum 타입의 활용
4039 단어 Springboot당신이 개발자라면EnumEnum
프로젝트 API를 만드는 데에 Enum타입을 두가지 용도로 사용하였다.
- 직종(Entity)
- 설문요약(Dto)?
직종
직종을 Enum타입으로 설정한 이유
간단히 말하자면 영문 값과 한글 값을 매칭시키기 위해서다.
DB에는 JetBrain의 데이터 값인 영문으로 된 직종을 넣어야 했고,
API요청할때는 한글로된 값을 주어야 했다.
DB를 그렇다고 따로 파기에는 너무 비효율적이었고, 그냥 Enum타입으로 선언하여 사용하면 될 것 같아서 그렇게 진행하였다.
코드
빈값이 있는 이유는 기획의 부족으로.. 아직 어떤 단어를 넣을지 결정하지 않았기 때문에 비워뒀다...
(마음을 비우고 보다보면 어느새인가 값이 채워질것....흠...)
@Getter
@RequiredArgsConstructor
public enum Occupation {
Websites("WebDeveloper","웹개발자"),
Database("DBDeveloper","DB개발자"),
ItInfrastructure("",""),
DataScientist("","데이터사이언티스트"),
Finance("","금융개발자?"),
Game("","게임개발자"),
Entertainment("",""),
SystemSoftware("","");
private final String occupation;
private final String jobName;
}
설문
설문 요약본을 Enum으로 설정한 이유
우선 설문 그룹은 설문 내용들을 요약한 ‘어떤 값’을 담아야한다.
description
: 설문 그룹의 메인 요약본
summaryInfos
: 설문 그룹의 기타 요약본 (데이터 크기가 3으로 고정되어있음)
이 값은 회의를 거쳐서 DB에 넣지 말고, API 요청할때 그냥 직접 넣어주자고 얘기가 나왔다. 처음에는 Service에서 그냥 String으로 직접 넣어주려고 했다. 그런데, Enum으로 만들면 String들을 붙이고 자르고 하는것보다 훨씬 보기 편하고 코드도 간결해질 것 같아서 그렇게하기로 하였다.
Author And Source
이 문제에 관하여(Enum 타입의 활용), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@dgh03207/Enum-타입의-활용저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)