浅谈什么是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 相关文章推荐
springboot集成flyway自动创表的详细配置
Jun 26 Java/Android
分析JVM源码之Thread.interrupt系统级别线程打断
Jun 29 Java/Android
Java实现聊天机器人完善版
Jul 04 Java/Android
JVM钩子函数的使用场景详解
Aug 23 Java/Android
SpringBoot实现quartz定时任务可视化管理功能
Aug 30 Java/Android
Spring-cloud Config Server的3种配置方式
Sep 25 Java/Android
Netty客户端接入流程NioSocketChannel创建解析
Mar 25 Java/Android
引用计数法和root搜索算法以及JVM中判定对象需要回收的方法
Apr 19 Java/Android
Android Studio实现带三角函数对数运算功能的高级计算器
May 20 Java/Android
java实现自定义时钟并实现走时功能
Jun 21 Java/Android
SpringBoot项目多数据源及mybatis 驼峰失效的问题解决方法
Jul 07 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
老机欣赏|中国60年代精品收音机
2021/03/02 无线电
PHP脚本的10个技巧(6)
2006/10/09 PHP
win7+apache+php+mysql环境配置操作详解
2013/06/10 PHP
让CodeIgniter数据库缓存自动过期的处理的方法
2014/06/12 PHP
PHP采集类snoopy详细介绍(snoopy使用教程)
2014/06/19 PHP
提高php编程效率技巧
2015/08/13 PHP
PHP和Mysql中转UTF8编码问题汇总
2015/10/10 PHP
php两点地理坐标距离的计算方法
2018/12/29 PHP
漂亮的thinkphp 跳转页封装示例
2019/10/16 PHP
javascript 播放器 控制
2007/01/22 Javascript
javascript实现百度地图鼠标滑动事件显示、隐藏
2015/04/02 Javascript
headjs实现网站并行加载但顺序执行JS
2016/11/29 Javascript
JavaScript实现翻页功能(附效果图)
2017/02/16 Javascript
vue 做移动端微信公众号采坑经验记录
2018/04/26 Javascript
浅谈vue项目可以从哪些方面进行优化
2018/05/05 Javascript
js使用Promise实现简单的Ajax缓存
2018/11/14 Javascript
JS实现随机生成10个手机号的方法示例
2018/12/07 Javascript
JS实现的合并两个有序链表算法示例
2019/02/25 Javascript
vue 解决IOS10低版本白屏的问题
2020/11/17 Javascript
[54:54]Newbee vs Serenity 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
python实现可将字符转换成大写的tcp服务器实例
2015/04/29 Python
Django返回json数据用法示例
2016/09/18 Python
Python读取mat文件,并保存为pickle格式的方法
2018/10/23 Python
Flask框架踩坑之ajax跨域请求实现
2019/02/22 Python
python xlwt如何设置单元格的自定义背景颜色
2019/09/03 Python
pytorch中nn.Conv1d的用法详解
2019/12/31 Python
python numpy矩阵信息说明,shape,size,dtype
2020/05/22 Python
英国在线药房:Chemist.co.uk
2019/03/26 全球购物
会计电算一体化个人简历的自我评价
2013/10/15 职场文书
cf收人广告词
2014/03/14 职场文书
秘书英文求职信
2014/04/16 职场文书
和睦家庭事迹
2014/05/14 职场文书
人力资源管理专业求职信
2014/07/23 职场文书
2016国庆节67周年红领巾广播稿
2015/12/18 职场文书
会议开幕致辞怎么写
2016/03/03 职场文书
一文了解MySQL二级索引的查询过程
2022/02/24 MySQL