浅谈什么是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 相关文章推荐
ConstraintValidator类如何实现自定义注解校验前端传参
Jun 18 Java/Android
利用Java设置Word文本框中的文字旋转方向的实现方法
Jun 28 Java/Android
java固定大小队列的几种实现方式详解
Jul 15 Java/Android
Spring Boot mybatis-config 和 log4j 输出sql 日志的方式
Jul 26 Java/Android
SpringCloud Feign请求头删除修改的操作代码
Mar 20 Java/Android
Spring Security使用单点登录的权限功能
Apr 03 Java/Android
SpringBoot 集成短信和邮件 以阿里云短信服务为例
Apr 22 Java/Android
Android 界面一键变灰 深色主题工具类
Apr 28 Java/Android
Java线程的6种状态与生命周期
May 11 Java/Android
Java时间工具类Date的常用处理方法
May 25 Java/Android
JavaScript正则表达式实现注册信息校验功能
May 30 Java/Android
使用Postman测试需要授权的接口问题
Jun 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
使用Apache的rewrite技术
2006/06/22 PHP
laravel 错误处理,接口错误返回json代码
2019/10/25 PHP
仿百度的关键词匹配搜索示例
2013/09/25 Javascript
js动态添加删除,后台取数据(示例代码)
2013/11/25 Javascript
javascript日期对象格式化为字符串的实现方法
2014/01/14 Javascript
Javascript学习笔记之相等符号与严格相等符号
2014/11/23 Javascript
innerHTML在IE中报错解决方案
2014/12/15 Javascript
jQuery简单实现input文本框内灰色提示文本效果的方法
2015/12/02 Javascript
javascript中的作用域和闭包详解
2016/01/13 Javascript
jQuery EasyUI API 中文帮助文档和扩展实例
2016/08/01 Javascript
纯JS焦点图特效实例(可一个页面多用)
2016/12/07 Javascript
Vue.js之slot深度复制详解
2017/03/10 Javascript
深入浅出webpack教程系列_安装与基本打包用法和命令参数详解
2017/09/10 Javascript
JavaScript通过mouseover()实现图片变大效果的示例
2017/12/20 Javascript
JavaScript实现的贝塞尔曲线算法简单示例
2018/01/30 Javascript
Vue表单类的父子组件数据传递示例
2018/05/03 Javascript
VUE引入第三方js包及调用方法讲解
2019/03/01 Javascript
vue+animation实现翻页动画
2020/06/29 Javascript
使用eslint和githooks统一前端风格的技巧
2020/07/29 Javascript
vue-model实现简易计算器
2020/08/17 Javascript
JavaScript实现多层颜色选项卡嵌套
2020/09/21 Javascript
[01:12:40]DOTA2-DPC中国联赛 正赛 DLG vs XG BO3 第三场 1月25日
2021/03/11 DOTA
Python操作配置文件ini的三种方法讲解
2019/02/22 Python
Python读写文件基础知识点
2019/06/10 Python
Django通过dwebsocket实现websocket的例子
2019/11/15 Python
wxPython实现画图板
2020/08/27 Python
PyTorch中 tensor.detach() 和 tensor.data 的区别详解
2020/01/06 Python
基于python检查SSL证书到期情况代码实例
2020/04/04 Python
python中实现栈的三种方法
2020/12/19 Python
用python获取txt文件中关键字的数量
2020/12/24 Python
pycharm配置安装autopep8自动规范代码的实现
2021/03/02 Python
党的群众路线教育实践活动个人承诺书
2014/05/22 职场文书
安全员岗位职责范本
2015/04/11 职场文书
培训感想范文
2015/08/07 职场文书
电工生产实习心得体会
2016/01/22 职场文书
Python实现提取PDF简历信息并存入Excel
2022/04/02 Python