快速入门 Spring boot 2.3.X | 第三篇:统一结果

package com.springboot.config;

import com.alibaba.fastjson.annotation.JSONField;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;

@Data
@NoArgsConstructor
@AllArgsConstructor
public class Result {

    /**
     * 状态码
     */
    private Integer code;

    /**
     * 消息
     */
    private String msg;

    /**
     * 数据
     */
    private Object data;

    /**
     * 处理时间
     */
    @JSONField(format="yyyy-MM-dd HH:mm:ss")
    private Date date;

    /**
     * 成功不返回数据
     */
    public static Result success(String msg) {
        Result result = new Result();
        result.setCode(SystemConstants.SUCCESS);
        result.setMsg(msg);
        result.setDate(new Date());
        return result;
    }

    /**
     * 成功且返回数据
     */
    public static Result success(String msg, Object data) {
        Result result = new Result();
        result.setCode(SystemConstants.SUCCESS);
        result.setMsg(msg);
        result.setData(data);
        result.setDate(new Date());
        return result;
    }

    /**
     * 失败返回错误消息
     */
    public static Result fail(String msg) {
        Result result = new Result();
        result.setCode(SystemConstants.FAIL);
        result.setMsg(msg);
        result.setDate(new Date());
        return result;
    }

    /**
     * 失败返回错误码和消息
     */
    public static Result fail(Integer code, String msg) {
        Result result = new Result();
        result.setCode(code);
        result.setMsg(msg);
        result.setDate(new Date());
        return result;
    }

}

猜你喜欢

转载自blog.csdn.net/qq_41920732/article/details/108339149