您好,登錄后才能下訂單哦!
這篇文章主要講解了“JAVA在項目中怎么自定義異常”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“JAVA在項目中怎么自定義異常”吧!
1.數據返回處理類
@Data public class R<T> implements Serializable { private static final long serialVersionUID = -8497670085742879369L; @ApiModelProperty(value = "返回碼", example = "200") private Integer code=200; @ApiModelProperty(value = "返回消息", example = "") private String message="SUCCESS"; @ApiModelProperty(value = "返回數據", example = "") private T data; private R() { } public R(T data) { this.data = data; } public R(Integer code,String message) { this.code=code; this.message = message; } }
2.新建自定義異常
@Data @AllArgsConstructor @NoArgsConstructor public class GuliException extends RuntimeException{ private Integer code; private String msg; }
3.定義異常處理
@ControllerAdvice public class GlobalExceptionHandler { //指定出現什么異常執行這個方法 @ExceptionHandler(GuliException.class) @ResponseBody //返回數據 public R error(GuliException e){ e.printStackTrace(); return new R(e.getCode(),e.getMsg()); } }
4.不使用異常處理示例
@GetMapping("/testError") @ApiOperation(value = "測試異常處理") public R<UserVO> testError(@RequestParam("id") String id){ UserVO userVO=new UserVO(); SysUser byId = sysUserService.getById(id); BeanUtils.copyProperties(byId,userVO); return new R<>(userVO); }
執行結果
使用自定義異常
@GetMapping("/testCheck") @ApiOperation(value = "測試返回值正常處理") public R<Boolean> testCheck(){ try { int i=10/0; }catch (Exception e){ e.printStackTrace(); throw new GuliException(1001,"錯誤測試"); } return new R<>(true); }
執行結果
感謝各位的閱讀,以上就是“JAVA在項目中怎么自定義異常”的內容了,經過本文的學習后,相信大家對JAVA在項目中怎么自定義異常這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。