现在项目需要一个统一的返回体,用来作为代码执行后的结果展示,便于前后端分离的数据交互和处理。
我自己写了个简单的返回体,希望可以帮到您!
主要分为两个类处理,枚举类和返回体对象类:
1.枚举类 ResponseEnum
public enum ResponseEnum {
SUCCESS(100, "操作成功!"),
Failed(101, "操作失败,请重试!"),
PARAM_ERROR(102, "参数异常,请重新输入!"),
;
/**
* 状态码
*/
public Integer code;
/**
* 返回描述信息
*/
public String msg;
ResponseEnum(Integer code, String msg) {
this.code = code;
this.msg = msg;
}}
2.返回体对象类CommonResponseJson
import com.ruiqing.enums.ResponseEnum;
import lombok.Data;
import java.io.Serializable;
public class CommonResponseJson<V> implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 状态码
*/
private Integer code;
/**
* 返回描述信息
*/
private String msg;
/**
* 返回数据体
*/
private V data;
private CommonResponseJson(Integer code, String msg) {
this.code = code;
this.msg = msg;
}
private CommonResponseJson(Integer code, String msg, V data) {
this.code = code;
this.msg = msg;
this.data = data;
}
/**
* [操作成功 无返回数据]
*
* @param
* @return CommonResponseJson<V>
* @author [ZHY]
* @date 2020/6/12
*/
public static <V> CommonResponseJson<V> success() {
return new CommonResponseJson<V>(ResponseEnum.SUCCESS.code, ResponseEnum.SUCCESS.msg);
}
/**
* [操作成功 有返回数据]
*
* @param data 返回的数据体
* @return CommonResponseJson<V>
* @author [ZHY]
* @date 2020/6/12
*/
public static <V> CommonResponseJson<V> success(V data) {
return new CommonResponseJson<V>(ResponseEnum.SUCCESS.code, ResponseEnum.SUCCESS.msg, data);
}
/**
* [操作失败]
*
* @param
* @return CommonResponseJson<V>
* @author [ZHY]
* @date 2020/6/12
*/
public static <V> CommonResponseJson<V> failed() {
return new CommonResponseJson<V>(ResponseEnum.Failed.code, ResponseEnum.Failed.msg);
}
/**
* [自定义失败返回状态码和信息]
*
* @param code,msg 返回状态码和信息
* @return CommonResponseJson<V>
* @author [ZHY]
* @date 2020/6/12
*/
public static <V> CommonResponseJson<V> failed(Integer code, String msg) {
return new CommonResponseJson<V>(code, msg);
}
/**
* [参数异常错误]
*
* @param
* @return CommonResponseJson<V>
* @author [ZHY]
* @date 2020/6/12
*/
public static <V> CommonResponseJson<V> paramError() {
return new CommonResponseJson<V>(ResponseEnum.PARAM_ERROR.code, ResponseEnum.PARAM_ERROR.msg);
}
}
如果需要返回更多信息,可以自定义枚举,然后在返回体类中添加相应静态方法。
业精于勤而荒于嬉,行成于思而毁于随 – 韩愈
为满足前后端分离的数据交互需求,项目中创建了一个简单的统一返回体。该返回体由两个类构成:一个枚举类`ResponseEnum`用于定义各种状态码,另一个是返回体对象类`CommonResponseJson`,用于封装业务数据和状态信息。如有更多需求,可以通过扩展枚举类和返回体类来实现。
3212

被折叠的 条评论
为什么被折叠?



