自定義響應資料結構
package com.leon.utils;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.databind.ObjectMapper;
/**
*
* @Title: JSONResult.java
* @Package com.leon.utils
* @Description: 自定義響應資料結構
* 本類可提供給 H5/ios/安卓/公眾號/小程式 使用
* 前端接受此類資料(json object)後,可自行根據業務去實現相關功能
*
* 200:表示成功
* 500:表示錯誤,錯誤資訊在msg欄位中
* 501:bean驗證錯誤,不管多少個錯誤都以map形式返回
* 502:攔截器攔截到使用者token出錯
* 555:異常丟擲資訊
* 556: 使用者qq校驗異常
* @Copyright: Copyright (c) 2020
* @Company: www.leon.com
* @version V1.0
*/
public class JSONResult {
// 定義jackson物件
private static final ObjectMapper MAPPER = new ObjectMapper();
// 響應業務狀態
private Integer status;
// 響應訊息
private String msg;
// 響應中的資料
private Object data;
@JsonIgnore
private String ok; // 不使用
public static JSONResult build(Integer status, String msg, Object data) {
return new JSONResult(status, msg, data);
}
public static JSONResult build(Integer status, String msg, Object data, String ok) {
return new JSONResult(status, msg, data, ok);
}
public static JSONResult ok(Object data) {
return new JSONResult(data);
}
public static JSONResult ok() {
return new JSONResult(null);
}
public static JSONResult errorMsg(String msg) {
return new JSONResult(500, msg, null);
}
public static JSONResult errorMap(Object data) {
return new JSONResult(501, "error", data);
}
public static JSONResult errorTokenMsg(String msg) {
return new JSONResult(502, msg, null);
}
public static JSONResult errorException(String msg) {
return new JSONResult(555, msg, null);
}
public static JSONResult errorUserQQ(String msg) {
return new JSONResult(556, msg, null);
}
public JSONResult() {
}
public JSONResult(Integer status, String msg, Object data) {
this.status = status;
this.msg = msg;
this.data = data;
}
public JSONResult(Integer status, String msg, Object data, String ok) {
this.status = status;
this.msg = msg;
this.data = data;
this.ok = ok;
}
public JSONResult(Object data) {
this.status = 200;
this.msg = "OK";
this.data = data;
}
public Boolean isOK() {
return this.status == 200;
}
public Integer getStatus() {
return status;
}
public void setStatus(Integer status) {
this.status = status;
}
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
public Object getData() {
return data;
}
public void setData(Object data) {
this.data = data;
}
public String getOk() {
return ok;
}
public void setOk(String ok) {
this.ok = ok;
}
}
相關文章
- 由自定義事件到vue資料響應事件Vue
- GridView自定義列資料繫結,和自定義頒功能View
- BeetleX之webapi自定義響應內容WebAPI
- 【譯】如何自定義Flask中的響應類Flask
- 資料結構:順序結構和鏈式結構的資料型別定義資料結構資料型別
- Flutter自定義View以及響應式UI框架原理FlutterViewUI框架
- 深入RxEasyHttp網路庫教你3分鐘學會自定義資料結構HTTP資料結構
- 日計不足涓滴成河-自定義響應結果格式化器
- Highstate資料結構定義資料結構
- 如何構建自定義人臉識別資料集
- .NET Core授權失敗如何自定義響應資訊?
- 根據資料庫中取記錄自定義一棵樹結構 (轉)資料庫
- 自定義資料型別資料型別
- sqlite中存放自定義表結構的位置SQLite
- Salt Highstate資料結構定義資料結構
- 【資料結構】——堆及其應用資料結構
- DM自定義資料型別資料型別
- PyTorch 自定義資料集PyTorch
- Vue響應式—-資料響應式原理Vue
- Vue響應式----資料響應式原理Vue
- Angular 自定義結構型指令 structural directive 的使用AngularStruct
- VC自定義訊息postmessage用法(訊息響應函式)函式
- 對應定義結構獲取
- 繫結自定義事件事件
- 自定義view總結View
- ASP.NET Core Identity自定義資料庫結構和完全使用Dapper而非EntityFramework CoreASP.NETIDE資料庫APPFramework
- 結構化資料、半結構化資料和非結構化資料
- 聊聊如何自定義資料脫敏
- 自定義react資料驗證元件React元件
- echarts自定義提示框資料Echarts
- Datazen地圖Chart自定義資料地圖
- 【資料結構篇】認識資料結構資料結構
- 小白折騰伺服器(七):自定義介面錯誤響應格式伺服器
- 資料結構實驗:連結串列的應用資料結構
- 資料結構筆記-棧的應用資料結構筆記
- 資料結構小白系列之資料結構概述資料結構
- 如何定義一個自帶資料區的結構體:三種資料結構體的比較結構體資料結構
- 按自定義週期統計資料