SpringBoot全局异常处理(Rest)

[版权声明] 本站内容采用 知识共享署名-非商业性使用-相同方式共享 3.0 中国大陆 (CC BY-NC-SA 3.0 CN) 进行许可。
部分内容和资源来自网络,纯学习研究使用。如有侵犯您的权益,请及时联系我,我将尽快处理。
如转载请注明来自: Broly的博客,本文链接: SpringBoot全局异常处理(Rest)

最近基于Spring Boot做一个项目,实现Restful+Json的API。

其中涉及到全局的异常处理,比如HTTP的异常404, 505等等。比如404,默认Spring Boot会返回"Whitelabel Error Page"页面,但是我需要把这个错误页面统一以JSON格式返回。

具体的代码,可以看这里:《SpringBootGlobalExceptionHandler

关键的步骤只有两步:

一、设置Servlet在找不到handler时抛异常

二、利用Spring的注解@ControllerAdvice处理异常

注意:要加上@EnableWebMvc

比如自定义401,404,505页面:

三、测试

  1. 运行Spring Boot

sbgeh-tree

2. 能正确返回的页面

sbgeh-status-200

3. 找不到页面(404)时

sbgeh-status-404

4. 正确的请求和返回

sbgeh-status-200-2

5. 发生错误(505)时

sbgeh-status-500

如果本文对您有所帮助,可以请作者喝杯咖啡,感谢支持^_^

支付宝支付
微信支付

发表评论

电子邮件地址不会被公开。 必填项已用*标注