1 要求

  每个请求成功后,后台返回的响应格式都是一致的,例如:

    

2 创建一个视图模型

  该模型用于格式化响应数据

package cn.xiangxu.springboottest.model.dataViewModel;import lombok.Data;@Data
public class ResultViewModel<T> {private Integer code;private String message;private T data;
}

3 创建一个视图模型工具类

  该工具类根据传入的参数来实例化视图模型类

  

package cn.xiangxu.springboottest.utils;import cn.xiangxu.springboottest.model.dataViewModel.ResultViewModel;/*** 响应数据封装类*/
public class ResultViewModelUtil {/*** 请求成功方法01* @param object 响应数据* @return 视图模型实例*/public static ResultViewModel success(Object object) {ResultViewModel resultViewModel = new ResultViewModel();resultViewModel.setCode(0);resultViewModel.setMessage("请求成功");resultViewModel.setData(object);return resultViewModel;}/*** 请求成功方法02* @return 视图模型实例*/public static ResultViewModel success() {return success(null);}/*** 请求失败方法01(捕获到的已知异常)* @param code 异常编号* @param message 异常信息* @return 视图模型实例*/public static ResultViewModel error(Integer code, String message) {ResultViewModel resultViewModel = new ResultViewModel();resultViewModel.setCode(code);resultViewModel.setMessage(message);resultViewModel.setData(null);return resultViewModel;}/*** 请求失败方法02(系统异常)* @return 视图模型实例*/public static ResultViewModel error() {ResultViewModel resultViewModel = new ResultViewModel();resultViewModel.setCode(-1);resultViewModel.setMessage("系统异常");resultViewModel.setData("系统维护中...");return resultViewModel;}
}

View Code

4 利用视图模型工具类向前台返回格式化的JSON数据

  

package cn.xiangxu.springboottest.controller;import cn.xiangxu.springboottest.model.dataViewModel.ResultViewModel;
import cn.xiangxu.springboottest.service.GirlService;
import cn.xiangxu.springboottest.utils.ResultViewModelUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;import javax.annotation.Resource;@RestController
@RequestMapping(value = "/girl")
@Slf4j
public class GirlController {@Resource(name = "girlService")private GirlService girlService;@GetMappingpublic ResultViewModel test() {log.info("hello boy");return ResultViewModelUtil.success("响应数据");
//        return ResultViewModelUtil.success(girlService.findAllGirl());
    }}

View Code

转载于:https://www.cnblogs.com/NeverCtrl-C/p/8177492.html

SpringBoot06 统一响应格式相关推荐

  1. spring boot / cloud (二) 规范响应格式以及统一异常处理

    spring boot / cloud (二) 规范响应格式以及统一异常处理 前言 为什么规范响应格式? 我认为,采用预先约定好的数据格式,将返回数据(无论是正常的还是异常的)规范起来,有助于提高团队 ...

  2. Spring Boot 中如何统一 API 接口响应格式?

    今天又要给大家介绍一个 Spring Boot 中的组件–HandlerMethodReturnValueHandler. 在前面的文章中(如何优雅的实现 Spring Boot 接口参数加密解密?) ...

  3. JavaWeb | HTTP 协议请求与响应格式

    一.HTTP 是什么 计算机网络核心概念:网络协议 网络协议种类非常多,其中一些耳熟能详的,IP,TCP,UD- 其中还有一个应用非常广泛的协议HTTP,HTTP 协议大概率是咱们日后开发中用的最多的 ...

  4. 2022-05-02 一.统一响应码

    统一响应码 前言 统一响应码 响应状态 响应结果 例子 前言 作为后端服务器,返回给前端的数据需要统一格式,一般为: {code:200,msg: "接口请求成功",data:.. ...

  5. webflux - 统一响应 ModifyResponseBodyGatewayFilterFactory

    webflux - 统一响应 ModifyResponseBodyGatewayFilterFactory webflux提供了对响应结果的修改的过滤器 ModifyResponseBodyGatew ...

  6. 【FastAPI后台API 五】统一响应json数据格式

    统一响应json数据格式 本系列博客是配合Vue开发一套后台管理系统,对应的Vue教程见个人博客 https://www.charmcode.cn/ 现在了很多项目,都是前后端分离的项目,所以了前后端 ...

  7. 基于Spring AOP的统一响应体的实现(注解版)

    基于Spring AOP的统一响应体的实现(注解版) 一.前言 在上一篇系列中 我们 统一参数校验,统一结果响应,统一异常处理,统一错误处理,统一日志记录,统一生成api文档, 对于统一数据响应返回规 ...

  8. springMVC02-SSM整合(Result统一响应数据格式、异常页面修改、SSM整合vue-elementUI小案例、SpringMVC的拦截器Interceptor)

    文章目录 今日内容 一.SSM整合[重点] 1 SSM整合配置 问题导入 1.1 SSM整合流程 1.2 SSM整合配置 1.2.1 创建工程,添加依赖和插件 1.2.2 Spring整合Mybati ...

  9. Spring Boot 无侵入式 实现 API 接口统一 JSON 格式返回

    点击上方蓝色"方志朋",选择"设为星标" 回复"666"获取独家整理的学习资料! 无侵入式 统一返回JSON格式 其实本没有没打算写这篇博客 ...

  10. asp.net core系列 38 WebAPI 返回类型与响应格式--必备

    一.返回类型 ASP.NET Core 提供以下 Web API Action方法返回类型选项,以及说明每种返回类型的最佳适用情况: (1) 固定类型 (2) IActionResult (3) Ac ...

最新文章

  1. 【数据库】sqlite3常用命令及SQL语句
  2. 20-flutter下拉刷新与上拉加载
  3. AI人工智能开发的路径有三条,最成功的是机器学习技术:强化学习
  4. OpenGL-渲染管线的流程(有图有真相)
  5. 计算机课程设计红绿灯,武汉大学电气工程学院计算机课程设计1:红绿灯
  6. python zipfile教程_Python模块zipfile原理及使用方法详解
  7. 《BOOST程序库完全开发指南》 第11章 函数与回调
  8. python的类与模块_Python类与模块属性
  9. echarts柱状图间距调整_Excel每天学个统计图(1)-折线柱状图
  10. 下载chrome驱动 for selenium库
  11. Facebook 的应用机器学习平台
  12. 【Linux】五分钟搞定 Linux 文档全部知识,就看这篇文章
  13. fio 磁盘I/O测试工具
  14. Mac的shell命令大全
  15. 流媒体开发之-音悦台TV解析特定条件下的所有TV视频
  16. win7我的计算机无法搜索,win7搜索功能无法正常使用的有效解决方法
  17. pigoss BSM 售前使用问题总结2(FAQ)
  18. 笃行杂记之Zookeeper SessionTimeOut分析
  19. 我第一个用DirextX做的2D游戏——炮炮兵考眼力
  20. 手把手教你怎么关闭win10自带的杀毒软件

热门文章

  1. 开源,想说爱你不容易
  2. Mnesia动态添加节点杂记
  3. mfc获取控件在对话框上的位置
  4. 关于打印 毕业设计资料
  5. SERVER 2008 +MSSQL2008+SCCM安装记录
  6. 爬楼梯算法-java(递归与非递归)
  7. php网站代码报告,使用Checkstyle报告(来自CodeSniffer)可视化PHP代码
  8. 12v服务器电源改可调_IBM服务器电源,艾默生7001578-j000 改造DIY成可调电源详细教程...
  9. Luogu1832 A+B Problem(再升级)
  10. CF1399E2 Weights Division (hard version)