您現在的位置是:首頁 > 單機遊戲首頁單機遊戲

Spring Boot 全域性異常處理入門-實現返回自定義的實體類

簡介}*** 成功返回方法* @param data 返回資料*public static ResponseMessage success(Object data){return new ResponseMessage(true, null

實體類是什麼

Spring Boot 全域性異常處理入門-初步理解異常處理機制

上一章我們透過實現ErrorController介面,統一了返回的異常JSON資料。

本文我們將實現自定義的實體類,用於向前端返回統一格式資訊。

Spring Boot 全域性異常處理入門-實現返回自定義的實體類

一、定義ResponseMessage實體類

在示例專案中,新增ResponseMessage實體類,如圖所示。

Spring Boot 全域性異常處理入門-實現返回自定義的實體類

ResponseMessage實體類程式碼如下:

public class ResponseMessage {

/**

* 是否成功

*/

private boolean success;

/**

* 返回文字

*/

private String msg;

/**

* 返回資料

*/

private Object data;

public ResponseMessage() {

}

public ResponseMessage(boolean success, String msg, Object data) {

this。success = success;

this。msg = msg;

this。data = data;

}

public boolean isSuccess() {

return success;

}

public void setSuccess(boolean success) {

this。success = success;

}

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 static ResponseMessage success(){

return new ResponseMessage(true, null, null);

}

/**

* 成功返回方法

* @param data 返回資料

*/

public static ResponseMessage success(Object data){

return new ResponseMessage(true, null, data);

}

/**

* 失敗返回方法——預設

*/

public static ResponseMessage fail(){

return new ResponseMessage(false, null, null);

}

/**

* 失敗返回方法

* @param message 文字資訊

*/

public static ResponseMessage fail(String message){

return new ResponseMessage(false, message, null);

}

/**

* 失敗返回方法

* @param message 文字資訊

* @param data 資料

*/

public static ResponseMessage fail(String message, Object data){

return new ResponseMessage(false, message, data);

}

}

Spring Boot 全域性異常處理入門-實現返回自定義的實體類

二 、更新MyErrorController中的errorHandler方法

更新後的程式碼如下所示:

@RequestMapping(ERROR_PATH)

public ResponseMessage errorHandler(HttpServletRequest request, HttpServletResponse response){

ServletWebRequest webRequest = new ServletWebRequest(request);

Map attr = this。errorAttributes。getErrorAttributes(webRequest, true);

return ResponseMessage。fail(“伺服器端異常!”, attr);

}

返回型別為ResponseMessage。

三、啟動應用

測試驗證異常時的返回結果,如圖所示,訪問一個不存在的端點,返回的型別為ResponseMessage。

Spring Boot 全域性異常處理入門-實現返回自定義的實體類

透過Postman訪問,返回的JSON資料是一樣的。

Spring Boot 全域性異常處理入門-實現返回自定義的實體類

(此處已新增圈子卡片,請到今日頭條客戶端檢視)

Top