news 2026/5/10 23:14:42

第8节: 统一接口工具类封装

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
第8节: 统一接口工具类封装
  • 统一业务状态码BizCodeEnum

状态码定义约束,共6位数,前3位代表服务,后3位代表接口

比如 商品微服务210, 购物车微服务220, 用户微服务230, 403代表权限

public enum BizCodeEnum { /** * 通用操作码 */ OPS_REPEAT(110001,"重复操作"), /** *验证码 */ CODE_TO_ERROR(240001,"接收号码不合规"), CODE_LIMITED(240002,"验证码发送过快"), CODE_ERROR(240003,"验证码错误"), CODE_CAPTCHA(240101,"图形验证码错误"), /** * 账号 */ ACCOUNT_REPEAT(250001,"账号已经存在"), ACCOUNT_UNREGISTER(250002,"账号不存在"), ACCOUNT_PWD_ERROR(250003,"账号或者密码错误"); @Getter private String message; @Getter private int code; private BizCodeEnum(int code, String message){ this.code = code; this.message = message; } }
  • 接口统一协议JsonData工具类开发
@Data @AllArgsConstructor @NoArgsConstructor public class JsonData { /** * 状态码 0 表示成功,1表示处理中,-1表示失败 */ private Integer code; /** * 数据 */ private Object data; /** * 描述 */ private String msg; /** * 成功,传入数据 * @return */ public static JsonData buildSuccess() { return new JsonData(0, null, null); } /** * 成功,传入数据 * @param data * @return */ public static JsonData buildSuccess(Object data) { return new JsonData(0, data, null); } /** * 失败,传入描述信息 * @param msg * @return */ public static JsonData buildError(String msg) { return new JsonData(-1, null, msg); } /** * 自定义状态码和错误信息 * @param code * @param msg * @return */ public static JsonData buildCodeAndMsg(int code, String msg) { return new JsonData(code, null, msg); } /** * 传入枚举,返回信息 * @param codeEnum * @return */ public static JsonData buildResult(BizCodeEnum codeEnum){ return JsonData.buildCodeAndMsg(codeEnum.getCode(),codeEnum.getMessage()); } }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/6 7:38:25

告别传统开发,3个月极速转型AI大模型岗!独家详细大模型学习路线图,助你一路逆袭,成为AI行业佼佼者!

随着人工智能技术的飞速发展,AI大模型逐渐成为了科技领域的热点话题。对于许多开发程序员而言,转行进入AI大模型领域不仅意味着职业发展的新机遇,更是个人技术能力的一次飞跃。然而,如何顺利地完成这一转变,并非易事。…

作者头像 李华
网站建设 2026/5/10 19:12:37

1小时打造Spacedesk简易原型:开发者实战

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 快速开发一个Spacedesk简化原型,仅实现最基本功能:1. 电脑屏幕截图传输;2. 基础触控事件转发;3. 单一设备连接。使用Python实现服务端…

作者头像 李华
网站建设 2026/5/1 15:18:46

AI如何帮你理解C++中的explicit关键字

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 创建一个C代码示例,展示explicit关键字在构造函数中的作用。要求包含一个没有explicit的构造函数和一个有explicit的构造函数,通过对比展示两者的区别。代码…

作者头像 李华
网站建设 2026/5/9 16:35:35

AI如何解决Python绘图中的‘tostring_rgb‘属性错误

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 创建一个Python代码示例,演示如何正确使用matplotlib的FigureCanvasAgg类将图形转换为RGB字符串。代码应包含错误处理,当遇到tostring_rgb属性缺失时&#x…

作者头像 李华
网站建设 2026/5/5 19:54:04

VPS vs 传统服务器:效率对比与成本分析

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 创建一个对比分析工具,输入用户的预期流量、应用类型和预算,自动生成VPS和传统服务器的详细对比报告(包括性能测试数据、成本计算、运维复杂度等…

作者头像 李华