Java工具类Result

后端响应结果工具类Result 后端响应结果工具类Result 结果工具类,用于后端给前端的响应。 好处:格式统一,使用方便; 使用泛型,包容各种类型,允许传入自定义code和message。 也可以快速响应成功或失败 package com.demo.document.common; import lombok.Data; /** * @author CCL * @since 2021年12月24日 */ @Data public class Result<T> { private int code; 阅读详情
AI摘要

本文介绍了如何使用Java编写Result类,通过枚举与泛型实现状态码、错误信息和数据的统一管理,提升前后端交互效率。两种Result类编写方式对比,适用于不同场景的代码组织。

Java工具类Result

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

首先编写一个枚举类
/**
 * @创建人 zengyuqiang
 * @创建时间 2022/6/24
 * @描述
 */
public enum Status {
    OK(200,"请求成功"),
    SYSTEM_ERROR(101,"系统异常"),
    SQL_ERROR(109,"SQL语句异常");
    ;
    //状态码
    private Integer code;
    //错误信息
    private String message;
    //构造器
    Status(Integer code,String message){
        this.code=code;
        this.message=message;
    }
    //只需要添加get方法就行
    public Integer getCode() {
        return code;
    }
    public String getMessage() {
        return message;
    }

    @Override
    public String toString() {
        return code+":"+message;
    }
}
Result类编写方式一:
/**
 * @创建人 zengyuqiang
 * @创建时间 2022/6/24
 * @描述
 */
public class R<T> {
    //状态码
    private Integer status;
    //错误的状态信息
    private String message;
    //数据
    private T data;

    //get方法:获取状态码
    public Integer getStatus() {
        return status;
    }
    //get方法:获取错误状态信息
    public String getMessage() {
        return message;
    }
    //get方法:获取数据内容
    public T getData() {
        return data;
    }
    /**
     * 构造器(私有化),这里写了3个构造器。根据实际发开需要添加即可
     */
    private R(Integer status,String message,T data){
        this.status=status;
        this.message=message;
        this.data=data;
    }
    private R(Integer status,String message){
        this.status=status;
        this.message=message;
    }
    private R(String message){
        this.message=message;
    }
    
    //下面就是根据需要返回不同参数格式的方法
    /**
     * 返回《状态码》《状态信息》《数据》
     * 状态码来自--->>枚举
     * 状态信息来自--->>开发人员
     * 数据来自--->>开发人员
     */
    public static <T> R<T> buildR(Status status,String message,T data){
        return new R<T>(status.getCode(),message,data);

    }

    /**
     * 返回《状态码》《状态信息》《状态信息》
     * 状态码来自--->>枚举
     * 状态信息来自--->>开发人员
     */
    public static <T> R<T> buildR(Status status,String message){
        return new R<T>(status.getCode(),message);
    }
    /**
     * 返回《状态码》《状态信息》《数据》
     * 状态码来自--->>枚举
     * 状态信息来自--->>枚举
     * 数据来自--->>开发人员
     */
    public static <T> R<T> buildR(Status status,T data){
        return new R<T>(status.getCode(),status.getMessage(),data);
    }
    /**
     * 返回《状态码》《状态信息》《数据》
     * 状态码来自--->>枚举
     * 状态信息来自--->>枚举
     * 数据来自--->>开发人员
     */
    public static <T> R<T> buildR(Status status){
        return new R<T>(status.getCode(),status.getMessage());
    }
}
Result类编写方式二:
/**
 * @创建人 zengyuqiang
 * @创建时间 2022/6/25
 * @描述
 */

public class R1<T> {
    private static Integer status;//状态码
    private static String message;//错误的的状态信息
    private T data;
    //构造器私有化
    private R1(){};

    //下面的方法,根据开发需求添加即可
    //请求成功调用此方法
    public static R1 OK(){
        R1 r1 = new R1();
        status=Status.OK.getCode();
        message=Status.OK.getMessage();
       return r1;
    }

    //系统异常调用此方法
    public static R1  SYSTEM_ERROR(){
        R1 r1 = new R1();
        status=Status.SYSTEM_ERROR.getCode();
        message=Status.SYSTEM_ERROR.getMessage();
        return r1;
    }

    //SQL语句异常调用此方法
    public static R1  SQL_ERROR(){
        R1 r1 = new R1();
        status=Status.SQL_ERROR.getCode();
        message=Status.SQL_ERROR.getMessage();
        return r1;
    }

    //传数据的方法
    public R1 data(T data){
        this.data= data;
        return this;
    }

    //toString方法
    @Override
    public String toString() {
        return "R1{" +
                "data=" + data +";"+
                "status=" + status +";"+
                "message=" + message +
                '}';
    }

将上面的枚举和工具类Result定义好后,下面就可以使用了

Result类编写方式一的用法:

@Controller
@RequestMapping("/AdsController")
public class AdsController {
    @ResponseBody
    @RequestMapping("/getAdsByType.action")
    public R<Object> getAdsByType(Integer adTypeId) throws SQLException {
         //下面的Object可以是任何类型的数据,也可以是数组或者集合
        return R.buildR(Status.OK,Object);
    }

}

Result类编写方式二的用法:

@Controller
@RequestMapping("/workers")
public class WokeresController {
    @ResponseBody
    @RequestMapping("/getWorkerByGroupPage.action")
    public R1 getWorkerByGroupPage(int currentPage, int size) throws SQLException {
       //R1.OK() --->R1调用方法OK(),表示调用枚举类ok的对象 --->返回的也是一个R1对象;
       //.data()--->这里的意思是上面返回的R1对象调用了方法.data()--->这个时候返回的还是一个R1对象;
       //由于上一行还是返回的R1对象,所以还可以在后面又去调用.data()。以此类推,后面可以无限制调用.data()方法,并且data用泛型修饰,所以可以根据开发需求调用即可对应的个数即可
        return R1.OK().data("集合数据").data("数组数据").data("name=zengyuqiang");
    }
}
手把手教你用Docker快速部署ZLMediaKit流媒体服务器(含WebRTC配置) 本文详细介绍了如何使用Docker快速部署ZLMediaKit流媒体服务器,并配置WebRTC功能。通过容器化部署,实现环境一致性、资源隔离和快速扩展,同时提供WebRTC专项配置、多协议推拉流实战测试及生产环境优化建议,帮助开发者高效搭建企业级流媒体平台。 阅读详情

相关推荐

BSW:MemMap模块配置及使用

(内存映射(MemMap)模块用于通过内存映射文件将代码和数据映射到特定的内存部分。MemMap生成特定的头文件,其中包含为MemorySection元素和编译器特定指令定义的内存映射预处理器。上面是比较官方的回答,说人话就是把数据和代码放在ECU内指定的地址。初级应用:软件中的bss,data,rodata,code,text,段需要在memory layout中划分具体的物理地址,对于多核系统,要将执行的数据和代码放在目标核的RAM和ROM。

Forever_Oct的博客 3678

JavaWeb中用来定义统一的响应结果的result类

在JavaWeb中,通常会使用一个名为Result的类来表示控制器方法的执行结果。这个类的作用是封装了控制器方法执行后的返回结果,包括要返回的数据、跳转的视图等信息。ResultResultResult使用Result类可以提高代码的可读性、可维护性和可扩展性,是一种常见的在JavaWeb开发中处理控制器方法返回结果的方式。使用ResultResult类封装了控制器方法的执行结果,将数据、视图路径、重定向标志和错误信息等相关信息封装在一个对象中,使得控制器方法的返回结果更加清晰和统一。:通过Result。

多多的博客 13万+

告别虚拟机!用ZYNQ7000和PYNQ 2.6.0打造一个能实时识别人脸的“智能摄像头”

本文详细介绍了如何利用Xilinx ZYNQ7000开发板和PYNQ 2.6.0框架构建实时人脸识别系统。通过硬件加速和嵌入式开发技术,该系统实现了低延迟、低功耗的独立运行能力,适用于边缘计算和物联网应用。文章包含从环境搭建到核心功能实现的完整指南,并提供了性能优化和问题排查的实用技巧。

weixin_42543046的博客 391

Java封装公共Result结果返回类

在使用Java开发接口请求中,我们需要对请求进行进行统一返回值,这时候我们自己封装一个统一的Result返回类,下面就介绍下我用的这种的这个类当然,也可以使用第三方库封装的Result结果返回类,根据个人喜好选择即可。以上就是我自己写的一个Result结果返回类,对于现在的需求来说,完全是够用的,如果后面进行升级会再来更新。

见证自己学习,成长的记录 8948

自制JS某课脚本

根据实际需求自制网页讯网刷题脚本,绕过人脸,弹窗,答题,实现自动化运行

2301_81243054的博客 3459

NC数据预处理避坑指南:从MATLAB读取到GeoTIFF导出,解决坐标翻转与值域异常

本文详细解析了NC数据预处理中的常见问题,包括MATLAB读取时的坐标翻转与GeoTIFF导出时的值域异常。通过实战案例,介绍了如何解决矩阵方向错乱、处理FillValue与scale_factor、精准移植空间参考等关键问题,帮助研究者高效完成气象数据的批量处理与GIS兼容性验证。

weixin_30788619的博客 654

Result类

Result类 返回值是int code,String msg,Object data。在java后端的开发中,我们需要用到一个类 返回类。

qq_43346784的博客 1702

Vienna整流器双PI闭环仿真:从SVPWM调制到中点电位平衡的实践解析

本文深入解析Vienna整流器双PI闭环仿真技术,涵盖SVPWM调制和中点电位平衡的实践细节。通过详细的MATLAB/Simulink仿真搭建流程和常见问题排查方法,帮助工程师掌握高效整流器控制策略,提升系统稳定性和动态响应性能。

weixin_29168153的博客 327

java后端返回的统一格式——Result类的常见写法

java后端返回的Result类的常用写法

Crush777的博客 1230

激光雷达点云配准:ICP与NDT算法详解

激光雷达点云配准:ICP与NDT算法详解​ ,人工智能,计算机视觉,大模型,AI,本文深入解析激光雷达点云配准的ICP与NDT算法。阐述了点云配准基础概念与评价指标,详解ICP算法原理、流程、最优变换矩阵计算、优缺点及改进版,给出Python代码示例;同样解析NDT算法的原理、流程、模型构建、优缺点、参数选择与代码示例。还对比两者在精度、效率、鲁棒性和适用场景的差异,提供算法选择建议,介绍实际应用案例、常见问题及解决方法,探讨算法发展趋势。

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 15万+

新手必看:C#调用YOLO模型完成图片/视频目标检测(上位机版)

新手学习C#调用YOLO模型,核心是先把基础流程跑通,再逐步优化。图片检测是基础,视频检测就是在图片的基础上加循环和线程,而上位机的实际项目,就是在这个基础上适配工业硬件和业务需求。本文的代码都是新手能直接复制运行的,如果你运行时遇到问题,先检查前期准备是否到位,再看避坑指南。记住,新手别追求一步到位,先实现功能,再慢慢优化性能和界面。等你能熟练调用YOLO模型后,再去研究模型训练、量化优化等进阶内容,会轻松很多。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 988

后端-Result.java工具类和SystemCode.java工具类

Result.java工具类和SystemCode.java工具类

weixin_46969393的博客 1159

996引擎 - 读写变量性能测试

单轮100万次读写,取3轮平均耗时(毫秒),有效读取率均为100%,数值越小性能越优。

灵台方寸山斜月三星洞 244

Java返回结果工具类Result

package com.xcx.exam.utils; import lombok.Data; @Data public class Result { private Integer code; private String msg; private T data; } package com.xcx.exam.utils; public class ResultUtils { public static Result success(Object obj) { return getResul

weixin_44311665的博客 8686

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

java中result结果工具类

1.该类规范地规定了返回格式。

weixin_43689176的博客 33

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

Java工具类Result<T>

public class Result<T> { /** * 状态码 */ private String status; /** * 获取状态。 * * @return 状态 */ public String getStatus() { return status; } /** * 状态信息,错误描述. */ private String

Marblog 1万+

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

Java工具类:返回结果集Result工具类以及JSONUtil

用于开发返回数据封装结果集Result工具类 import java.io.Serializable; import java.util.List; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; /** * json结果集 */ p...

大誌的博客 2万+

Java通用返回Result工具类

Java通用返回Result工具类

AKANGYONG的博客 3814

java自用工具类---Result返回类

学习用

weixin_50235632的博客 156

Java工具类Result<T>、ResultCodeEnum、JwtHelper、GlobalExceptionHandler

Java工具类Result<T>、ResultCodeEnum、JwtHelper、GlobalExceptionHandler

qq_44999561的博客 1059

java的result类

javaweb项目可以用到的一个工具类。

qq_61715584的博客 638

结果工具类使用Result、MsgResponse

目的:结果展示规范化。

weixin_43660497的博客 815

Result工具类,前后端分离

存放列表 Result工具类代码 package com.example.springboot.Util; public class Result<T> { //告诉前端返回数据成功与否 private String code; //保留数据错误信息 private String msg; //泛型数据 任何类型数据均可以被包含 private T data; public String getCode() { re

ProHc的博客 804

工具类

工具类: Result package com.test.user.common; public class Result { private final static String SUCCESS_CODE = "200"; private final static String ERROR_CODE = "400"; private String code;...

weixin_42313065的博客 122

springboot 封装的比较好的 统一的返回类型 工具类

用的时候要注意包的地址。

hanker的博客 276

Java后端开发常用工具类

个人开发过程中收集的常用工具类。

秋书一叶的博客 991
上一篇: MySQL中视图的用法简述
下一篇: 关于读取配置文件Propertise基本用法
sysouthello
博客等级 码龄5年 6粉丝 6原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值