浅谈什么是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 相关文章推荐
源码解读Spring-Integration执行过程
Jun 11 Java/Android
详解java如何集成swagger组件
Jun 21 Java/Android
解决SpringCloud Feign传对象参数调用失败的问题
Jun 23 Java/Android
详解Java实现数据结构之并查集
Jun 23 Java/Android
springboot集成flyway自动创表的详细配置
Jun 26 Java/Android
分析JVM源码之Thread.interrupt系统级别线程打断
Jun 29 Java/Android
Java数组与堆栈相关知识总结
Jun 29 Java/Android
实体类或对象序列化时,忽略为空属性的操作
Jun 30 Java/Android
解决persistence.xml配置文件修改存放路径的问题
Feb 24 Java/Android
详解Flutter和Dart取消Future的三种方法
Apr 07 Java/Android
Android使用EventBus发送消息,Fragment中接收消息的方法会执行多次
Apr 24 Java/Android
springboot实现string转json json里面带数组
Jun 16 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
ThinkPHP采用实现三级循环代码实例
2014/07/18 PHP
thinkphp3.2中Lite文件替换框架入口文件或应用入口文件的方法
2015/05/21 PHP
php遍历替换目录下文件指定内容的方法
2016/11/10 PHP
PHP7数组的底层实现示例
2019/08/25 PHP
Javascript 作用域使用说明
2009/08/13 Javascript
jquery下动态显示jqGrid以及jqGrid的属性设置容易出现问题的解决方法
2010/10/22 Javascript
初识JQuery 实例一(first)
2011/03/16 Javascript
当自定义数据属性为json格式字符串时jQuery的data api问题探讨
2013/02/18 Javascript
使用JavaScript 实现各种跨域的方法
2013/05/08 Javascript
javascript的数组和常用函数详解
2014/05/09 Javascript
jquery对dom节点的操作【推荐】
2016/04/15 Javascript
js replace(a,b)之替换字符串中所有指定字符的方法
2016/08/17 Javascript
基于BootStrap与jQuery.validate实现表单提交校验功能
2016/12/22 Javascript
jQuery实现两个select控件的互移操作
2016/12/22 Javascript
jQuery.cookie.js使用方法及相关参数解释
2017/03/06 Javascript
vue父子组件的嵌套的示例代码
2017/09/08 Javascript
判断jQuery是否加载完成,没完成继续判断的解决方法
2017/12/06 jQuery
javascript中的replace函数(带注释demo)
2018/01/07 Javascript
详解vue中使用transition和animation的实例代码
2020/12/12 Vue.js
[01:29:46]DOTA2上海特级锦标赛C组资格赛#1 OG VS LGD第二局
2016/02/27 DOTA
python+requests+unittest API接口测试实例(详解)
2017/06/10 Python
python中requests库session对象的妙用详解
2017/10/30 Python
Python内置模块hashlib、hmac与uuid用法分析
2018/02/12 Python
Python爬虫beautifulsoup4常用的解析方法总结
2019/02/25 Python
python下的opencv画矩形和文字注释的实现方法
2019/07/09 Python
对django的User模型和四种扩展/重写方法小结
2019/08/17 Python
Django实现分页显示效果
2019/10/31 Python
Python 使用type来定义类的实现
2019/11/19 Python
PyQt5高级界面控件之QTableWidget的具体使用方法
2020/02/23 Python
python实现ftp文件传输系统(案例分析)
2020/03/20 Python
python中判断文件结束符的具体方法
2020/08/04 Python
CSS3实现粒子旋转伸缩加载动画
2016/04/22 HTML / CSS
图片上传插件ImgUploadJS:用HTML5 File API 实现截图粘贴上传、拖拽上传
2016/01/20 HTML / CSS
Joules官网:女士、男士和儿童服装和鞋类
2018/10/23 全球购物
美国Max仓库:Max Warehouse
2020/05/31 全球购物
合理化建议书
2015/02/04 职场文书