Java工具类Result<T>
枚举类:ResultCodeEnum
- /**
- * 统一返回结果状态信息类
- *
- */
- @Getter
- public enum ResultCodeEnum {
- SUCCESS(200,"成功"),
- FAIL(201, "失败"),
- PARAM_ERROR( 202, "参数不正确"),
- SERVICE_ERROR(203, "服务异常"),
- DATA_ERROR(204, "数据异常"),
- ILLEGAL_REQUEST(205, "非法请求"),
- REPEAT_SUBMIT(206, "重复提交"),
- LOGIN_AUTH(208, "未登录"),
- PERMISSION(209, "没有权限"),
- CODE_ERROR(210, "验证码错误"),
- ACCOUNT_ERROR(211, "账号不正确"),
- LOGIN_DISABLED_ERROR(212, "该用户已被禁用"),
- REGISTER_MOBILE_ERROR(213, "手机号已被使用"),
- LOGIN_TIMEOUT(214, "登录超时"),
- PASSWORD_ERROR(215, "密码不正确"),
- ACCOUNT_STOP( 216, "账号已停用"),
- NODE_ERROR( 217, "该节点下有子节点,不可以删除"),
- URL_ENCODE_ERROR( 220, "URL编码失败"),
- ILLEGAL_CALLBACK_REQUEST_ERROR( 221, "非法回调请求"),
- FETCH_ACCESSTOKEN_FAILD( 222, "获取accessToken失败"),
- FETCH_USERINFO_ERROR( 223, "获取用户信息失败"),
- PAY_RUN(250, "支付中"),
- CANCEL_ORDER_FAIL(251, "取消订单失败"),
- CANCEL_ORDER_NO(252, "不能取消预约"),
- HOSCODE_EXIST(260, "医院编号已经存在"),
- NUMBER_NO(261, "可预约号不足"),
- TIME_NO(262, "当前时间不可以预约"),
- SIGN_ERROR(270, "签名错误"),
- SIGN_NOT_EXIST(271, "没有签名"),
- SIGN_OVERDUE(272, "签名过期"),
- HOSPITAL_OPEN(273, "医院未开通,暂时不能访问"),
- HOSPITAL_NOT_EXIST(274, "医院数据不存在,请先上传医院数据"),
- HOSPITAL_LOCK(275, "医院被锁定,暂时不能访问"),
- DATA_SEARCH_ERROR(280, "查询记录异常"),
- DATA_CALCULATE_ERROR(281, "数据计算异常"),
- DATA_SQL_GRAMMAR_ERROR(282, "SQL语法异常");
- ;
- private Integer code;
- private String message;
- ResultCodeEnum(Integer code, String message) {
- this.code = code;
- this.message = message;
- }
- }
工具类:Result
- /**
- * 全局统一返回结果类
- *
- */
- @Data
- public class Result<T> {
- //返回码
- private Integer code;
- //返回消息
- private String message;
- //返回数据
- private T data;
- public Result(){}
- // 返回数据
- protected static <T> Result<T> build(T data) {
- Result<T> result = new Result<T>();
- if (data != null)
- result.setData(data);
- return result;
- }
- public static <T> Result<T> build(T body, Integer code, String message) {
- Result<T> result = build(body);
- result.setCode(code);
- result.setMessage(message);
- return result;
- }
- public static <T> Result<T> build(T body, ResultCodeEnum resultCodeEnum) {
- Result<T> result = build(body);
- result.setCode(resultCodeEnum.getCode());
- result.setMessage(resultCodeEnum.getMessage());
- return result;
- }
- public static<T> Result<T> ok(){
- return Result.ok(null);
- }
- /**
- * 操作成功
- * @param data baseCategory1List
- * @param <T>
- * @return
- */
- public static<T> Result<T> ok(T data){
- return build(data, ResultCodeEnum.SUCCESS);
- }
- public static<T> Result<T> fail(){
- return Result.fail(null);
- }
- /**
- * 操作失败
- * @param data
- * @param <T>
- * @return
- */
- public static<T> Result<T> fail(T data){
- return build(data, ResultCodeEnum.FAIL);
- }
- public Result<T> message(String msg){
- this.setMessage(msg);
- return this;
- }
- public Result<T> code(Integer code){
- this.setCode(code);
- return this;
- }
- }
Java工具类Result<T>的更多相关文章
- Java工具类——数学相关的类
Java工具类--数学相关的类 在上一篇文章中,我们系统学习了 Java 里面的包装类,那么这篇文章,我们就来学习一下Java提供好的类--数学相关的类. 一.数学类介绍 在最早期学习 Java 基础 ...
- java工具类系列 (四.SerializationUtils)
java工具类系列 (四.SerializationUtils) SerializationUtils该类为序列化工具类,也是lang包下的工具,主要用于序列化操作 import java.io.Se ...
- Java工具类——通过配置XML验证Map
Java工具类--通过配置XML验证Map 背景 在JavaWeb项目中,接收前端过来的参数时通常是使用我们的实体类进行接收的.但是呢,我们不能去决定已经搭建好的框架是怎么样的,在我接触的框架中有一种 ...
- 排名前 16 的 Java 工具类
在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类.以下工具类.方法按使用流行度排名,参考数据来源于Github上随机选取的5万个开源项目源码. 一. ...
- 排名前16的Java工具类
原文:https://www.jianshu.com/p/9e937d178203 在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类.以下工具类.方法 ...
- 第一章 Java工具类目录
在这一系列博客中,主要是记录在实际开发中会常用的一些Java工具类,方便后续开发中使用. 以下的目录会随着后边具体工具类的添加而改变. 浮点数精确计算 第二章 Java浮点数精确计算 crc32将任意 ...
- java工具类之按对象中某属性排序
import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import java.lang ...
- 干货:排名前16的Java工具类
在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类.以下工具类.方法按使用流行度排名,参考数据来源于Github上随机选取的5万个开源项目源码. 一. ...
- Java工具类:给程序增加版权信息
我们九天鸟的p2p网贷系统,基本算是开发完成了. 现在,想给后端的Java代码,增加版权信息. 手动去copy-paste,太没有技术含量. 于是,写了个Java工具类,给Java源文件 ...
- 常用高效 Java 工具类总结
一.前言 在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类.以下工具类.方法按使用流行度排名,参考数据来源于Github上随机选取的5万个开源项目源码 ...
随机推荐
- 发布新版博客备份功能:生成 sqlite 数据库文件,vscode 插件可查看
大家好,最近我们重新开发了园子的博客备份功能,今天发布第一个预览版,欢迎大家试用. 点击博客后台侧边栏的博客备份进入新版博客备份: 点击创建备份按钮创建博客备份任务(目前每天只能创建一次备份),待备份 ...
- 可靠消息最终一致性【本地消息表、RocketMQ 事务消息方案】
更多内容,前往IT-BLOG 一.可靠消息最终一致性事务概述 可靠消息最终一致性方案是指当事务发起方执行完成本地事务后并发出一条消息,事务参与方(消息消费者)一定能够接收消息并处理事务成功,此方案强调 ...
- 一个基于GPT模型实现的Git Commit信息自动生成工具
每次提交代码的时候,你是否有为如何写Commit Message而迟迟按不下提交的时刻呢?然后,死磨硬泡写了一些并提交后,又被review的小伙伴吐槽了呢?相信很多小伙伴有过这样的经历吧? 趁着最近C ...
- DOM属性节点加其他节点的操作
节点属性 nodeType 返回值为数值 节点类型(nodeType) 节点名字(nodeName) 节点值(nodeValue) 元素节点 ...
- pandas之面属行统计
描述统计学(descriptive statistics)是一门统计学领域的学科,主要研究如何取得反映客观现象的数据,并以图表形式对所搜集的数据进行处理和显示,最终对数据的规律.特征做出综合性的描述分 ...
- 随机模块random os模块 序列化模块
random: 验证码的实现: choice是选择列表中任意一个 ##记得把randint取出来的数字转化成str类型,要不就会相加 ##cha()是把asc编码表里的数字转化成字符 更进一步做成函数 ...
- LeeCode 318周赛复盘
T1: 对数组执行操作 思路:模拟 public int[] applyOperations(int[] nums) { int n = nums.length; for (int i = 0; i ...
- servlet 没有实例化可以直接调用非静态方法??
今天练习servlet时,居然发现没有实例化可以直接调用非静态方法.看了好长时间发现:省去了this关键字.记录一下. public class Servlet2 extends GenericSer ...
- Cesium 案例(九)示例中小程序集合(1)
因为这几天在忙一些客观上无法逃脱的事,没有大块时间对中大型案例进行学习,所以对官方案例中的代码不超过40行的程序进行了学习.我把他们放在一到两个随笔中. 注:[所有案例中最前面务必加上] 1 Cesi ...
- 最新版本 Stable Diffusion 开源 AI 绘画工具之中文自动提词篇
目录 标签生成器 提示词自动补全 标签生成器 由于输入正向提示词 prompt 和反向提示词 negative prompt 都是使用英文,所以对学习母语的我们非常不友好 使用网址:https://t ...