浅谈什么是SpringBoot异常处理自动配置的原理


Posted in Java/Android onJune 21, 2021

异常处理自动配置

ErrorMvcAutoConfiguration自动配置类自动配置了处理规则,给容器中注册了多种组件

errorAttributes组件,类型为DefaultErrorAttributes。这个组件定义错误页面中可以包含哪些数据

浅谈什么是SpringBoot异常处理自动配置的原理
浅谈什么是SpringBoot异常处理自动配置的原理
浅谈什么是SpringBoot异常处理自动配置的原理

basicErrorController组件,类型为BasicErrorController。处理默认/error路径的请求,new一个iderrorModelAndView对象来响应页面

浅谈什么是SpringBoot异常处理自动配置的原理

error组件,类型为View。响应的是默认错误页面

浅谈什么是SpringBoot异常处理自动配置的原理

beanNameViewResolver组件,类型为BeanNameViewResolver。这个组件会按照返回的视图名作为组件的id去容器中找View对象

浅谈什么是SpringBoot异常处理自动配置的原理

conventionErrorViewResolver组件,类型为DefaultErrorViewResolver。这个组件用来解析错误视图页面,如果发生错误,会以HTTP的状态码作为视图页面地址找到真正的页面

浅谈什么是SpringBoot异常处理自动配置的原理
浅谈什么是SpringBoot异常处理自动配置的原理

总结:

  • 如果需要添加页面错误可以获取的数据,就自定义DefaultErrorAttributes组件
  • 如果需要修改错误页面跳转逻辑,就自定义BasicErrorController组件
  • 如果需要修改错误页面存放的静态资源路径,就自定义DefaultErrorViewResolver组件

到此这篇关于浅谈什么是SpringBoot异常处理自动配置的原理的文章就介绍到这了,更多相关SpringBoot异常处理自动配置内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Java/Android 相关文章推荐
Java基础之线程锁相关知识总结
Jun 30 Java/Android
Spring Boot 整合 Apache Dubbo的示例代码
Jul 04 Java/Android
mybatis中注解与xml配置的对应关系和对比分析
Aug 04 Java/Android
maven依赖的version声明控制方式
Jan 18 Java/Android
解决persistence.xml配置文件修改存放路径的问题
Feb 24 Java/Android
剑指Offer之Java算法习题精讲二叉树的构造和遍历
Mar 21 Java/Android
Java中API的使用方法详情
Apr 06 Java/Android
Android Flutter实现图片滑动切换效果
Apr 07 Java/Android
Java数据结构之堆(优先队列)
May 20 Java/Android
java.util.NoSuchElementException原因及两种解决方法
Jun 28 Java/Android
MyBatis在注解上使用动态SQL方式(@select使用if)
Jul 07 Java/Android
Android实现获取短信验证码并自动填充
May 21 Java/Android
SpringAop日志找不到方法的处理
详解SpringBoot异常处理流程及原理
Java新手教程之ArrayList的基本使用
Java各种比较对象的方式的对比总结
Jun 20 #Java/Android
Java Optional<Foo>转换成List<Bar>的实例方法
Jun 20 #Java/Android
详解Java实践之适配器模式
Java数据结构之链表相关知识总结
You might like
?繁体转换的class
2006/10/09 PHP
有关php运算符的知识大全
2011/11/03 PHP
php中get_headers函数的作用及用法的详细介绍
2013/04/27 PHP
解析yahoo邮件用phpmailer发送的实例
2013/06/24 PHP
php cookie中点号(句号)自动转为下划线问题
2014/10/21 PHP
PHP小偷程序的设计与实现方法详解
2016/10/15 PHP
如何修改yii2.0自带的user表为其它的表
2017/08/01 PHP
jQuery(非HTML5)可编辑表格实现代码
2012/12/11 Javascript
extjs4 treepanel动态改变行高度示例
2013/12/17 Javascript
使用jQuery实现星级评分代码分享
2014/12/09 Javascript
jQuery中unbind()方法用法实例
2015/01/19 Javascript
JavaScript基础知识之方法汇总结
2016/01/24 Javascript
JavaScript小技巧整理篇(非常全)
2016/01/26 Javascript
js滑动提示效果代码分享
2016/03/10 Javascript
浅谈jQuery animate easing的具体使用方法(推荐)
2016/06/17 Javascript
JS传值出现中文参数乱码的解决方法
2016/06/30 Javascript
JQuery Ajax WebService传递参数的简单实例
2016/11/02 Javascript
Vue利用History记录上一页面的数据方法实例
2018/11/02 Javascript
trackingjs+websocket+百度人脸识别API实现人脸签到
2018/11/26 Javascript
微信小程序indexOf的替换方法(推荐)
2020/01/14 Javascript
详解Python如何获取列表(List)的中位数
2016/08/12 Python
使用python进行文本预处理和提取特征的实例
2018/06/05 Python
OpenCV图像颜色反转算法详解
2019/05/13 Python
Python开发之基于模板匹配的信用卡数字识别功能
2020/01/13 Python
使用TensorFlow对图像进行随机旋转的实现示例
2020/01/20 Python
在 Linux/Mac 下为Python函数添加超时时间的方法
2020/02/20 Python
HTML5文档结构标签
2017/04/21 HTML / CSS
英国天然保健品网站:Simply Supplements
2017/03/22 全球购物
eBay爱尔兰站:eBay.ie
2019/08/09 全球购物
JAVA和C++的区别
2013/10/06 面试题
园艺师求职信
2014/03/10 职场文书
技术岗位竞聘演讲稿
2014/05/16 职场文书
三八节标语
2014/06/27 职场文书
汽车技术服务与贸易专业求职信
2014/07/20 职场文书
机关驾驶员违规检讨书
2014/09/13 职场文书
Redis遍历所有key的两个命令(KEYS 和 SCAN)
2021/04/12 Redis