SpringBoot(三):Respond封装

CST STUDIO SUITE 2023安装 破解工具的Crack文件夹内有一个名为「CST Studio Suite 2022」的文件夹,这也是于CST的安装目录同名的文件夹,直接把它拷贝到CST Studio Suite 2022的同级路径下即可,比如你的CST安装路径为:D:\Program Files\CST Studio Suite 2022,则将Crack目录内的「CST Studio Suite 2022」文件夹复制到 D:\Program Files\ 这个级别的路径下即可。软件百度网盘链接放在文章末尾啦!先不着急启动CST或者激活。 阅读详情

Spring Boot系列
SpringBoot(一):Quick start
SpringBoot(二):多环境切换

目录

一.简介
二.Respond封装
三.请求测试

一.简介

在实际的开发过程中,我们会面临着服务接口调用,接口中返回的数据格式各种,没有一个统一的标准,会造成在前端和后端,后端与后端数据对接的过程中出现各种数据格式异常,所以有必要对数据处理有有一定的状态码,信息,数据的封装

二.Respond封装

这里写图片描述

如上图,建立两个文件

/citydata/constant/ResponseCode.java
/citydata/response/ReturnData.java

2.1 ResponseCode.java

ps:该类是个枚举类,以后可以根据自己业务需求,添加自己所需的响应状态码和信息

package com.citydata.constant;

/**
 * @author yjgithub
 * @create 2018/05/28 15:38
 * @desc 响应状态码及信息
 **/
public enum ResponseCode {

    OPERATION_SUCCESS(200, "操作成功"),
    OPERATION_ERROR(400, "操作失败");


    ResponseCode(int status, String msg) {
        this.status = status;
        this.msg = msg;
    }

    private int status;
    private String msg;

    public int getStatus() {
        return status;
    }

    public void setStatus(int status) {
        this.status = status;
    }

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }
}

2.2 ReturnData.java

package com.citydata.response;

import com.citydata.constant.ResponseCode;

/**
 * @author yjgithub
 * @create 2018/5/28 11:48
 * @Description: 业务响应实体
 */

public class ReturnData {


    //响应业务状态码
    private Integer status;

    //响应信息
    private String msg;

    //响应数据
    private Object data;
    public ReturnData(Integer status, String msg) {
        this.status = status;
        this.msg = msg;
    }

    public ReturnData(Integer status, String msg, Object data) {
        this.status = status;
        this.msg = msg;
        this.data = data;
    }

    public static ReturnData build(Integer status, String msg,Object data) {
        return new ReturnData(status, msg, data);
    }

    public static ReturnData build(Integer status, String msg) {
        return new ReturnData(status, msg, null);
    }


    public static ReturnData ok(Object data) {
        return new ReturnData(data);
    }

    public static ReturnData ok() {
        return new ReturnData(null);
    }


    public ReturnData() {
    }


    public ReturnData(Object data) {
        this.status = ResponseCode.OPERATION_SUCCESS.getStatus();
        this.msg = ResponseCode.OPERATION_SUCCESS.getMsg();
        this.data = data;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }

    public Object getData() {
        return data;
    }

    public void setData(Object data) {
        this.data = data;
    }

    @Override
    public String toString() {
        return "ReturnData{" +
                "status=" + status +
                ", msg='" + msg + '\'' +
                ", data=" + data +
                '}';
    }
}

三.请求测试

3.1 改造类
ps:根据该SpringBoot(一)Quick start博客提到的三个类,进行改造返回对应的请求体(ReturnData)

    /citydata/controller/TestController.java   
    /citydata/service/TestService.java
    /citydata/service/impl/TestImpl.java

3.1.1TestController.java


/**
 * Created by yjgithub on 2018/5/28.
 */
@RestController
@RequestMapping("test")
public class TestController {
    @Autowired
    TestImpl testService;

    @RequestMapping("/index")
    public ReturnData index(String Str) {
        return testService.test(Str);
    }
}

