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 mvc整合tiles框架的簡單入門教程(maven)
這篇文章主要給大家介紹了關(guān)于Spring mvc整合tiles框架的簡單入門教程(maven),文中通過示例代碼介紹的非常詳細,對大家具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考借鑒,下面來一起看看詳細的介紹吧。2017-12-12java中@EnableAutoConfiguration注解使用
在Spring Boot框架中,@EnableAutoConfiguration是一種非常重要的注解,本文就來介紹一下java中@EnableAutoConfiguration注解使用,感興趣的可以了解一下2023-11-11IDEA 使用mybatis插件Free Mybatis plugin的步驟(推薦)
這篇文章主要介紹了IDEA 使用mybatis插件Free Mybatis plugin的相關(guān)知識,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-12-12Spring超詳細講解創(chuàng)建BeanDefinition流程
Spring在初始化過程中,將xml中定義的對象解析到了BeanDefinition對象中,我們有必要了解一下BeanDefinition的內(nèi)部結(jié)構(gòu),有助于我們理解Spring的初始化流程2022-06-06Java使用easypoi快速導(dǎo)入導(dǎo)出的實現(xiàn)
這篇文章主要介紹了實現(xiàn)Java使用easypoi快速導(dǎo)入導(dǎo)出的實現(xiàn),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-03-03MybatisPlus查詢條件為空字符串或null問題及解決
這篇文章主要介紹了MybatisPlus查詢條件為空字符串或null問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-06-06