본문 바로가기
Java

자바 열거형 Find Value

by NaHyungMin 2022. 9. 23.

예전 코드와 데이터베이스에서 레거시 발견.

아무런 부가설명없이 1,2로 나눠져 있어서 유지보수에 어려움이 생길거라 생각.

public enum PartnerInquiryTypes {
  Account(1),
  Name(2);

  private int value;
  PartnerInquiryTypes(int value) {
    this.value = value;
  }

  public static PartnerInquiryTypes findByValue(final int findValue){
    return Arrays.stream(values()).filter(value -> value.value == findValue).findFirst().orElse(null);
  }

  public int getValue() {
    return value;
  }
}

 

@Test
public void testBankInquiry() {
  PartnerInquiryTypes partnerInquiryTypes = PartnerInquiryTypes.findByValue(1);
  System.out.println(partnerInquiryTypes);
}

 

Name으로 찾는 법

PartnerAlpha3 alpha3 = PartnerAlpha3.valueOf(countryAlpha3.toUpperCase());

 

'Java' 카테고리의 다른 글

자바 Spring Boot 1.5 동적 Cron  (0) 2023.07.19
Java region  (0) 2023.02.16
자바 Jpa Entity -> Sql Default Value  (0) 2022.09.21
자바 Jpql dynamic query  (1) 2022.09.21
자바 MessageFormat  (0) 2022.05.20