自定义错误类:比如在校验参数时不符合要求,可以抛出此错误类,拦截器可以拦截此错误,将其中的JSON返回给前端
在此之前先定义一个错误信息的枚举类,JSON工具类
枚举类:
public enum ErrorEnum {
/*
* 错误信息
* */
E_400("400", "请求处理异常,请稍后再试"),
E_500("500", "请求方式有误,请检查 GET/POST"),
E_501("501", "请求路径不存在"),
E_502("502", "权限不足"),
E_10008("10008", "角色删除失败,尚有用户属于此角色"),
E_10009("10009", "账户已存在"),
E_20011("20011", "登陆已过期,请重新登陆"),
E_90003("90003", "缺少必填参数");
private String errorCode;
private String errorMsg;
ErrorEnum() {
}
ErrorEnum(String errorCode, String errorMsg) {
this.errorCode = errorCode;
this.errorMsg = errorMsg;
}
public String getErrorCode() {
return errorCode;
}
public void setErrorCode(String errorCode) {
this.errorCode = errorCode;
}
public String getErrorMsg() {
return errorMsg;
}
public void setErrorMsg(String errorMsg) {
this.errorMsg = errorMsg;
}
}
JSON工具类包括:(分页查询的管理)
public class CommonUtil {
/**
* 返回一个returnData为空对象的成功消息的json
*
* @return
*/
public static JSONObject successJson() {
return successJson(new JSONObject());
}
/**
* 返回一个返回码为100的json
*
* @param returnData json里的主要内容
* @return
*/
public static JSONObject successJson(Object returnData) {
JSONObject resultJson = new JSONObject();
resultJson.put("returnCode", Constants.SUCCESS_CODE);
resultJson.put("returnMsg", Constants.SUCCESS_MSG);
resultJson.put("returnData", returnData);
return resultJson;
}
/**
* 返回错误信息JSON
*
* @param errorEnum 错误码的errorEnum
* @return
*/
public static JSONObject errorJson(ErrorEnum errorEnum) {
JSONObject resultJson = new JSONObject();
resultJson.put("returnCode", errorEnum.getErrorCode());
resultJson.put("returnMsg", errorEnum.getErrorMsg());