枚举类: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>的更多相关文章

  1. Java工具类——数学相关的类

    Java工具类--数学相关的类 在上一篇文章中,我们系统学习了 Java 里面的包装类,那么这篇文章,我们就来学习一下Java提供好的类--数学相关的类. 一.数学类介绍 在最早期学习 Java 基础 ...

  2. java工具类系列 (四.SerializationUtils)

    java工具类系列 (四.SerializationUtils) SerializationUtils该类为序列化工具类,也是lang包下的工具,主要用于序列化操作 import java.io.Se ...

  3. Java工具类——通过配置XML验证Map

    Java工具类--通过配置XML验证Map 背景 在JavaWeb项目中,接收前端过来的参数时通常是使用我们的实体类进行接收的.但是呢,我们不能去决定已经搭建好的框架是怎么样的,在我接触的框架中有一种 ...

  4. 排名前 16 的 Java 工具类

    在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类.以下工具类.方法按使用流行度排名,参考数据来源于Github上随机选取的5万个开源项目源码. 一. ...

  5. 排名前16的Java工具类

    原文:https://www.jianshu.com/p/9e937d178203 在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类.以下工具类.方法 ...

  6. 第一章 Java工具类目录

    在这一系列博客中,主要是记录在实际开发中会常用的一些Java工具类,方便后续开发中使用. 以下的目录会随着后边具体工具类的添加而改变. 浮点数精确计算 第二章 Java浮点数精确计算 crc32将任意 ...

  7. java工具类之按对象中某属性排序

    import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import java.lang ...

  8. 干货:排名前16的Java工具类

    在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类.以下工具类.方法按使用流行度排名,参考数据来源于Github上随机选取的5万个开源项目源码. 一. ...

  9. Java工具类:给程序增加版权信息

       我们九天鸟的p2p网贷系统,基本算是开发完成了.   现在,想给后端的Java代码,增加版权信息.   手动去copy-paste,太没有技术含量. 于是,写了个Java工具类,给Java源文件 ...

  10. 常用高效 Java 工具类总结

    一.前言 在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类.以下工具类.方法按使用流行度排名,参考数据来源于Github上随机选取的5万个开源项目源码 ...

随机推荐

  1. 剑指 offer 第 24 天

    第 24 天 数学(中等) 剑指 Offer 14- I. 剪绳子 给你一根长度为 n 的绳子,请把绳子剪成整数长度的 m 段(m.n都是整数,n>1并且m>1),每段绳子的长度记为 k[ ...

  2. vue使用keep-alive出现的的activated和deactivated生命周期

    <keep-alive>包裹的动态组件会被缓存,它是一个抽象组件,它自身不会渲染一个dom元素,也不会出现在父组件链中.当组件在 <keep-alive> 内被切换,它的 ac ...

  3. STM32 HAL库学习 (3) 中断!

        中断在单片机开发中有着重中之重的地位.    中断即打断,实至CPU再执行当前程序时,由于系统出现了某种需要处理的紧急情况,CPU暂停正在执行的程序,转而去执行另一段特殊程序来处理的出现的紧急 ...

  4. [ACM]NOIP2011D1T1复现-铺地毯

    逆向考虑即可解决 #include<iostream> using namespace std; const int maxn= 100000 +5; int a[maxn][4];//0 ...

  5. JavaScript中计时器requestAnimationFrame、setTimeout、setInterval、setImmediate的使用和区别

    在JavaScript中,我们经常使用requestAnimationFrame.setTimeout.setInterval和setImmediate来控制代码的执行时机.它们各有特点和适用场景: ...

  6. python内置模块之ctype

    ctypes --- Python 的外部函数库¶ ctypes 是 Python 的外部函数库.它提供了与 C 兼容的数据类型,并允许调用 DLL 或共享库中的函数.可使用该模块以纯 Python ...

  7. JVM:并发的可达性分析

    当前主流编程语言的垃圾收集器基本上都是依靠可达性分析算法来判定对象是否存活的,可达性分析算法理论上要求全过程都基于一个能保障一致性的快照中才能够进行分析,这意味着必须全程冻结用户线程的运行. 在根节点 ...

  8. 安装MinGW,使用vscode进行C++编译

    1.下载 https://osdn.net/projects/mingw/downloads/68260/mingw-get-setup.exe/ 2.安装 直接默认所有选项安装即可,可以更换安装位置 ...

  9. 帝国cms将没有搜索到结果的关键字存入到数据库的方法

    在帝国cms网站前台搜索一个关键字,如果在网站中查询到了,这个关键字会被记录入搜索关键字表中,但是如果在网站中没有搜索到,就不会记录入搜索关键字表中,那怎么把没有搜索结果的关键字才能记录到数据库中,方 ...

  10. 在.NET 6.0中自定义接口路由

    大家好,我是张飞洪,感谢您的阅读,我会不定期和你分享学习心得,希望我的文章能成为你成长路上的垫脚石,让我们一起精进. 在本文中,我们将讨论ASP.NET Core中的新路由.我们将了解什么是接口(en ...