public class Result<T> {/*** 状态码*/private String status;/*** 获取状态。** @return 状态*/public String getStatus() {return status;}/*** 状态信息,错误描述.*/private String message;/*** 获取消息内容。** @return 消息*/public String getMessage() {return message;}/*** 数据.*/private T data;/*** 获取数据内容。** @return 数据*/public T getData() {return data;}private Result(String status, String message, T data) {this.status = status;this.message = message;this.data = data;}private Result(String status, String message) {this.status = status;this.message = message;}private Result(String message) {this.message = message;}/*** 创建一个带有状态、消息和数据的结果对象.** @param status*            状态* @param message*            消息内容* @param data*            数据* @return 结构数据*/public static <T> Result<T> buildResult(Status status, String message, T data) {return new Result<T>(status.getCode(), message, data);}/*** 创建一个带有状态、消息和数据的结果对象.** @param status*            状态* @param message*            消息内容* @return 结构数据*/public static <T> Result<T> buildResult(Status status, String message) {return new Result<T>(status.getCode(), message);}/*** 创建一个带有状态和数据的结果对象.** @param status*            状态* @param data*            数据* @return 结构数据*/public static <T> Result<T> buildResult(Status status, T data) {return new Result<T>(status.getCode(), status.getReason(), data);}/*** 创建一个带有状态的结果对象.** @param status*            状态* @return 结构数据*/public static <T> Result<T> buildResult(Status status) {return new Result<T>(status.getCode(), status.getReason());}public enum Status {/*** 状态*/OK("200", "正确"),BAD_REQUEST("400", "错误的请求"),UNAUTHORIZED("401", "禁止访问"),NOT_FOUND("404", "没有可用的数据"),PWD_ERROR("300", "密码错误"),EXIT("403", "已经存在"),INTERNAL_SERVER_ERROR("500", "服务器遇到了一个未曾预料的状况"),SERVICE_UNAVAILABLE("503", "服务器当前无法处理请求"),ERROR("9999", "数据不能为空");/*** 状态码,长度固定为6位的字符串.*/private String code;/*** 错误信息.*/private String reason;Status(String code, String reason) {this.code = code;this.reason = reason;}public String getCode() {return code;}public String getReason() {return reason;}@Overridepublic String toString() {return code + ": " + reason;}}

测试:

  @RequestMapping("/all")public Result<List<User>> getAll() {List<User> list = userService.list();return Result.buildResult(Result.Status.OK, list);}

返回结果

Java工具类Result<T>相关推荐

  1. Java工具类Result

    Java工具类Result Result:(下面写了两种Result类的编写方式,这两种的使用方法在最后面),最主要的功能就是为了向前端发送数据的时候能够更高效快捷,编写代码如下: 首先编写一个枚举类 ...

  2. 【Java工具类】(1)—Java中驼峰与下划线相互转换

    Java工具类(1)-Java中驼峰与下划线相互转换 1.驼峰命名法 /** * 驼峰式命名法 */ public static String toCamelCase(String s) {if (s ...

  3. 使用JAVA工具类进行邮件发送

    使用JAVA工具类进行邮件发送 使用JAVA工具类进行邮件发送 文章目录 使用JAVA工具类进行邮件发送 前言 一.前期准备工作 二.使用步骤 1.引入依赖 2.进行发送邮件 前言 提示:我们在开发过 ...

  4. RSA加密算法介绍及Java工具类

    一.RSA加密算法介绍 当今重要的三类加密算法:非对称加密.对称加密以及哈希算法(HASH严格说不是加密算法,但由于其不可逆性,已成为加密算法中的一个重要构成部分). 1976年以前,所有的加密方法都 ...

  5. 【java工具类-抓取图片】正则抓取内容里面的j图片,正则,图片替换格式处理图片java处理文章内容里面的图片格式化工具类,能够最大限度的自动是被图片IMG标签和java使用正则抓取图片说明

    目录 1.java处理图片格式自动抓取格式案例 java代码运行案例: 自动抓取的结果如下 2.java代码去除HTML的格式进行返回无格式文本代码 可以经过正则过滤掉,里面的HTML格式,删除空格, ...

  6. 【Java工具类】(30)—DES加密工具类

    Java工具类(30)-DES加密工具类 package com.awifi.cloudnative.container.manage.provider.utils;import org.apache ...

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

    2019独角兽企业重金招聘Python工程师标准>>> 干货:排名前 16 的 Java 工具类!   在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最 ...

  8. 排名前 16 的 Java 工具类

    转载来自微信公众号:Java 技术栈.如有侵权,请联系作者删除!! 在 Java 中,工具类定义了一组公共方法,这篇文章将介绍 Java 中使用最频繁及最通用的 Java 工具类.以下工具类.方法按使 ...

  9. beanutils工具类_16 个超级实用的 Java 工具类!

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

  10. java轻量级并行工具类_16 个超级实用的 Java 工具类

    原标题:16 个超级实用的 Java 工具类 源 /juejin 在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类.以下工具类.方法按使用流行度排名, ...

最新文章

  1. Confluence 6 查看空间活动
  2. R可视化包ggplot2更改背景色实战
  3. Linux集群部署和ipvsadm命令的使用
  4. VS2017创建Linux项目实现远程GDB调试
  5. abaqus 多层网格绑定_ABAQUS螺栓接触分析
  6. C#类和接口、虚方法和抽象方法及值类型和引用类型的区别
  7. SLAM Cartographer(12)Local SLAM的主线业务
  8. 长短期记忆网络_思维导图:长短期记忆模型
  9. js 栈 html标签修复,js 打印错误堆栈
  10. 例2.7 输出梯形 - 九度教程第14题(排版题)
  11. 经典网络DenseNet介绍
  12. JDK和JRE的区别
  13. 7-5 分段函数计算 (15 分)
  14. utc时间戳java_java利用时间戳来获取UTC时间
  15. 炸薯片和AI生产新闻一样样的!拢共分六步
  16. STM32Cube程序使用 DFU 烧写后Leave DFUMode无法运行程序
  17. 基于语音控制的智能家居实现
  18. python 解压缩文件中文名字乱码解决
  19. 去除stackoverflow页面上关不掉的cookie弹窗
  20. ap 目标检测算法map_目标检测的指标AP与mAP

热门文章

  1. Axure知识点:如何制作输入关键词模糊搜索功能?
  2. 联通应用商店一周年硕果累累
  3. Consider defining a bean of type ‘com.xingchen.media.service.MediaFileService‘ in your configuration
  4. Golang学习——error错误处理浅谈
  5. hook IE 总结
  6. vuex的commit和dispatch
  7. normalize.css v8.0.1中文版 - 官方最新
  8. 用C语言打印平行四边形
  9. jquery—addClass方法和removeClass方法
  10. echarts的legend显示不全_【报Bug】echarts图表的legend没有显示