欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

如何使用springboot實(shí)現(xiàn)統(tǒng)一JSON格式的接口返回結(jié)果

這篇文章主要介紹了如何使用spring boot實(shí)現(xiàn)統(tǒng)一JSON格式的接口返回結(jié)果,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

張北ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為成都創(chuàng)新互聯(lián)公司的ssl證書銷售渠道,可以享受市場價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:028-86922220(備注:SSL證書合作)期待與您的合作!

第一步,定義好JavaBean。

package com.yclouds.myhelper.web.response;
 
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.yclouds.myhelper.web.error.code.BaseEnumError;
import java.io.Serializable;
import lombok.Data;
 
/**
 * 所有服務(wù)統(tǒng)一響應(yīng)數(shù)據(jù)格式
 *
 * @author ye17186
 * @version 2019/2/15 14:40
 */
@Data
public class ApiResp<T> implements Serializable {
 
  private static final long serialVersionUID = 9211889136173018364L;
 
  /**
   * 正常響應(yīng)碼
   */
  private static final int SUCCESS_CODE = 0;
 
  /**
   * 正常響應(yīng)消息
   */
  private static final String SUCCESS_MSG = "SUCCESS";
 
  /**
   * 錯(cuò)誤碼
   */
  private int code = SUCCESS_CODE;
 
  /**
   * 錯(cuò)誤信息
   */
  private String msg = SUCCESS_MSG;
 
  /**
   * 響應(yīng)內(nèi)容,默認(rèn)為null
   */
  private T data = null;
 
  /**
   * 是否的正常響應(yīng)
   *
   * @return true=正常;false=異常
   */
  @JsonIgnore
  public boolean isOK() {
    return code == SUCCESS_CODE;
  }
 
  /**
   * 無data的正常返回
   */
  public static ApiResp retOK() {
    return new ApiResp();
  }
 
  /**
   * 有data的正常返回
   *
   * @param data data內(nèi)容
   * @param <T> data類型
   */
  public static <T> ApiResp<T> retOK(T data) {
    ApiResp<T> response = new ApiResp<>();
    response.setData(data);
    return response;
  }
 
  /**
   * 無data的失敗返回
   *
   * @param error 錯(cuò)誤類型
   */
  public static ApiResp retFail(BaseEnumError error) {
    return retFail(error.getCode(), error.getMsg());
  }
 
  /**
   * 有data的失敗返回
   *
   * @param error 錯(cuò)誤類型
   * @param data 詳細(xì)錯(cuò)誤信息
   */
  public static <T> ApiResp<T> retFail(BaseEnumError error, T data) {
    return retFail(error.getCode(), error.getMsg(), data);
  }
 
  /**
   * 無data的失敗返回
   *
   * @param code 錯(cuò)誤碼
   * @param msg 錯(cuò)誤信息
   */
  public static <T> ApiResp<T> retFail(int code, String msg) {
    ApiResp<T> response = new ApiResp<>();
    response.setCode(code);
    response.setMsg(msg);
    return response;
  }
 
  /**
   * 有data的失敗返回
   * <br>
   * 失敗返回的場景不多,所以沒有嚴(yán)格要求T泛型
   *
   * @param code 錯(cuò)誤碼
   * @param msg 錯(cuò)誤信息
   */
  public static <T> ApiResp<T> retFail(int code, String msg, T data) {
    ApiResp<T> response = new ApiResp<>();
    response.setCode(code);
    response.setMsg(msg);
    response.setData(data);
    return response;
  }
}

第二步,在Controller中使用

  @GetMapping("/test1")
  public ApiResp test1() {
 
    return ApiResp.retOK("Hello World");
  }
 
  @GetMapping("/test2")
  public ApiResp test2() {
 
    return ApiResp.retFail(BaseEnumError.SYSTEM_NO_LOGIN);
  }

可以在Postman查看具體的響應(yīng)內(nèi)容如下:

如何使用spring boot實(shí)現(xiàn)統(tǒng)一JSON格式的接口返回結(jié)果

如何使用spring boot實(shí)現(xiàn)統(tǒng)一JSON格式的接口返回結(jié)果

當(dāng)然,ApiResp中的泛型,也可以使用復(fù)雜的數(shù)據(jù)對象。實(shí)際開發(fā)中,每種錯(cuò)誤響應(yīng)都有自己的響應(yīng)碼code,和錯(cuò)誤信息msg,示例中統(tǒng)一定義了一個(gè)BaseEnumError的枚舉類,具體內(nèi)容可參照我的github項(xiàng)目https://github.com/ye17186/myhelper-spring-boot-starter

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“如何使用spring boot實(shí)現(xiàn)統(tǒng)一JSON格式的接口返回結(jié)果”這篇文章對大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!

本文題目:如何使用springboot實(shí)現(xiàn)統(tǒng)一JSON格式的接口返回結(jié)果
文章來源:http://www.chinadenli.net/article0/pesooo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名關(guān)鍵詞優(yōu)化ChatGPT企業(yè)網(wǎng)站制作品牌網(wǎng)站建設(shè)虛擬主機(jī)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)