public enum BaseResponseCode {
SUCCESS, // 성공
ERROR, // 에러
DATA_IS_NULL, // 데이터가 NULL
;
}
public class BaseResponse<T> {
private BaseResponseCode code;
private String message;
private T data;
// 성공일 경우 응답
public BaseResponse(T data) {
this.code = BaseResponseCode.SUCCESS;
this.data = data;
}
// 예외처리할 경우 응답
public BaseResponse(BaseResponseCode code, String message) {
this.code = code;
this.message = message;
}
}
public class BaseException extends AbstractBaseException {
public BaseException(BaseResponseCode responseCode) {
this.responseCode = responseCode;
}
}
@RestController
@RequestMapping
public class UserController {
@GetMapping("/test")
public BaseResponse<String> testController() {
String res = "응답데이터";
if (res == null) throw new BaseException(BaseResponseCode.DATA_IS_NULL);
return new BaseResponse<String>(res);
}
}
참고영상