1、测试数据
public class Test { public static void main(String[] args){ System.out.println("Response.success(ErrorEnum.SUCCESS) = " + Response.success(ErrorEnum.SUCCESS)); System.out.println("Response.success(ErrorEnum.FAIL) = " + Response.fail(ErrorEnum.FAIL)); System.out.println("Response.fail() = " + Response.fail()); System.out.println("Response.success() = " + Response.success()); }}
//Response.success(ErrorEnum.SUCCESS) = Response{code=200, msg='请求成功!', model=null}
//Response.success(ErrorEnum.FAIL) = Response{code=500, msg='请求失败!', model=null}
//Response.fail() = Response{code=500, msg='请求失败!', model=null}
//Response.success() = Response{code=200, msg='请求成功!', model=null}
public class Response<T> {
private Integer code;
private String msg;
private T model;
private volatile static Response response = null;
private Response(){}
public static Response getInstance(){
if (response == null){
synchronized (Response.class){
if (response == null){
response =new Response();
}
}
}
return response;
}
public static Response fail(){
Response response = Response.getInstance();
response.setCode(ErrorEnum.FAIL.getCode());
response.setMsg(ErrorEnum.FAIL.getMsg());
return response;
}
public static Response fail(ErrorEnum errorEnum){
Response response = Response.getInstance();
response.setCode(errorEnum.getCode());
response.setMsg(errorEnum.getMsg());
return response;
}
public static <T> Response<T> fail(T data){
Response<T> response = Response.getInstance();
response.setCode(ErrorEnum.FAIL.getCode());
response.setMsg(ErrorEnum.FAIL.getMsg());
response.setModel(data);
return response;
}
public static Response fail(int code, String msg) {
Response response = Response.getInstance();
response.setCode(code);
response.setMsg(msg);
return response;
}
public static Response success(){
Response response = Response.getInstance();
response.setCode(ErrorEnum.SUCCESS.getCode());
response.setMsg(ErrorEnum.SUCCESS.getMsg());
return response;
}
public static Response success(ErrorEnum errorEnum){
Response response = Response.getInstance();
response.setCode(errorEnum.getCode());
response.setMsg(errorEnum.getMsg());
return response;
}
public static <T> Response<T> success(T data){
Response<T> response = Response.getInstance();
response.setCode(ErrorEnum.SUCCESS.getCode());
response.setMsg(ErrorEnum.SUCCESS.getMsg());
response.setModel(data);
return response;
}
public Integer getCode() {
return code;
}
public void setCode(Integer code) {
this.code = code;
}
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
public T getModel() {
return model;
}
public void setModel(T model) {
this.model = model;
}
@Override
public String toString() {
return "Response{" +
"code=" + code +
", msg='" + msg + '\'' +
", model=" + model +
'}';
}
}