java定義通用返回結果類ResultVO使用示例詳解
更新時間:2023年09月24日 14:20:00 作者:Leovany
這篇文章主要為大家介紹了java定義通用返回結果類ResultVO使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
1. 定義通用返回結果類
定義ResultVO類,作返回給前端的對象結構,主要有4個字段
- code : 錯誤碼
- data : 內容
- message : 消息
- description : 具體描述
import lombok.Data; import java.io.Serializable; /** * 通用返回結果類 * @param <T> */ @Data public class ResultVO<T> implements Serializable { /** * 錯誤碼 */ private int code; /** * 內容 */ private T data; /** * 消息 */ private String message; /** * 描述 */ private String description; public ResultVO(int code, T data, String message, String description) { this.code = code; this.data = data; this.message = message; this.description = description; } public ResultVO(int code, T data) { this(code,data,"",""); } public ResultVO(int code, T data, String message) { this(code,data,message,""); } }
2 工具類
/** * 通用返回響應工具類 * * @author leovany * @date 2023/09/23 */ public class ResultUtils { /** * 成功 * * @param data 數(shù)據(jù) * @return {@link ResultVO}<{@link T}> */ public static <T> ResultVO<T> success(T data) { return new ResultVO<T>(0, data, "success"); } /** * 錯誤 * * @param code 錯誤碼 * @param message 信息 * @param description 描述 * @return {@link ResultVO} */ public static ResultVO error(int code, String message, String description) { return new ResultVO<>(code, null, message, description); } }
3 使用
- 返回值用
ResultVO<XXX>
封裝 - 成功返回:
ResultUtils.success(XX);
- 失敗失?。?code>ResultUtils.error(code,message,description);
@PostMapping("/login") public ResultVO<User> userLogin(@RequestBody UserLoginRequest userLoginRequest, HttpServletRequest request) { String userAccount = userLoginRequest.getUserAccount(); String userPassword = userLoginRequest.getUserPassword(); // 參數(shù)校驗 if (StringUtils.isAnyBlank(userAccount, userPassword)) { return ResultUtils.error(40000,"參數(shù)錯誤","參數(shù)不能為空"); } // 從數(shù)據(jù)庫查找用戶 User user = userService.doLogin(userAccount, userPassword, request); return ResultUtils.success(user); }
跟之前對比,代碼更加優(yōu)雅
4 返回給前端效果圖
返回給前端的響應結果
{ "code": 0, "data": { "id": 10, "username": "admin" }, "message": "success", "description": "" }
- 成功
- 失敗
總結
通過封裝ResultVO
通用返回結果對象之后,保證了后端跟前端視圖對象(VO)的統(tǒng)一。
以上就是java定義通用返回結果類ResultVO使用示例詳解的詳細內容,更多關于java返回結果類ResultVO的資料請關注腳本之家其它相關文章!
相關文章
解決@Autowired報錯Could not autowire. No bea
介紹了在IDEA中使用@Autowired報錯Couldnot autowire. No beans of 'XXX' type found的解決方法,原因是@Autowired在注入service時,由于service接口沒有實現(xiàn)類,而mybatis僅需提供Dao接口,導致@Autowired無法識別2024-12-12JAVA中通過Hibernate-Validation進行參數(shù)驗證
這篇文章主要介紹了JAVA中通過Hibernate-Validation進行參數(shù)驗證,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-04-04java 高并發(fā)中volatile的實現(xiàn)原理
這篇文章主要介紹了java 高并發(fā)中volatile的實現(xiàn)原理的相關資料,在多線程并發(fā)編程中synchronized和Volatile都扮演著重要的角色,Volatile是輕量級的synchronized,它在多處理器開發(fā)中保證了共享變量的“可見性”,需要的朋友可以參考下2017-03-03IDEA下使用Spring Boot熱加載的實現(xiàn)
本文主要介紹了IDEA下使用Spring Boot熱加載的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-06-06SpringBoot中優(yōu)化Undertow性能的方法總結
Undertow是一個采用 Java 開發(fā)的靈活的高性能Web服務器,提供包括阻塞和基于NIO的非堵塞機制,本文將給大家介紹SpringBoot中優(yōu)化Undertow性能的方法,文中有相關的代碼示例供大家參考,需要的朋友可以參考下2024-08-08