3.1.2 TestService.java

/**
 *
 * Created by yjgithub on 2018/5/28.
 */
public interface TestService {
    public ReturnData test(String str);
}

3.1.3 TestImpl.java

/**
 * Created by yjgithub on 2018/5/28.
 */
@Service
public class TestImpl implements TestService {
    @Override
    public ReturnData test(String str) {
        ReturnData rd = new ReturnData(ResponseCode.OPERATION_SUCCESS.getStatus(),ResponseCode.OPERATION_SUCCESS.getMsg(),str);
        return rd;
    }
}

3.2 测试
这里写图片描述

PS:需要项目源代码,请邮件yjgithub@163.com联系

YOLO26优化:原创自研 | 自研独家创新DSAM注意力 ,基于BiLevelRoutingAttention注意力升级 提出新颖的注意力DSAM(Deformable Bi-level SpatialAttention Module),创新度极佳,适合科研创新,效果秒杀CBAM,Channel Attention+Spartial Attention升级为新颖的Deformable Bi-level Attention+Spartial Attention 阅读详情

相关推荐

金蝶ERP元数据解析:字段属性与表结构映射实战

本文深入解析金蝶ERP元数据的核心价值与应用实践,详细介绍了字段属性与表结构映射的关键技术。通过缓存获取与工具类直连两种方案对比,结合实际案例展示元数据在数据库校验、动态表单生成等场景的应用,帮助开发者高效解决二次开发中的常见问题。

weixin_33738555的博客 433

Spring Boot入门

