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

JAVA錯(cuò)誤類(lèi)結(jié)果類(lèi)和分頁(yè)結(jié)果類(lèi)代碼詳解

 更新時(shí)間:2020年02月07日 08:54:55   作者:泡椒炒甜瓜  
這篇文章主要介紹了JAVA錯(cuò)誤類(lèi)結(jié)果類(lèi)和分頁(yè)結(jié)果類(lèi)代碼詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

這篇文章主要介紹了JAVA錯(cuò)誤類(lèi)結(jié)果類(lèi)和分頁(yè)結(jié)果類(lèi)代碼詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

代碼如下

public interface ErrorCode {
  String getCode();

  String getMsg();

  /**
   * 公共錯(cuò)誤碼<br/>
   * 碼段:10000~10099
   * 
   * 
   */
  public enum CommonError implements ErrorCode {

    SUCCESS("0", "success"),
    UNKNOWN_ERROR("10000", "未知錯(cuò)誤"),
    SYSTEM_ERROR("10001", "系統(tǒng)內(nèi)部處理異常[%s]"),
    REQUEST_ERROR("10002", "請(qǐng)求地址或參數(shù)錯(cuò)誤"),
    DB_PROCESS_FAILED("10003", "數(shù)據(jù)庫(kù)處理失敗"),
    DATA_NOT_FOUND("10004", "數(shù)據(jù)不存在"),
    PARAM_REQUIRED("10005", "參數(shù)為空[%s]");
   

    private String code;
    private String msg;

    private CommonError(String code, String msg) {
      this.code = code;
      this.msg = msg;
    }

    @Override
    public String getCode() {
      return this.code;
    }

    @Override
    public String getMsg() {
      return this.msg;
    }

    public ErrorCode setParams(Object... params) {
      this.msg = String.format(this.msg, params);
      return this;
    }
  }

  /**
   * 接口錯(cuò)誤碼<br/>
   * 碼段:10100~10199
   * 
   */
  public enum ApiError implements ErrorCode {
    REQUEST_EMPTY("10100", "請(qǐng)求數(shù)據(jù)為空"), 
    API_NOT_EXISTS("10102", "接口不存在");

    private String code;
    private String msg;

    private ApiError(String code, String msg) {
      this.code = code;
      this.msg = msg;
    }

    @Override
    public String getCode() {
      return this.code;
    }

    @Override
    public String getMsg() {
      return this.msg;
    }
  }
}

ErrorCode error = CommonError.SYSTEM_ERROR.setParams(e.getCause().getMessage());

Result:

public class Result<T> {
  public static final String SUCCESS = "0";
  public static final String SCUCESS_MSG = "success";

  private String result = SUCCESS;
  private String msg = SCUCESS_MSG;
  private T data;

  public Result() {}

  public Result(ErrorCode error, Object... msgParams) {
    this.setError(error, msgParams);
  }

  public Result(ErrorCode error) {
    this.setError(error);
  }

  public void setError(ErrorCode error, Object... msgParams) {
    this.result = error.getCode();
    this.msg = error.getMsg();
    if (msgParams != null && msgParams.length > 0) {
      this.msg = String.format(msg, msgParams);
    }
  }

  public void setError(ErrorCode error) {
    this.setError(error, new Object[] {});
  }

  public String getResult() {
    return result;
  }

  public void setResult(String result) {
    this.result = result;
  }

  public String getMsg() {
    return msg;
  }

  public void setMsg(String msg) {
    this.msg = msg;
  }

  public T getData() {
    return data;
  }

  public void setData(T data) {
    this.data = data;
  }

  public boolean isSuccess() {
    return SUCCESS.equals(result);
  }

  @Override
  public String toString() {
    return "Result [result=" + result + ", msg=" + msg + ", data=" + data + "]";
  }

}

PageResult:

public class PageResult<T> {
  public static final String SUCCESS = "0";
  public static final String SCUCESS_MSG = "success";

  private String result = SUCCESS;
  private String msg = SCUCESS_MSG;
  private Integer total = 0;
  private List<T> rows = new ArrayList<>();

  public PageResult() {}

  public PageResult(ErrorCode error, Object... msgParams) {
    this.setError(error, msgParams);
  }

  public PageResult(ErrorCode error) {
    this.setError(error);
  }

  public String getResult() {
    return result;
  }

  public void setResult(String result) {
    this.result = result;
  }

  public String getMsg() {
    return msg;
  }

  public void setMsg(String msg) {
    this.msg = msg;
  }

  public Integer getTotal() {
    return total;
  }

  public void setTotal(Integer total) {
    this.total = total;
  }

