JAVA ENUM

-·2023년 2월 9일
0

보통 코드같은것들은 코드테이블을 만들어서 관리한다.

좀 불편했던게

  • 매번 select해서 가져오면 뭔가 비용이 아깝다고 생각이 들었다.
  • 소스보면 코드만 달랑 적혀져 있어서 히스토리를 모르면 맨날 찾는게 일이다.

그래서 추가 수정이 잦다면 DB로 관리하는게 편할거같지만

그런게 아니라면 소스상에서 관리해도 괜찮지 않을까?

그래서 enum으로 한번 만들어봄

public enum StatusType {
	CODE_0001("code", "type")
        ...

	private String code;
	private String type;

	StatusCodeType(String code, String type) {
		this.code = code;
		this.type = type;
	}

	public String getCode () {return code;}
	public String getType () {return type;}

	public static String getTypeByCode(String code) throws Exception {
		for (StatusType type : StatusType.values()) {
			if(code.equals(type.getCode())) return type.getType();
		}
		return "";
	}
}

사용할때는

StatusType.getNameByCode("0001")

뭐 이런식으로 가져오면 되겠다.

java에서는 enum을 class로 만들어놔서 안에서 그냥 클래스처럼 쓰면된다.

이러면 숫자코드로 분류해놨지만 DB조회때려보고 안해도 0001이 뭔지 그래도 찾기가 편하다

내 생각이 틀린지 맞는지 모르겠지만 아니면 뭐 다시 수정하면되지

이방법 저방법 다 알고있는게 중요한거 아니겠나

profile
거북이는 오늘도 걷는다

0개의 댓글