SpringBoot 网页异常处理
1. 简介
- 在 SpringBoot 项目中, 不可避免地会出现异常地错误页面, 当然也可以使用 SpringBoot 自定义地页面来处理
- 如上可见, SpringBoot 提示没有明确地错误页面, 于是调用默认地错误页面了, 也就是上图这样的错误啦
- 默认的错误页面不仅会显得你
很不专业
, 而且交付项目的时候, 甲方肯定也不会喜欢这样的页面, 于是就要实现自己定义的错误页面啦, 这样才能使项目的体验更加好
2. 网页异常处理
2. 1 @ControllerAdvice 统一处理
- 在 SpringBoot 中, 可以使用 Spring 中的 @ControllerAdvice 进行全局处理, 这个可以看我的上一个文章, 这里主要介绍 SpringBoot 的处理方式
2. 2 自定义错误页面
- 由 SpringBoot 默认的错误页面可以知道, 没有提供 error 文件下默认的错误页面, 那么我们提供就可以啦
- 说到这, Spring Boot 肯定不会只有一种选择, 这里就分为了 静态页面 和 动态页面
2. 2. 1 静态页面
2. 2. 1. 1 静态页面错误码匹配
- 即在 static 目录下创建 error 包, 在 error 包下 根据具体的错误码创建 HTML 文件, eg: 404.html
2. 2. 1. 2 静态页面模糊匹配
- 即 4xx.html 模糊匹配 4开头的错误, 同样页面由自己定义
- 优先级比较
- 错误码匹配的优先级高于 模糊匹配, 也就是说 SpringBoot 会先寻找对应的错误页面, 没有再寻找模糊匹配页面, 如果任然没有的话就会使用 SpringBoot 默认的处理页面
2. 2. 2 静态页面
2. 2. 2. 1 静态页面错误码匹配
- 即在 template 目录下创建 error 包, 在 error 包下 根据具体的错误码创建 HTML 文件, eg: 404.html
2. 2. 2. 2 静态页面模糊匹配
- 即 4xx.html 模糊匹配 4开头的错误, 同样页面由自己定义
- 优先级
- 错误码匹配
- 动态错误页面
- 静态错误页面
- 模糊匹配
- 动态模糊错误页面
- 静态模糊错误页面
- 错误码匹配