spring boot 系列---异常处理
程序员文章站
2022-07-15 12:59:03
...
一、Spring 自身的异常处理
在前后分离开发时,我们通常写的接口会提供给web、app等不同终端去调用,当调用出错时web 应该返回页面的错误,而app应该返回json格式错误给前端
如:访问一个不存在的资源时,spring 已经帮我们处理过所以不同的终端调用,会响应不同的内容
二、自定义异常处理
通常情况下,spring 自身帮我们处理的异常,并不是我们需要的,我们可以通过如下方式自定义异常处理:
web:
在resources目录下,创建resource/error/404.html
则出现404时会自动跳转到我们所创建404.html页面
对定义的异常进行处理:
@ControllerAdvice
public class SouthExceptionHandler {
@ExceptionHandler(SouthSecurityException.class)
@ResponseBody
@ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR)
public Result southSecurityHandler(SouthSecurityException southSecurityException){
Result result = new Result();
result.setData(southSecurityException.getId());
return result;
}
}
@ControllerAdvice 用来处理异常
@ExceptionHandler 指定捕获那一个异常