一 响应实体:
@ApiModel("通用返回对象")
@Getter
public class ControllerMessage<T> implements Serializable {
@ApiModelProperty(value = "返回码", notes = "0代表成功")
private final int code;
@ApiModelProperty("描述信息")
private final String message;
@ApiModelProperty("数据")
private final T data;
private static final int SUCCESS_CODE = 0;
private ControllerMessage(int code, String message, T data) {
this.code = code;
this.message = message;
this.data = data;
}
public static <T> ControllerMessage<T> ofSuccess(String message) {
return of(SUCCESS_CODE, message, null);
}
public static <T> ControllerMessage<T> ofSuccess(String message, T data) {
return of(SUCCESS_CODE, message, data);
}
private static <T> ControllerMessage<T> of(int code, String message, T data) {
return new ControllerMessage<>(code, message, data);
}
public static <T> ControllerMessage<T> ofError(IControllerErrorBaseEnum controllerErrorBaseEnum) {
return of(controllerErrorBaseEnum.getCode(), controllerErrorBaseEnum.getMessage(), null);
}
}
二 错误枚举基类接口
public interface IControllerErrorBaseEnum {
int getCode();
String getMessage();
}