Spring統一異常處理之@ControllerAdvice
阿新 • • 發佈:2021-12-14
@ControllerAdvice
本文描述用法,關於原理與深入理解,可能後期再補充
使用場景:
- 全域性異常處理
- 全域性資料繫結
- 全域性資料預處理
全域性資料繫結與全域性資料處理目前很少用,但是可能去了解,主要多用於全域性異常處理
全域性異常處理使用:
1、在類上加上該註解:
@ControllerAdvice public class MyGlobalExceptionHandler { }
2、編寫異常攔截方法:
@ExceptionHandler(Exception.class) public CommonResult customException(Exception e) { log.error(e.toString(), e.getMessage()); return CommonResult.newInstanceFail(ConstantsEnum.SERVER_ERROR, e.getMessage()); }
該方法的返回值與方法名可以隨意取,註解@ExceptionHandler中的異常類名,是對那種異常捕捉就寫哪個異常類名,比如空指標異常,指標越界之類的, Exception.class代表全部異常,在方法體中處理返回值......
至此全域性捕捉異常處理完畢了.....