接上篇文章的统一数据格式返回…
文章目录
1. 统一异常处理
1.1 使用
统一异常处理的两个关键的注解是@ControllerAdvice + @ExceptionHandler
@ControllerAdvice表示控制器通知类@ExceptionHandler:是异常处理器
两者结合就表示:出现异常的时候执行某个通知,也就是执行某个方法具体的代码如下:
@ControllerAdvice
@ResponseBody
public class ErrorAdvice {
@ExceptionHandler
public Object handleException(Exception e) {
//表示代码如果出现Exception(及其之类)异常,就返回Result的对象
return Result.fail(e.getMessage());
}
}
其中Result是自定义的放回结果类:
同时,我们可以针对不同的异常,返回不同的结果
@ControllerAdvice
@ResponseBody
public class ErrorAdvice {
@ExceptionHandler
public Object handleException(Exception e) {
//表示代码如果出现Exception(及其之类)异常,就返回Result的对象
return Result.fail(e.getMessage());
}
@ExceptionHandler
public Object handleException(ArithmeticException e) {
return Result.fail("算术异常" + e.getMessage());
}
@ExceptionHandler
public Object handleException(NullPointerException e) {
return Result.fail("空指针异常" + e.getMessage());
}
}
测试:
@RequestMapping("/test")
@RestController
public class TestController

最低0.47元/天 解锁文章
786

被折叠的 条评论
为什么被折叠?



