文章目录

  • CommonResult
  • IErrorCode
  • ResultCode

CommonResult

package com.app.tools;/*** 通用返回对象* @param <T>*/
public class CommonResult <T>{/*** 状态码*/private long code;/*** 提示信息*/private String message;/*** 数据封装*/private T data;protected CommonResult() {}protected CommonResult(long code, String message, T data) {this.code = code;this.message = message;this.data = data;}/*** 成功返回结果** @param data 获取的数据*/public static <T> CommonResult<T> success(T data) {return new CommonResult<T>(ResultCode.SUCCESS.getCode(), ResultCode.SUCCESS.getMessage(), data);}/*** 成功返回结果** @param data 获取的数据* @param  message 提示信息*/public static <T> CommonResult<T> success(T data, String message) {return new CommonResult<T>(ResultCode.SUCCESS.getCode(), message, data);}/*** 失败返回结果* @param errorCode 错误码*/public static <T> CommonResult<T> failed(IErrorCode errorCode) {return new CommonResult<T>(errorCode.getCode(), errorCode.getMessage(), null);}/*** 失败返回结果* @param errorCode 错误码* @param message 错误信息*/public static <T> CommonResult<T> failed(IErrorCode errorCode,String message) {return new CommonResult<T>(errorCode.getCode(), message, null);}/*** 失败返回结果* @param message 提示信息*/public static <T> CommonResult<T> failed(String message) {return new CommonResult<T>(ResultCode.FAILED.getCode(), message, null);}/*** 失败返回结果*/public static <T> CommonResult<T> failed() {return failed(ResultCode.FAILED);}/*** 参数验证失败返回结果*/public static <T> CommonResult<T> validateFailed() {return failed(ResultCode.VALIDATE_FAILED);}/*** 参数验证失败返回结果* @param message 提示信息*/public static <T> CommonResult<T> validateFailed(String message) {return new CommonResult<T>(ResultCode.VALIDATE_FAILED.getCode(), message, null);}/*** 未登录返回结果*/public static <T> CommonResult<T> unauthorized(T data) {return new CommonResult<T>(ResultCode.UNAUTHORIZED.getCode(), ResultCode.UNAUTHORIZED.getMessage(), data);}/*** 未授权返回结果*/public static <T> CommonResult<T> forbidden(T data) {return new CommonResult<T>(ResultCode.FORBIDDEN.getCode(), ResultCode.FORBIDDEN.getMessage(), data);}public long getCode() {return code;}public void setCode(long code) {this.code = code;}public String getMessage() {return message;}public void setMessage(String message) {this.message = message;}public T getData() {return data;}public void setData(T data) {this.data = data;}
}

IErrorCode

package com.app.tools;/*** 常用API返回对象接口*/
public interface IErrorCode {/*** 返回码*/long getCode();/*** 返回信息*/String getMessage();
}

ResultCode

package com.app.tools;public enum ResultCode implements IErrorCode{SUCCESS(200, "操作成功"),FAILED(500, "操作失败"),VALIDATE_FAILED(404, "参数检验失败"),UNAUTHORIZED(401, "暂未登录或token已经过期"),FORBIDDEN(403, "没有相关权限");private long code;private String message;private ResultCode(long code, String message) {this.code = code;this.message = message;}public long getCode() {return code;}public String getMessage() {return message;}
}

CommonResult响应工具类封装相关推荐

  1. JsonData响应工具类封装

    public class JsonData {/*** 状态码 0 表示成功*/private Integer code;/*** 数据*/private Object data;/*** 描述*/p ...

  2. java响应实体类封装

    前后端分离的开发模式中,或者与第三方接口交互,需要规范接口响应,下面是我在开发中的封装的一组响应实体类 响应实体父类, 父类中需要一个code,因为不管是响应消息还是数据,都要有code /**- @ ...

  3. Redis工具类封装讲解和实战

    Redis工具类封装讲解和实战     简介:高效开发方式 Redis工具类封装讲解和实战         1.常用客户端 https://redisdesktop.com/download      ...

  4. IOS开发基础之音频工具类封装AVAudioPlayer

    IOS开发基础之音频工具类封装AVAudioPlayer 源码在我的主页下面 ,项目名称是AVAudioPlayer 关键性代码 工具类的封装 // // LJAudioTool.h // AVAud ...

  5. 【JavaScript学习】JavaScript 常用工具类封装

    文章目录 1.JavaScript 常用工具类封装 (1)获得浏览器地址所有参数 (2)将json转为get参数 (3)格式校验工具类 (4)数组操作工具类 (5)表单取值工具类 (6)时间转换工具类 ...

  6. Android 图片处理工具类封装2

    http://www.2cto.com/kf/201312/263638.html Android 图片处理工具类封装 2013-12-10     0个评论   来源:Wiker Yong 的专栏  ...

  7. Redis工具类封装

    Redis工具类封装 使用redis也好几年了,总是拷贝来拷贝去的,这次干脆放在这把,每次来这拷贝,不用在工程里面找来找去了. /*** Redis工具类* @author Huangliniao* ...

  8. ElasticSearch工具类封装

    最近在项目中有看到一种比较实用的ElasticSearch工具类封装方式,特此记录便于日后查阅.         1.controller层 @RequestMapping(value = " ...

  9. XmlMapper详解及工具类封装

    一.XmlMapper说明 1.依赖包引入 <dependency><groupId>com.fasterxml.jackson.dataformat</groupId& ...

最新文章

  1. 路由和交换机工作原理
  2. 计算机编程课程顺序_您可以在6月开始参加630项免费的在线编程和计算机科学课程...
  3. 【直播】鱼佬:数据挖掘师之路(河北高校数据挖掘邀请赛)
  4. R语言自定义变成进行决策曲线分析DCA曲线绘制(Decision Curve Analysis)
  5. netty 文件传输服务器,Netty之二进制文件传输
  6. Linux的关机与重启命令
  7. Android开发的小技巧总结
  8. 线段树位运算的三种操作(|,^,)
  9. 更新丨.NET 7 预览版2 中的 ASP.NET Core
  10. 多用途管理仪表板UI模板,把枯燥变得简单
  11. Python的numpy,1.15.0和1.14.5,函数结果可能存在差异
  12. 快手分享链接,实战解析无水印视频源码
  13. Java基础练习题---this
  14. python代码表达失恋_罗建军失恋
  15. linux rpm是啥意思,rpm是什么意思?
  16. 从句 Clauses
  17. python 安装第三方包-安装失败(pycharm/ anaconda navigator)
  18. CSS利用PS切图+学成在线综合案例
  19. 零基础学DevOps必看教程,带你10分钟快速实战入门DevOps
  20. iOS 支付宝好友分享

热门文章

  1. Java写一个简单的静态文件的HTTP服务器(基于Socket)
  2. Java如何解决乱码问题
  3. Codeforces Round #462 (Div. 2) C. A Twisty Movement dp + 思维转换
  4. Codeforces Round #627 (Div. 3) E. Sleeping Schedule dp
  5. acwing3132. 食物(BZOJ3028)
  6. 牛客题霸 [ 调整数组顺序使奇数位于偶数前面] C++题解/答案
  7. 人工智能——图像分析第二期练习
  8. 【无码专区5】01串(大讨论+构造)
  9. 洛谷P1650:田忌赛马(贪心)
  10. CF453C:Little Pony and Summer Sun Celebration(dfs、构造)