Notice
Recent Posts
Recent Comments
Link
개발 무지렁이
[Java] 한정된 값을 가지는 열거(enum) 타입 본문
열거(enum) 타입
🔖 한정된 값을 갖는 타입을 말한다.
※ 열거타입 이름으로 소스파일(.java)을 생성
※ 열거상수는 모두 대문자로 작성
※ 열거타입 이름으로 소스파일(.java)을 생성
※ 열거상수는 모두 대문자로 작성
public enum LoginResult {
LOGIN_SUCCESS, //열거상수 목록
LOGIN_FAILED
}
//⭐ 열거타입 변수에 열거 상수 대입
LoginResult result = LoginResult.LOGIN_SUCCESS;
𖠃 에러코드 관리
@JsonFormat(shape = JsonFormat.Shape.OBJECT) # Json객체로 직렬화
@Getter
public enum ErrCode {
//COMMON
INVALID_CODE(400, "C001", "Invalid Code"),
RESOUCRCE_NOT_FOUND(204, "C002", "Resource not found"),
EXPIRED_CODE(400, "C003", "Expired Code"),
private int status; //Http status
private String code; //자체 정의 code
private String message; //자체 정의 message
private String detail; //e.getMessage()
public ErrCode(int status, String code, String message) {
this.status = status;
this.code = codel
this.message = message;
}
public String getKey() {
return this.code;
}
public String getValue() {
return this.message;
}
}
🦉 @JsonFormat(shape = JsonFormat.Shape.OBJECT)
: 해당 클래스의 인스턴스는 Json 객체로 직렬화
(객체의 필드값이 Json객체의 key-value 쌍으로 매핑되는 것을 말한다.)
: 해당 클래스의 인스턴스는 Json 객체로 직렬화
(객체의 필드값이 Json객체의 key-value 쌍으로 매핑되는 것을 말한다.)
📜 사용자정의 exception.java (with ErrCode)
public class CustomException extends RuntimeException {
private ErrCode errCode;
public CustomException(ErrCode errCode) {
super(errCode.getMessage());
this.errCode = errCode;
}
public CustomException(String message, ErrCode errCode) {
super(message);
this.errCode = errCode;
}
}
'Backend > 자바' 카테고리의 다른 글
[Java] 모듈: 패키지 은닉과 전이 의존 (0) | 2023.08.05 |
---|---|
[Java] eclipse에서 jar 압축파일 형태의 라이브러리 생성 및 적용 (0) | 2023.08.04 |
[Java] openJDK 다운과 시스템 환경변수 설정, Eclipse 기본 세팅 (0) | 2023.07.12 |
[Java] 종합보험 예외처리 (0) | 2023.04.18 |
[Java] Inner Class와 접근 가능한 자원 (2) | 2023.04.17 |
Comments