springboot是什么 Spring Boot它本身并不提供Spring框架的核心特性以及扩展功能,只是用于快速、敏捷地开发新一代基于Spring框架的应用程序。 也就是说,它并不是用来替代Spring的解决方案,而是和Spring框架紧密结合用于提升Spring开发者体验的工具 同时它集成了大量常用的第三方库配置(例如Jackson, JDBC, Mongo, Redis, Mail等等...

qq_43330631的博客 455

用Multisim仿真石英晶体振荡电路:从等效模型到频响曲线实战

本文通过Multisim软件,从构建石英晶体等效电路模型入手,详细演示了如何仿真分析其电抗频率特性曲线,并实战搭建与调试皮尔斯振荡电路。文章深入探讨了振荡必须工作在串联与并联谐振点之间感性区的原因,为电子设计者提供了从理论到仿真的完整可视化学习路径。

ik67890123的博客 502

springboot封装响应实体

教你java如何实现封装响应实体

xc9711的博客 1770

芯片封装、功率密度提升及热管理系统优化三个维度分析高功率芯片散热技术挑战

本文探讨高功率芯片散热技术挑战与创新。随着新能源汽车MOSFET用量增至400颗/车,文章聚焦封装技术创新(双面散热、集成模块)、功率密度提升(SGT-MOSFET优化)和热管理系统协同优化三大方向。通过热仿真案例(如CPO散热优化)展示温升改善方案,强调需协同器件级设计、系统级仿真与先进封装技术(混合键合/玻璃基板)来解决高密度互连与散热矛盾,为功率密度跃升提供技术支撑。

莱歌数字的博客 1473

风控域——决策引擎系统设计

本文详细介绍了风控决策引擎系统的设计与应用。决策引擎系统是一种智能化工具,可自动化、数据驱动地辅助或替代人工决策,广泛应用于金融、医疗、营销、风控等领域。文章阐述了决策引擎的核心功能,包括自动化决策、动态规则管理、实时处理和模型集成,以及系统组成,涵盖数据输入层、规则引擎和模型服务层。此外,还探讨了决策引擎的典型应用场景、技术架构、组件设计,以及风控决策引擎系统的技术方案、设计难点和重点。

庄小焱 3320

axios 封装下载功能

封装axios接口请求下载二进制文件

全易 907

工程师必读一次性讲明白系列(十三)眼图、阻抗匹配、信号一致性、射频匹配、电磁感应

概念主要作用影响因素解决方法眼图评估信号质量,显示失真和噪声噪声、信号失真、时序抖动改善信号源、使用低噪声组件阻抗匹配避免信号反射,提高传输效率阻抗不匹配、传输线路特性使用匹配电路、适配器信号一致性保证信号稳定准确传输传输线路、噪声干扰使用屏蔽、滤波器,选择合适线路射频匹配确保射频信号高效传输天线设计、阻抗不匹配使用射频匹配器、调整天线设计电磁感应防止电磁干扰对信号的影响设备之间的电磁干扰(EMI)屏蔽、接地、滤波器。

weixin_43199439的博客 158

Vue+SpringBoot根据url返回文件流给前端下载文件(多个图片zip下载)

【代码】Vue+SpringBoot根据url返回文件流给前端下载文件。

zcl520sy的博客 3954

微信支付PHP集成指南

完整实现建议参考微信支付官方文档,包含更多支付场景(H5支付、Native支付等)和安全性处理细节。微信支付在PHP中的集成主要涉及服务端接口的调用和支付流程的实现。

bqq506615054的专栏 158

计算机毕设:线性回归 Xgboost LSTM 预测黄金价格实战 完整代码数据视频讲解 可直接运行

线性回归 Xgboost LSTM 预测黄金价格实战 完整代码数据视频讲解 可直接运行

1761

SpringBoot:返回响应,统一封装

接口的返回响应,封装成统一的数据格式,再返回给前端。

宋冠巡的博客 1182

交通仿真软件:SUMO_(13).Python脚本与TraCI接口

通过TraCI接口,用户可以实现与SUMO仿真器的实时交互,获取和控制交通数据。本文档详细介绍了如何使用Python脚本与TraCI接口进行交互,包括基本的设置、数据获取和控制方法。此外,还展示了几个高级应用示例,如交通流优化、多代理系统、车辆路径规划和车辆行为模拟。这些示例可以帮助用户更好地理解如何利用TraCI接口进行复杂的交通仿真和分析。希望这些内容对您有所帮助,如果您有任何问题或需要进一步的帮助,请参考SUMO的官方文档或社区支持。

kkchenjj的博客 996

InetAddress.getLocalHost().getHostName() took 5002 milliseconds to respond.

mac上启动springboot项目很慢的解决方案 报错: 2020-11-10 16:06:16.159 WARN 1124 --- [ restartedMain] o.s.boot.StartupInfoLogger : InetAddress.getLocalHost().getHostName() took 5002 milliseconds to respond. Please verify your network configuration (macOS m...

qq_40940622的博客 7673

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

mac启动springboot项目很慢的解决,inetaddress.getlocalhost().gethostname() took 5005 milliseconds to respond.

springboot版本2.4.6,macOS版本10.15.7。 本地启动感觉速度很慢,看了一下启动日志,发现一行warn日志:

yzh_1346983557的博客 5321

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

InetAddress.getLocalHost().getHostName() took 500000 milliseconds to respond.

现象 SpringBoot项目启动时,会获取本机主机名的IP,如果没有做好主机名和IP的映射的话,会导致启动变慢,并出现标题中的警告。 解决方法 先执行hostname命令获取本机的主机名 比如得到: server-001 修改**/etc/hosts**,将上面的主机名添加到本地IP映射中 127.0.0.1 localhost server-001 ::1 localhost server-001 ...

118路司机的博客 4576

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

respond重定向和输出流

package cn.com.respond; import javax.servlet.ServletException; import javax.servlet.ServletOutputStream; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.

weixin_49116772的博客 262

Springboot 启动WARN : InetAddress.getLocalHost().getHostName() took 55910 milliseconds to respond

InetAddress.getLocalHost().getHostName() took 55910 milliseconds

wind12198的博客 843

smiley-http-proxy-servlet做代理application/x-www-form-urlencoded请求类型,报错failed to respond

smiley-http-proxy-servlet做代理application/x-www-form-urlencoded请求类型,报错failed to respond

qq_38730338的博客 1723

猫头虎分享已解决Bug | Microservice Error: Timeout Error: Service didn‘t respond in time

嗨,我是猫头虎博主,在这里我们深挖技术,解决后端难题。今天,我们将探究微服务中常见的一个Bug——超时错误(Timeout Error),特别是在服务无法及时响应的情况下。涉及微服务架构、通信机制、容错处理等关键词,我们不仅要找出根本原因,而且要提供详细的解决方案和预防措施。准备好了吗?让我们开始这场技术之旅!在微服务架构中,服务之间通过网络进行通信。当一个服务请求另一个服务但未在预定时间内得到响应时,就会发生超时错误。问题解决方法优势注意事项超时错误增加超时时间简单有效可能导致等待时间增长。

深入 IT 各领域的角落,分享前沿技术见解与实践心得。与我一起,探索技术的无限可能! 1023

【kettle】pentaho/data-integration 报错:org.apache.http.NoHttpResponseException: failed to respond

【kettle】pentaho/data-integration 报错:org.apache.http.NoHttpResponseException: failed to respond

lisacumt的专栏 1458

(课程设计)springboot宠物管理系统-毕业设计 附源码121654

用户: 注册:首先检查用户名和邮箱是否存在,如不存在即可进行注册,并将用户输入的密码进行MD5加密,注册成功后提示注册成功,并将用户信息保存到数据库中。 登录:使用宠物医疗服务系统前是需要用户登录个人账号。 养宠资讯:用户登录宠物医疗服务系统首页时,可以浏览养宠资讯信息,根据不同地宠物可以查看每个不同宠物饲养地方式等,还可以将自己感兴趣的资讯点赞以及加入收藏列表中。 会员留言:用户可以在系统中的宠物信息栏内搜索宠物信息,具体包括:封面图、标题、分类、标签等。 宠物热点:用户可以浏览宠物列表,可以自行搜索某样

ID3461074420的博客 6892

2021/07/24 SpringBoot2 Web开发快速入门

环境:JDK13、IDEA、SpringBoot2.5.3、maven3.8.1 一、辅助插件 1、lombok 可以生成get,set方法,有参无参构造器,日志等的注解,引入依赖后去在idea的插件商店中搜索lombok并安装即可 <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <versi

Young的博客 977

linux springboot 服务启动巨慢

39m。

絮落锦乡的博客 301

【课程设计】springboot 红太阳爱老家政管理小程序 计算机毕业设计源码71092

家政管理小程序的功能主要分为老人用户根据自己的需求进行注册登录,浏览服务项目、健康档案、新闻资讯等。后台系统管理员因职责的不同,分为管理员和服务人员,普通管理员主要对系统用户、服务项目管理、项目类型管理、服务订单管理、订单评价管理、通知消息管理、健康档案管理、薪资福利管理、排班信息管理、培训信息管理、培训记录管理、打卡签到管理、系统管理、通知公告管理、资源管理进行处理,服务人员主要对服务订单管理、通知消息管理、薪资福利管理、排班信息管理、培训信息管理、培训记录管理、打卡签到管理进行处理....

Biye_Design的博客 619

mac上springboot项目启动很慢的解决方案

查看控制台报错日志 2022-05-08 8:06:16.159 WARN 1124 --- [ restartedMain] o.s.boot.StartupInfoLogger : InetAddress.getLocalHost().getHostName() took 5002 milliseconds to respond. Please verify your network configuration (macOS machines may need to a...

weixin_47084532的博客 1434
上一篇: SpringBoot(二):多环境切换
下一篇: SpringBoot(四):统一异常处理
yjgithub
博客等级 码龄11年 53粉丝 105原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值