Springboot统一返回JSON格式响应

Web项目中定义一套通用的数据相应接口将会减少很多冗余,先提供一套通用的数据返回格式。鉴于此类文章较多,本文附上自己学习过程中感觉不错的文章供大家参考:

  1. springboot2.0-统一处理返回结果和异常情况
  2. SpringBoot返回统一的JSON标准格式
  3. spring boot 统一JSON格式的接口返回结果
  4. Spring Boot随手记-统一封装response的格式

注意点:

  1. 若是响应结果类上无其他注解(不适用lombok时),则请求响应结果就如下列所示:

成功响应时:

{
    "code": 0,
    "msg": "操作成功",
    "data": [
        {
            "empId": 1,
            "empName": "雇员1",
            "hiredate": "2021-11-21",
            "sal": 1234.12,
            "deptno": 10
        }
    ]
}

失败响应时:

{
    "code": 500,
    "msg": "系统异常,请稍后重试:/ by zero",
    "data": null
}
  1. 若是想要在请求失败时不显示data,则需要在响应结果的类上加上一个注解:
@JsonSerialize(include= JsonSerialize.Inclusion.NON_NULL)

但该注解在Springboot2.x版本中已经废弃,改变为:

@JsonInclude(JsonInclude.Include.NON_NULL)

添加该注解后请求失败时响应结果为:

{
    "code": 500,
    "msg": "系统异常,请稍后重试:/ by zero"
}

该注解将结果中为null字段拦截,不返回给调用者。


版权声明:本文为weixin_44651555原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。