为什么需要统一错误码
定义统一错误码
有任何错误,我们都直接返回-1,其实它的意义不是特别好,前端不知道-1是什么,后端可能也不
-1代表什么,而http的错误码又太少 且可能跟我们的实际业务没有太大关联,
所以说我们要定义一个通用的错误码,我们要定义一套错误码的规范。
怎么定义
效仿http常见错误码比如404(未找到),200(成功)等,在此基础上进行拓展,比如4开头就是客户端问题,5开头就是系统内部异常。
定义错误码我们建议使用枚举类型去定义:
/**
* 错误码
* @author RE_LQ
*/
public enum ErrorCode {
PARAMS_ERROR(40000,"请求参数错误",""),
NULL_ERROR(40001,"请求数据为空",""),
NOT_LOGIN(40100,"未登录",""),
NO_AUTH(40101,"无权限",""),
NO_FOUND_ERROR(40404,"请求数据不存在",""),
SYSTEM_ERROR(50000,"系统内部异常",""),
;
/**
* 状态码
*/
private final int code;
/**
* 状态码信息
*/
private final String message;
/**
* 状态码描述(详情)
*/
private final String description;
ErrorCode(int code, String message, String description) {
this.code = code;
this.message = message;
this.description = description;
}
public int getCode() {
return code;
}
public String getMessage() {
return message;
}
public String getDescription() {
return description;
}
}