Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 컬럼명 조회
- 카멜케이스 변환
- DTO
- forEach
- groupingby
- 개행문자 치환
- spring-boot
- 슬로우 쿼리 설정정보 조회
- vo생성
- 로컬서버 바라보기
- java
- 테이블명 조회
- 줄바꿈
- Profile
- enum
- Vo
- Type Convert
- Spring Boot
- 이넘아
- dto생성
- ㅋㅅㅋ
- properties editor
- 개행문자
- Stream
- STS
- 테이블 컬럼 카멜 변환기
- 이넘
- message.properties
- 람다식
- JSTL
Archives
- Today
- Total
코더가 되고싶은 남자
Spring-Boot java Enum 사용법 본문
반응형
웹 서비스 프로젝트 중 급히 Validation 체크 추가할 사항이 생겨서 만든 enum 클래스 이다.
최상위 enum 영역 안에, enum을 선언하여 5자리 코드 값을 넘길 시 알파벳 1자리 문자로 리턴하는 함수를 만들었다.
import java.util.Arrays;
public enum ProductThemeEnum {
M("10000", "M"),
F("10001", "F"),
C("10002", "C"),
A("10003", "A");
// 10000 남성
// 10001 여성
// 10002 KIDS
// 10003 공용
/* enum 클래스 영역안에서 사용할 함수, 변수 */
private String codeValue;
private String charValue;
private ProductThemeEnum(String codeValue, String charValue) {
this.codeValue = codeValue;
this.charValue = charValue;
}
public String getCodeValue() {
return codeValue;
}
public String getCharValue() {
return charValue;
}
public enum genderGbnCodeEnum{
GENDER_GBN_CODE(new ProductThemeEnum[] {ProductThemeEnum.M, ProductThemeEnum.F, ProductThemeEnum.C, ProductThemeEnum.A});
private ProductThemeEnum[] themeList;
private genderGbnCodeEnum(ProductThemeEnum[] themeList) {
this.themeList = themeList;
}
/*
* 서비스에서 호출 시 최종 값 리턴
* GENDER_GBN_CODE(성별구분코드)를 인자값으로 보낼 시 해당 코드에 맞는 알파벳 리턴, 매칭되는게 없다면 A로 리턴
*/
public static ProductThemeEnum findTheme(String code) {
return Arrays.stream(genderGbnCodeEnum.GENDER_GBN_CODE.themeList).filter(v -> v.codeValue.equals(code)).findAny().orElse(A);
}
}
}
*.java 에서 enum 호출 방법
ProductThemeEnum.A.getCharValue(); //A
ProductThemeEnum.A.getCodeValue(); //10003
genderGbnCodeEnum.findTheme("10000"); //M
genderGbnCodeEnum.findTheme(request param변수);
으로 내가 선언한 원하는 값을 가져올 수 있다.
리퀘스트 파람으로 넘어온 변수 값으로 원하는 알파벳 문자를 찾으려고 만든 것이다.
근데 왜 만들었는지 모르겠다.
만들고 안썼다. DB CASE문으로 컬럼하나 select해서 해결했다. ㅋㅋ
'java' 카테고리의 다른 글
java stream Map convert (0) | 2023.11.07 |
---|---|
java List 데이터 원하는 수 만큼 페이징 함수 처리 하고 싶을 때 subList(), Math.min() (0) | 2022.10.06 |
JAVA Map > vo convert 해쉬 맵 데이터를 vo객체로 변환 2 (0) | 2021.12.24 |
JAVA Map > vo convert 해쉬 맵 데이터를 vo객체로 변환 1 (0) | 2021.12.24 |
java stream groupingBy() 리스트 데이터를 그룹핑하여 재가공 (0) | 2021.01.18 |