不再视野黑盒,统一结果封装(4)

104 阅读1分钟

章节

在我们的项目中,我们使用了一个名为Result的类,用于封装异步统一返回的结果。通常,一个结果对象应该包含以下几个必要要素:

  • 是否成功:我们可以使用code字段来表示结果的状态,例如,200表示成功,400表示异常等。
  • 结果消息:这个字段用于存储对结果的简要描述,可以是成功消息或者错误消息。
  • 结果数据:这是保存实际结果数据的字段,可以是一个对象或者集合,根据具体需要而定。

根据上述要素,我们可以对Result类进行封装和优化,使其满足我们的需求。以下是封装后的实现:

@Data
public class Result implements Serializable {

    private int code; // 200是正常,非200表示异常
    private String msg;
    private Object data;

    public static Result succ(Object data) {
        return succ(200, "操作成功", data);
    }

    public static Result succ(int code, String msg, Object data) {
        Result r = new Result();
        r.setCode(code);
        r.setMsg(msg);
        r.setData(data);
        return r;
    }

    public static Result fail(String msg) {
        return fail(400, msg, null);
    }

    public static Result fail(String msg, Object data) {
        return fail(400, msg, data);
    }

    public static Result fail(int code, String msg, Object data) {
        Result r = new Result();
        r.setCode(code);
        r.setMsg(msg);
        r.setData(data);
        return r;
    }

}

完整代码仓库地址

gitee.com/koukaile/ja…