一篇文章带你从源码分析 SpringBoot 的异常处理

文章目录

    • 一、起因
    • 二、源码分析
    • 三、自定义异常数据
    • 四、自定义异常视图

一、起因

我们已经知道如果动态页面和静态页面同时定义了异常处理页面,例如 classpath:/static/error/404.htmlclasspath:/templates/error/404.html 同时存在时,默认使用动态页面

即完整的错误页面查找方式应该是这样:发生了400错误--》查找动态 400.html 页面--》查找静态 400.html --》查找动态 4xx.html--》查找静态 5xx.html

至于为什么有这样的机制,本篇文章就从源码来分析一下。

二、源码分析

首先按两下“shift”键,查询ErrorMvcAutoConfiguration类:

从其中挑选关键的代码来说一下

首先是DefaultErrorAttributes,如果我们没有提供则使用系统自带的,里面提供了一些异常数据

@Bean
    @ConditionalOnMissi

你可能感兴趣的:(SpringBoot,学习笔记,java,spring,SpringBoot)