IErrorCode
/**
* @Author
* @Description 错误编码 接口
* @Date 2021/4/16
**/
public interface IErrorCode {
/**
* 错误编码
**/
Integer getCode();
/**
* 错误信息
**/
String getMessage();
}
EResultCode
/**
* 执行结果 枚举
* @author
* @date 2019-01-08
*/
public enum EResultCode implements IErrorCode {
/**
* 操作成功=200,
**/
SUCCESS(200, "操作成功"),
/**
* 部分成功=210
*/
PARTIAL_SUCCESS(210, "部分成功"),
/**
* 操作失败=300,
**/
FAILED(300, "操作失败"),
/**
* 参数检验失败=301,
**/
VALIDATE_FAILED(301, "参数检验失败"),
/**
* 相关需要支付:未付费
*/
UNPAID(302,"未付费"),
/**
* 积分不足,充值提示
*/
INTEGRAL(303,"积分不足,请充值。"),
/**
* 未登录或token已经过期=401,
**/
UNAUTHORIZED(401, "未登录或token已经过期"),
/**
* 没有相关权限=403,
**/
FORBIDDEN(403, "没有相关权限"),
/**
* 签名验证失败=407,
*/
SIGN_NOT_PASS(407, "签名验证失败"),
/**
* 系统繁忙=500,
**/
ERROR(500, "系统繁忙");
private Integer code;
private String message;
EResultCode(Integer code, String message) {
this.code = code;
this.message = message;
}
@Override
public Integer getCode() {
return code;
}
@Override
public String getMessage() {
return message;
}
}
BusinessException
import com.common.enums.EResultCode;
/**
* 自定义业务异常
*/
public class BusinessException extends RuntimeException {
private EResultCode code;
public EResultCode getCode() {
return code;
}
public void setCode(EResultCode code) {
this.code = code;
}
public BusinessException() {
super();
}
public BusinessException(String message) {
super(message);
this.code = EResultCode.ERROR;
}
public BusinessException(EResultCode code, String message) {
super(message);
this.code = code;
}
public BusinessException(String message, Throwable cause) {
super(message, cause);
}
public BusinessException(Throwable cause) {
super(cause);
}
}