SpringBoot06 统一响应格式
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 统一响应格式相关推荐
- spring boot / cloud (二) 规范响应格式以及统一异常处理
spring boot / cloud (二) 规范响应格式以及统一异常处理 前言 为什么规范响应格式? 我认为,采用预先约定好的数据格式,将返回数据(无论是正常的还是异常的)规范起来,有助于提高团队 ...
- Spring Boot 中如何统一 API 接口响应格式?
今天又要给大家介绍一个 Spring Boot 中的组件–HandlerMethodReturnValueHandler. 在前面的文章中(如何优雅的实现 Spring Boot 接口参数加密解密?) ...
- JavaWeb | HTTP 协议请求与响应格式
一.HTTP 是什么 计算机网络核心概念:网络协议 网络协议种类非常多,其中一些耳熟能详的,IP,TCP,UD- 其中还有一个应用非常广泛的协议HTTP,HTTP 协议大概率是咱们日后开发中用的最多的 ...
- 2022-05-02 一.统一响应码
统一响应码 前言 统一响应码 响应状态 响应结果 例子 前言 作为后端服务器,返回给前端的数据需要统一格式,一般为: {code:200,msg: "接口请求成功",data:.. ...
- webflux - 统一响应 ModifyResponseBodyGatewayFilterFactory
webflux - 统一响应 ModifyResponseBodyGatewayFilterFactory webflux提供了对响应结果的修改的过滤器 ModifyResponseBodyGatew ...
- 【FastAPI后台API 五】统一响应json数据格式
统一响应json数据格式 本系列博客是配合Vue开发一套后台管理系统,对应的Vue教程见个人博客 https://www.charmcode.cn/ 现在了很多项目,都是前后端分离的项目,所以了前后端 ...
- 基于Spring AOP的统一响应体的实现(注解版)
基于Spring AOP的统一响应体的实现(注解版) 一.前言 在上一篇系列中 我们 统一参数校验,统一结果响应,统一异常处理,统一错误处理,统一日志记录,统一生成api文档, 对于统一数据响应返回规 ...
- 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 ...
- Spring Boot 无侵入式 实现 API 接口统一 JSON 格式返回
点击上方蓝色"方志朋",选择"设为星标" 回复"666"获取独家整理的学习资料! 无侵入式 统一返回JSON格式 其实本没有没打算写这篇博客 ...
- asp.net core系列 38 WebAPI 返回类型与响应格式--必备
一.返回类型 ASP.NET Core 提供以下 Web API Action方法返回类型选项,以及说明每种返回类型的最佳适用情况: (1) 固定类型 (2) IActionResult (3) Ac ...
最新文章
- 【数据库】sqlite3常用命令及SQL语句
- 20-flutter下拉刷新与上拉加载
- AI人工智能开发的路径有三条,最成功的是机器学习技术:强化学习
- OpenGL-渲染管线的流程(有图有真相)
- 计算机课程设计红绿灯,武汉大学电气工程学院计算机课程设计1:红绿灯
- python zipfile教程_Python模块zipfile原理及使用方法详解
- 《BOOST程序库完全开发指南》 第11章 函数与回调
- python的类与模块_Python类与模块属性
- echarts柱状图间距调整_Excel每天学个统计图(1)-折线柱状图
- 下载chrome驱动 for selenium库
- Facebook 的应用机器学习平台
- 【Linux】五分钟搞定 Linux 文档全部知识,就看这篇文章
- fio 磁盘I/O测试工具
- Mac的shell命令大全
- 流媒体开发之-音悦台TV解析特定条件下的所有TV视频
- win7我的计算机无法搜索,win7搜索功能无法正常使用的有效解决方法
- pigoss BSM 售前使用问题总结2(FAQ)
- 笃行杂记之Zookeeper SessionTimeOut分析
- 我第一个用DirextX做的2D游戏——炮炮兵考眼力
- 手把手教你怎么关闭win10自带的杀毒软件
热门文章
- 开源,想说爱你不容易
- Mnesia动态添加节点杂记
- mfc获取控件在对话框上的位置
- 关于打印 毕业设计资料
- SERVER 2008 +MSSQL2008+SCCM安装记录
- 爬楼梯算法-java(递归与非递归)
- php网站代码报告,使用Checkstyle报告(来自CodeSniffer)可视化PHP代码
- 12v服务器电源改可调_IBM服务器电源,艾默生7001578-j000 改造DIY成可调电源详细教程...
- Luogu1832 A+B Problem(再升级)
- CF1399E2 Weights Division (hard version)