通用返回类型定义

2023-11-22 16:15
文章标签 通用 返回 类型定义

本文主要是介绍通用返回类型定义,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

定义业务异常类:

import lombok.AllArgsConstructor;
import lombok.Data;@Data
@AllArgsConstructor
public class BusinessException extends RuntimeException{private String errorCode;private String errorMsg;
}

错误枚举类:

public enum UnifiedResponseEnums {BAD_PARAM("1002","参数有错"),NOT_FOUND("1003","资源不存在"),NO_PERMISSION("1004","权限不足"),BAD_INPUT_PARAM("1005","入参有问题"),BAD_EMAIL_PARAM("1006","email入参有问题"),BAD_ID_PARAM("1007","id入参有问题"),BAD_IP("1008","非法IP"),INVALLD_TOKEN("1009","无效令牌"),TOO_MANY_PARAMS("1010","参数过载");private String errorCode;private String errorMsg;UnifiedResponseEnums(String errorCode, String errorMsg) {this.errorCode = errorCode;this.errorMsg = errorMsg;}public String getErrorCode() {return errorCode;}public void setErrorCode(String errorCode) {this.errorCode = errorCode;}public String getErrorMsg() {return errorMsg;}public void setErrorMsg(String errorMsg) {this.errorMsg = errorMsg;}
}

Controller 中使用:

UnifiedResponseEnums enum1 = UnifiedResponseEnums.valueOf(UnifiedResponseEnums.class,"BAD_PARAM");
throw new BusinessException(enum1.getErrorCode(), enum1.getErrorMsg());

设置通用返回结果:

public class JsonResultObject<T> {private String Code;private String errorCode;private String message;private String errorMessage;private T data;public JsonResultObject(String code, String message, T data) {Code = code;this.message = message;this.data = data;}public JsonResultObject(String code, String errorCode, String message, String errorMessage, T data) {Code = code;this.errorCode = errorCode;this.message = message;this.errorMessage = errorMessage;this.data = data;}public JsonResultObject(String errorCode, String errorMessage) {this.errorCode = errorCode;this.errorMessage = errorMessage;}public String getCode() {return Code;}public void setCode(String code) {Code = code;}public String getErrorCode() {return errorCode;}public void setErrorCode(String errorCode) {this.errorCode = errorCode;}public String getMessage() {return message;}public void setMessage(String message) {this.message = message;}public String getErrorMessage() {return errorMessage;}public void setErrorMessage(String errorMessage) {this.errorMessage = errorMessage;}public T getData() {return data;}public void setData(T data) {this.data = data;}
}

错误返回定义:


public class ErrorResult <T>{private String errorMessage;private String errorCode;private T data;public ErrorResult(String errorCode,String errorMessage, T data) {this.errorMessage = errorMessage;this.errorCode = errorCode;this.data = data;}public String getErrorMessage() {return errorMessage;}public void setErrorMessage(String errorMessage) {this.errorMessage = errorMessage;}public String getErrorCode() {return errorCode;}public void setErrorCode(String errorCode) {this.errorCode = errorCode;}public T getData() {return data;}public void setData(T data) {this.data = data;}
}

 

这篇关于通用返回类型定义的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/411358

相关文章

Django HTTPResponse响应体中返回openpyxl生成的文件过程

《DjangoHTTPResponse响应体中返回openpyxl生成的文件过程》Django返回文件流时需通过Content-Disposition头指定编码后的文件名,使用openpyxl的sa... 目录Django返回文件流时使用指定文件名Django HTTPResponse响应体中返回openp

MyBatis-Plus通用中等、大量数据分批查询和处理方法

《MyBatis-Plus通用中等、大量数据分批查询和处理方法》文章介绍MyBatis-Plus分页查询处理,通过函数式接口与Lambda表达式实现通用逻辑,方法抽象但功能强大,建议扩展分批处理及流式... 目录函数式接口获取分页数据接口数据处理接口通用逻辑工具类使用方法简单查询自定义查询方法总结函数式接口

mybatis执行insert返回id实现详解

《mybatis执行insert返回id实现详解》MyBatis插入操作默认返回受影响行数,需通过useGeneratedKeys+keyProperty或selectKey获取主键ID,确保主键为自... 目录 两种方式获取自增 ID:1. ​​useGeneratedKeys+keyProperty(推

Python通用唯一标识符模块uuid使用案例详解

《Python通用唯一标识符模块uuid使用案例详解》Pythonuuid模块用于生成128位全局唯一标识符,支持UUID1-5版本,适用于分布式系统、数据库主键等场景,需注意隐私、碰撞概率及存储优... 目录简介核心功能1. UUID版本2. UUID属性3. 命名空间使用场景1. 生成唯一标识符2. 数

SpringBoot中使用Flux实现流式返回的方法小结

《SpringBoot中使用Flux实现流式返回的方法小结》文章介绍流式返回(StreamingResponse)在SpringBoot中通过Flux实现,优势包括提升用户体验、降低内存消耗、支持长连... 目录背景流式返回的核心概念与优势1. 提升用户体验2. 降低内存消耗3. 支持长连接与实时通信在Sp

统一返回JsonResult踩坑的记录

《统一返回JsonResult踩坑的记录》:本文主要介绍统一返回JsonResult踩坑的记录,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录统一返回jsonResult踩坑定义了一个统一返回类在使用时,JsonResult没有get/set方法时响应总结统一返回

MyBatis设计SQL返回布尔值(Boolean)的常见方法

《MyBatis设计SQL返回布尔值(Boolean)的常见方法》这篇文章主要为大家详细介绍了MyBatis设计SQL返回布尔值(Boolean)的几种常见方法,文中的示例代码讲解详细,感兴趣的小伙伴... 目录方案一:使用COUNT查询存在性(推荐)方案二:条件表达式直接返回布尔方案三:存在性检查(EXI

Python函数返回多个值的多种方法小结

《Python函数返回多个值的多种方法小结》在Python中,函数通常用于封装一段代码,使其可以重复调用,有时,我们希望一个函数能够返回多个值,Python提供了几种不同的方法来实现这一点,需要的朋友... 目录一、使用元组(Tuple):二、使用列表(list)三、使用字典(Dictionary)四、 使

Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案

《Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案》:本文主要介绍Vue3组件中getCurrentInstance()获取App实例,但是返回nu... 目录vue3组件中getCurrentInstajavascriptnce()获取App实例,但是返回n

前端下载文件时如何后端返回的文件流一些常见方法

《前端下载文件时如何后端返回的文件流一些常见方法》:本文主要介绍前端下载文件时如何后端返回的文件流一些常见方法,包括使用Blob和URL.createObjectURL创建下载链接,以及处理带有C... 目录1. 使用 Blob 和 URL.createObjectURL 创建下载链接例子:使用 Blob