SpringBoot接口返回结果封装方法实例详解
rest接口会返回各种各样的数据,如果对接口的格式不加约束,很容易造成混乱。
在实际项目中,一般会把结果放在一个封装类中,封装类中包含http状态值,状态消息,以及实际的数据。这里主要记录两种方式:(效果如下)
【SpringBoot接口返回结果封装方法实例详解】
文章图片
文章图片
文章图片
文章图片
1、采用Map对象作为返回对象。
/** * Http请求接口结果封装方法 * * @param object数据对象 * @param msgSuccess 提示信息(请求成功) * @param msgFailed 提示信息(请求失败) * @param isOperate 是否操作类型(增、删、改) * @return */public static Map getResponse(Object object, String msgSuccess, String msgFailed, boolean isOperate) {Map data = https://www.it610.com/article/new HashMap<>(); if (object != null) {data.put("success", true); data.put("msg", msgSuccess); data.put("result", 1); } else {data.put("success", false); data.put("msg", msgFailed); data.put("result", 0); }if (!isOperate) {data.put("data", object); } else {data.put("data", null); }return data; }
2、根据不同类型结果,调用不同的封装方法。
/** * 格式化请求结果(List类型) * * @param* @param objectList 对象列表 * @param msgSuccess 信息提示(请求成功) * @param msgFailed 信息提示(请求失败) * @return */@SuppressWarnings("unchecked")public static Tb_Response getResponse(List objectList, String msgSuccess, String msgFailed) {Tb_Response tb_Response = new Tb_Response (); if (objectList.size() > 0) {tb_Response.setSuccess(true); tb_Response.setMsg(msgSuccess); tb_Response.setResult(1); tb_Response.setData((List ) objectList); } else {tb_Response.setSuccess(false); tb_Response.setMsg(msgFailed); tb_Response.setResult(0); }return (Tb_Response ) tb_Response; }/** * 格式化请求结果(Object类型) * * @param * @param object 对象信息 * @param msgSuccess 信息提示(请求成功) * @param msgFailed 信息提示(请求失败) * @return */@SuppressWarnings("unchecked")public static Tb_ResponseData getResponseData(T object, String msgSuccess, String msgFailed) {Tb_ResponseData tb_ResponseData = https://www.it610.com/article/new Tb_ResponseData (); if (object != null) {tb_ResponseData.setSuccess(true); tb_ResponseData.setMsg(msgSuccess); tb_ResponseData.setResult(1); tb_ResponseData.setData((T) object); } else {tb_ResponseData.setSuccess(false); tb_ResponseData.setMsg(msgFailed); tb_ResponseData.setResult(0); tb_ResponseData.setData(null); }return (Tb_ResponseData ) tb_ResponseData; }/** * 格式化请求结果(Boolean类型) * * @param result 请求结果 * @param msgSuccess 信息提示(请求成功) * @param msgFailed 信息提示(请求失败) * @return */public static Tb_ResponseData getResponseData(boolean result, String msgSuccess, String msgFailed) {Tb_ResponseData tb_ResponseData = https://www.it610.com/article/new Tb_ResponseData (); if (result) {tb_ResponseData.setSuccess(true); tb_ResponseData.setMsg(msgSuccess); tb_ResponseData.setResult(1); } else {tb_ResponseData.setSuccess(false); tb_ResponseData.setMsg(msgFailed); tb_ResponseData.setResult(0); }tb_ResponseData.setData(null); return tb_ResponseData; }
到此这篇关于SpringBoot接口返回结果封装方法的文章就介绍到这了,更多相关SpringBoot接口封装内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
推荐阅读
- JAVA(抽象类与接口的区别&重载与重写&内存泄漏)
- Activiti(一)SpringBoot2集成Activiti6
- 基于微信小程序带后端ssm接口小区物业管理平台设计
- 2020-04-07vue中Axios的封装和API接口的管理
- SpringBoot调用公共模块的自定义注解失效的解决
- 解决SpringBoot引用别的模块无法注入的问题
- 调取接口时报404错误(ID:16)
- CICC(脑机接口,科幻几近成真())
- 前端代码|前端代码 返回顶部 backToTop
- 接口|axios接口报错-参数类型错误解决