우선 에러코드 클래스를 enum 으로 만들어 두자.
/************************************************
*** 공통 에러 코드
************************************************/
public enum ErrorCode {
SUCCESS("E0000") // 성공
, ERROR("E9999") // 서버에러
, NO_PERMISSION("E0001") // 접근 권한 없음
, INVALID_PARAMETER("E0002") // 잘못된 파라미터
, DATA_NOT_FOUND("E0003") // 데이터 없음
/* end */
;
public final String code;
private ErrorCode(String code) {
this.code = code;
}
public boolean equalsCode(String anotherCode) {
return this.code.equalsIgnoreCase(anotherCode);
}
}
익셉션을 아래와 같이 생성해두고
/************************************************
*** 공통 에러 코드
************************************************/
public class UserException extends Exception {
private ErrorCode code;
public RequestResolveException(ErrorCode code, String message) {
super(message);
this.code = code;
}
public RequestResolveException(ErrorCode code, String message, Throwable cause) {
super(message, cause);
this.code = code;
}
public ErrorCode getCode() {
return code;
}
}
이렇게 하면 세팅이 끝난다.
이후 Exception을 다음과 같이 이용하면 된다.
if(idx > 0){
throw new RequestResolveException(ErrorCode.NO_PERMISSION, "권한이 없습니다");
}
'공부 > 프로그래밍' 카테고리의 다른 글
[JAVA] Map 의 Key 값을 모두 소문자로 변경(DB 등) (0) | 2017.06.02 |
---|---|
[Spring] 컨트롤에 들어오는 파라미터나 리턴 지정(Resolver) (0) | 2017.05.30 |
[Spring] return 할때 json으로 반환하는 방법. (0) | 2017.05.26 |
[Spring] Bean 객체를 JSON으로 변환할때 빈값이 있는건 key에서 제외 (0) | 2017.05.17 |
[spring] form에서 submit으로 날려도 한글이 깨지는 것 설정. (0) | 2017.05.10 |
댓글