• 【Spring Boot笔记】统一返回结果的格式


    为什么要统一返回结果的格式?

    目前我们做的项目大体都会是前后端分离的。为了使数据使用者(包括但不限于前端工程师)能够更好地处理返回结果,不至于为了处理各式各样的返回数据格式而抓狂,所以我们需要定义一个统一的标准的返回格式。

    标准的返回格式需要包含哪几部分?

    一个标准的返回格式至少要包含3部分:

    1. status状态值:本次接口调用返回结果的状态码
    2. message消息:本次接口调用的结果描述
    3. data数据:本次接口调用返回的数据

    当然也可以按需加入其它扩展值。

    返回结果状态码枚举类

    @Getter
    public enum ResultCode {
    
        SUCCESS("200", "成功"),
        INTERNAL_ERROR("500", "服务器内部异常");
    
        private final String code;
        private final String msg;
    
        ResultCode(String code, String msg) {
            this.code = code;
            this.msg = msg;
        }
    }
    

    统一返回对象

    @Data
    public class Result<T> implements Serializable {
        /**
         * 状态码
         */
        private String code;
        /**
         * 返回结果
         */
        private T data;
        /**
         * 返回消息
         */
        private String msg;
    
        public static <T> Result<T> success() {
            Result<T> result = new Result<>();
            result.setCode(ResultCode.SUCCESS.getCode());
            return result;
        }
    
        public static <T> Result<T> success(T data) {
            Result<T> result = new Result<>();
            result.setData(data);
            result.setCode(ResultCode.SUCCESS.getCode());
            return result;
        }
    
        public static <T> Result<T> fail() {
            Result<T> result = new Result<>();
            result.setCode(ResultCode.INTERNAL_ERROR.getCode());
            result.setMsg(ResultCode.INTERNAL_ERROR.getMsg());
            return result;
        }
    
        public static <T> Result<T> fail(ResultCode resultCode) {
            Result<T> result = new Result<>();
            result.setCode(resultCode.getCode());
            result.setMsg(resultCode.getMsg());
            return result;
        }
    }
    
  • 相关阅读:
    向量的基本运算
    tar 命令小解
    写一个块设备驱动11,12
    写一个块设备驱动9,10
    写一个块设备驱动7,8
    写一个块设备驱动5,6
    写一个块设备驱动1,2
    Linux驱动开发庖丁解牛系列
    Linux设备驱动程序(第三版)
    嵌入式系统移植基础三部曲 段彦青
  • 原文地址:https://www.cnblogs.com/longying2008/p/16263260.html
Copyright © 2020-2023  润新知