目录结构:
Result类:
package com.xxxx.common.result; import lombok.Data; @Data public class Result<T> { //状态码 private Integer code; //信息 private String message; //数据 private T data; //构造私有化 private Result() { } //设置数据,返回对象的方法 public static<T> Result<T> build(T data,ResultCodeEnum resultCodeEnum) { //创建Resullt对象,设置值,返回对象 Result<T> result = new Result<>(); //判断返回结果中是否需要数据 if(data != null) { //设置数据到result对象 result.setData(data); } //设置其他值 result.setCode(resultCodeEnum.getCode()); result.setMessage(resultCodeEnum.getMessage()); //返回设置值之后的对象 return result; } //成功的方法 public static<T> Result<T> ok(T data) { Result<T> result = build(data, ResultCodeEnum.SUCCESS); return result; } //失败的方法 public static<T> Result<T> fail(T data) { return build(data,ResultCodeEnum.FAIL); } }
ResultCodeEnum枚举类:
package com.xxxx.common.result; import lombok.Getter; /** * 统一返回结果状态信息类 * */ @Getter public enum ResultCodeEnum { SUCCESS(200,"成功"), FAIL(201, "失败"), SERVICE_ERROR(2012, "服务异常"), DATA_ERROR(204, "数据异常"), ILLEGAL_REQUEST(205, "非法请求"), REPEAT_SUBMIT(206, "重复提交"), LOGIN_AUTH(208, "未登陆"), PERMISSION(209, "没有权限"), URL_ENCODE_ERROR( 216, "URL编码失败"), ILLEGAL_CALLBACK_REQUEST_ERROR( 217, "非法回调请求"), FETCH_ACCESSTOKEN_FAILD( 218, "获取accessToken失败"), FETCH_USERINFO_ERROR( 219, "获取用户信息失败"), ; private Integer code; private String message; private ResultCodeEnum(Integer code, String message) { this.code = code; this.message = message; } }
脚踏实地行,海阔天空飞
标签:
java
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通