Java封裝公共Result結(jié)果返回類的實現(xiàn)
前言
在使用Java開發(fā)接口請求中,我們需要對請求進行進行統(tǒng)一返回值,這時候我們自己封裝一個統(tǒng)一的Result返回類,下面就介紹下我用的這種的這個類
當(dāng)然,也可以使用第三方庫封裝的Result結(jié)果返回類,根據(jù)個人喜好選擇即可。
封裝公共Result類
首先需要創(chuàng)建一個Result類:
我的想法是:需要有一個請求成功的響應(yīng)。一個請求失敗的響應(yīng),如果請求
成功需要返回請求結(jié)果,如果請求失敗則返回失敗原因,且每一個請求都要帶上當(dāng)前時間戳,請求狀態(tài)(200:成功,400:失敗),是否成功(true成功 or false失敗)
順著這個思路,就寫出了下面的代碼:
如果你也有不同的思路和建議,歡迎評論留言
package com.wyh.common;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
@Data
@NoArgsConstructor
@AllArgsConstructor
/**
* @Author 魏一鶴
* @Description 公共Result返回類
* @Date 23:19 2023/1/3
**/
public class Result {
/**
* 是否成功
**/
private Boolean isSuccess;
/**
* 錯誤信息
**/
private String errorMsg;
/**
* 請求狀態(tài) 200-成功 400-失敗
**/
private Integer status;
/**
* 當(dāng)前時間戳
**/
private Long timestamp;
/**
* 返回結(jié)果
**/
private Object data;
public static Result ok() {
return new Result(true, null, 200, System.currentTimeMillis(),null);
}
public static Result ok(Object data) {
return new Result(true, null, 200,System.currentTimeMillis(),data);
}
public static Result ok(List<?> data) {
return new Result(true, null, 200,System.currentTimeMillis(),data);
}
public static Result fail(String errorMsg) {
return new Result(false, errorMsg, 400,System.currentTimeMillis(),null);
}
}
這樣一個公共Result結(jié)果返回類就寫好了,我們簡單寫兩個接口分別測試下失敗或者失敗吧!
成功測試
首先測試下成功的響應(yīng):data里面就查出來的數(shù)據(jù)

數(shù)據(jù)有點多,我們把data合上看下整體結(jié)構(gòu):

是我們想要的返回格式
失敗測試
接下來測試下請求失敗的情況:如圖我給方法新增了一個參數(shù)name,如果參數(shù)name為空,name就會請求失敗并且返回錯誤信息
ps:判斷參數(shù)是否為空應(yīng)該放在service里面處理,我這里演示就懶得這么寫了

參數(shù)為空的話,請求失敗并且返回錯誤信息

當(dāng)然如果name不為空,就是請求成功的:

總結(jié)
以上就是我自己寫的一個Result結(jié)果返回類,對于現(xiàn)在的需求來說,完全是夠用的,如果后面進行升級會再來更新,更多相關(guān)Java封裝Result返回類內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Spring Data JPA開啟批量更新時樂觀鎖失效問題的解決方法
樂觀鎖的基本思想是,認(rèn)為在大多數(shù)情況下,數(shù)據(jù)訪問不會導(dǎo)致沖突,因此,樂觀鎖允許多個事務(wù)同時讀取和修改相同的數(shù)據(jù),而不進行顯式的鎖定,本文給大家介紹了Spring Data JPA開啟批量更新時樂觀鎖失效問題的解決方法,需要的朋友可以參考下2024-07-07
JAVA數(shù)據(jù)寫入生成excel文件和發(fā)送郵件
這篇文章主要介紹了JAVA數(shù)據(jù)寫入生成excel文件和發(fā)送郵件,流程:先導(dǎo)包 => 郵箱開啟配置 => java寫好配置類 => 測試發(fā)送 => 數(shù)據(jù)寫入excel => 郵件帶附件發(fā)送2024-06-06
Spring?Boot?多數(shù)據(jù)源處理事務(wù)的思路詳解
這篇文章主要介紹了Spring?Boot?多數(shù)據(jù)源如何處理事務(wù),本文單純就是技術(shù)探討,要從實際應(yīng)用中來說的話,我并不建議這樣去玩分布式事務(wù)、也不建議這樣去玩多數(shù)據(jù)源,畢竟分布式事務(wù)主要還是用在微服務(wù)場景下,對Spring?Boot?多數(shù)據(jù)源事務(wù)相關(guān)知識感興趣的朋友參考下本文2022-06-06

