一、定义返回的数据格式:
public class ResponseMessage
private int code;
private boolean state;
private T data;
private String message;
public ResponseMessage() {
}
public ResponseMessage(boolean state) {
this.state = state;
this.code = getCodeByResult(state);
}
public ResponseMessage(boolean state, String message) {
this.state = state;
this.code = getCodeByResult(state);
this.message = message;
}
public ResponseMessage(int code, boolean state, String message) {
this.code = code;
this.state = state;
this.message = message;
}
public ResponseMessage
return new ResponseMessage
}
public ResponseMessage
return new ResponseMessage
}
public ResponseMessage
ResponseMessage
responseMessage.setData(data);
return responseMessage;
}
public ResponseMessage
ResponseMessage
responseMessage.setData(data);
return responseMessage;
}
private int getCodeByResult(boolean state) {
return state ? ResultCode.SUCCESS_STATUS.getCode() : ResultCode.NO_DATA_STATUS.getCode();
}
public int getCode() {
return code;
}
public void setCode(int code) {
this.code = code;
}
public boolean isState() {
return state;
}
public void setState(boolean state) {
this.state = state;
}
public T getData() {
return data;
}
public void setData(T data) {
this.data = data;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}
二、定义状态码
public enum ResultCode {
SUCCESS_STATUS(100, "成功!"),
NO_DATA_STATUS(200, "无数据!"),
INTERFACE_BUSINESS_STATUS(300 , "调用接口业务错误!"),
INTERFACE_ERROR_STATUS(400, "调用接口异常!"),
TOKEN_ERROR(500,"token错误!"),
TOKEN_OVERDUE(600,"token过期!");
private int code;
private String message;
// 构造方法
private ResultCode(int code, String message) {
this.code = code;
this.message = message;
}
public int getCode() {
return code;
}
public void setCode(int code) {
this.code = code;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
/**
* 根据code获取message
*
* @param code
* @return
*/
public static String getMessage(int code) {
for (ResultCode c : ResultCode.values()) {
if (c.getCode() == code) {
return c.getMessage();
}
}
return null;
}
}