欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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的資料請關注腳本之家其它相關文章!

相關文章

  • Java緩存池代碼實例詳解

    Java緩存池代碼實例詳解

    本篇文章主要介紹了Java實現(xiàn)簡單的緩存方法實例,需要的朋友可以參考下
    2017-04-04
  • Java多線程Callable接口實現(xiàn)代碼示例

    Java多線程Callable接口實現(xiàn)代碼示例

    相信大家對Java編程中如何創(chuàng)建線程已經不陌生了,這篇文章就向朋友們介紹實現(xiàn)callable接口,具體實例詳見正文。
    2017-10-10
  • Spring?Get請求與post請求的實現(xiàn)

    Spring?Get請求與post請求的實現(xiàn)

    在Spring中,GET請求和POST請求是兩種常見的HTTP請求方法,用于與服務器進行交互,本文詳細的介紹一下Spring?Get請求與post請求的實現(xiàn),感興趣的可以了解一下
    2023-10-10
  • 解決@Autowired報錯Could not autowire. No beans of ‘XXX‘ type found問題

    解決@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-12
  • JAVA中通過Hibernate-Validation進行參數(shù)驗證

    JAVA中通過Hibernate-Validation進行參數(shù)驗證

    這篇文章主要介紹了JAVA中通過Hibernate-Validation進行參數(shù)驗證,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-04-04
  • java 高并發(fā)中volatile的實現(xiàn)原理

    java 高并發(fā)中volatile的實現(xiàn)原理

    這篇文章主要介紹了java 高并發(fā)中volatile的實現(xiàn)原理的相關資料,在多線程并發(fā)編程中synchronized和Volatile都扮演著重要的角色,Volatile是輕量級的synchronized,它在多處理器開發(fā)中保證了共享變量的“可見性”,需要的朋友可以參考下
    2017-03-03
  • IDEA下使用Spring Boot熱加載的實現(xiàn)

    IDEA下使用Spring Boot熱加載的實現(xiàn)

    本文主要介紹了IDEA下使用Spring Boot熱加載的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-06-06
  • SpringBoot中優(yōu)化Undertow性能的方法總結

    SpringBoot中優(yōu)化Undertow性能的方法總結

    Undertow是一個采用 Java 開發(fā)的靈活的高性能Web服務器,提供包括阻塞和基于NIO的非堵塞機制,本文將給大家介紹SpringBoot中優(yōu)化Undertow性能的方法,文中有相關的代碼示例供大家參考,需要的朋友可以參考下
    2024-08-08
  • Java集合系列之LinkedList源碼分析

    Java集合系列之LinkedList源碼分析

    這篇文章主要為大家詳細介紹了Java集合系列之LinkedList源碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-02-02
  • Spring集成Seata方式(案例演示)

    Spring集成Seata方式(案例演示)

    這篇文章主要介紹了Spring集成Seata方式,本案例使用Seata-All演示,結合實例代碼給大家講解的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-08-08

最新評論