  public List<T> getRows() {
    return rows;
  }

  public void setRows(List<T> rows) {
    this.rows = rows;
  }

  public void setError(ErrorCode error, Object... msgParams) {
    this.result = error.getCode();
    this.msg = error.getMsg();
    if (msgParams != null && msgParams.length > 0) {
      this.msg = String.format(msg, msgParams);
    }
  }

  public void setError(ErrorCode error) {
    this.setError(error, new Object[] {});
  }

  public boolean isSuccess() {
    return SUCCESS.equals(result);
  }
}

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • springboot redis分布式鎖代碼實(shí)例

    springboot redis分布式鎖代碼實(shí)例

    這篇文章主要介紹了springboot redis分布式鎖代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-12-12
  • Mybatis之映射實(shí)體類(lèi)中不區(qū)分大小寫(xiě)的解決

    Mybatis之映射實(shí)體類(lèi)中不區(qū)分大小寫(xiě)的解決

    這篇文章主要介紹了Mybatis之映射實(shí)體類(lèi)中不區(qū)分大小寫(xiě)的解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • Java基礎(chǔ)之多線程

    Java基礎(chǔ)之多線程

    以下是我們Java基礎(chǔ)多線程的一些知識(shí)點(diǎn)總結(jié),看完以后會(huì)覺(jué)得多線程也可以這么簡(jiǎn)單,小編精心推薦,希望能對(duì)大家有所幫助
    2018-09-09
  • Java創(chuàng)建對(duì)象的四種方式詳解

    Java創(chuàng)建對(duì)象的四種方式詳解

    這篇文章主要介紹了Java創(chuàng)建對(duì)象的四種方式詳解,如果我們不想利用默認(rèn)構(gòu)造器來(lái)創(chuàng)建java對(duì)象,而想利用指定的構(gòu)造器來(lái)創(chuàng)建java對(duì)象,則需要利用Construtor對(duì)象,每個(gè)Construtor對(duì)應(yīng)一個(gè)構(gòu)造器,需要的朋友可以參考下
    2023-11-11
  • 優(yōu)化Java內(nèi)存管理來(lái)防止“GC”錯(cuò)誤的方法詳解

    優(yōu)化Java內(nèi)存管理來(lái)防止“GC”錯(cuò)誤的方法詳解

    垃圾回收(GC)是 Java 中的一個(gè)重要機(jī)制,它可以管理內(nèi)存并回收不再使用的對(duì)象所占用的資源,在本文中,我們將探討一些技巧,幫助您避免這一錯(cuò)誤,確保您的 Java 應(yīng)用程序順利運(yùn)行,需要的朋友可以參考下
    2023-11-11
  • springBoot詳細(xì)講解使用mybaties案例

    springBoot詳細(xì)講解使用mybaties案例

    MyBatis本是apache的一個(gè)開(kāi)源項(xiàng)目iBatis,2010年這個(gè)項(xiàng)目由apache software foundation遷移到了google code,并且改名為MyBatis。2013年11月遷移到Github。iBATIS一詞來(lái)源于“internet”和“abatis”的組合,是一個(gè)基于Java的持久層框架
    2022-05-05
  • springboot后端接收前端傳數(shù)組參數(shù)三種方法

    springboot后端接收前端傳數(shù)組參數(shù)三種方法

    這篇文章主要給大家介紹了關(guān)于springboot后端接收前端傳數(shù)組參數(shù)三種方法,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2023-07-07
  • Java實(shí)現(xiàn)動(dòng)態(tài)驗(yàn)證碼生成

    Java實(shí)現(xiàn)動(dòng)態(tài)驗(yàn)證碼生成

    這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)動(dòng)態(tài)驗(yàn)證碼生成,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • spring如何動(dòng)態(tài)指定具體實(shí)現(xiàn)類(lèi)

    spring如何動(dòng)態(tài)指定具體實(shí)現(xiàn)類(lèi)

    這篇文章主要為大家詳細(xì)介紹了spring如何動(dòng)態(tài)指定具體實(shí)現(xiàn)類(lèi),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • Java實(shí)戰(zhàn)之用springboot+netty實(shí)現(xiàn)簡(jiǎn)單的一對(duì)一聊天

    Java實(shí)戰(zhàn)之用springboot+netty實(shí)現(xiàn)簡(jiǎn)單的一對(duì)一聊天

    這篇文章主要介紹了Java實(shí)戰(zhàn)之用springboot+netty實(shí)現(xiàn)簡(jiǎn)單的一對(duì)一聊天,文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)Java的小伙伴們有非常好的幫助,需要的朋友可以參考下
    2021-04-04

最新評(píng)論