首页 > 编程语言 > 详细

Spring boot 学习笔记 1 - 自定义错误

时间:2018-10-07 15:10:48      阅读:195      评论:0      收藏:0      [点我收藏+]
Spring Boot提供了WebExceptionHandler一个以合理的方式处理所有错误的方法。它在处理顺序中的位置就在WebFlux提供的处理程序之前,这被认为是最后一个处理程序。
对于机器客户端,它会生成一个JSON响应,其中包含错误,HTTP状态和异常消息的详细信息。对于浏览器客户端,有一个“whitelabel”错误处理程序,它以HTML格式呈现相同的数据。您也可以提供自己的HTML模板来显示错误。
 
Postman截图: 结果是json 格式
技术分享图片
浏览器截图:
技术分享图片
自定义ErrorPage的Html:
技术分享图片
在templates目录下添加 error页面,后缀根据模板引擎决定
技术分享图片
 
定制此功能的第一步通常涉及使用现有机制,但替换或增加错误内容。为此,您可以添加一个类型的bean ErrorAttributes。
要更改错误处理行为,可以实现ErrorWebExceptionHandler并注册该类型的bean定义。由于a WebExceptionHandler的级别较低,因此Spring Boot还提供了一种方便的方式AbstractErrorWebExceptionHandler,让您以WebFlux功能的方式处理错误,如以下示例所示:
public class CustomErrorWebExceptionHandler extends AbstractErrorWebExceptionHandler {
// Define constructor here
@Override
protected RouterFunction<ServerResponse> getRoutingFunction(ErrorAttributes errorAttributes) {
return RouterFunctions
.route(aPredicate, aHandler)
.andRoute(anotherPredicate, anotherHandler);
}
}
要获得更完整的图片,您还可以DefaultErrorWebExceptionHandler 直接子类化并覆盖特定的方法。

Spring boot 学习笔记 1 - 自定义错误

原文:https://www.cnblogs.com/tangruixin/p/9750151.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!