900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > SpringBoot异常处理机制之自定义404 500错误提示页面

SpringBoot异常处理机制之自定义404 500错误提示页面

时间:2022-02-12 22:10:37

相关推荐

SpringBoot异常处理机制之自定义404 500错误提示页面

目录

`SpringBoot` 自定义 `404、500` 错误页面`SpringBoot` 默认的异常处理机制使用模板引擎使用示例创建 `SpringBoot` 项目如下`application.properties` 项目配置文件`404` 页面内容如下`500` 页面内容如下`Controller` 如下`404.html` 页面测试`500.html` 页面测试没有使用模板引擎

SpringBoot自定义404、500错误页面

SpringBoot默认的异常处理机制

SpringBoot默认已经提供了一套处理异常的机制。一旦程序中出现了异常SpringBoot会向/errorurl发送请求。在SpringBoot中提供了一个名为BasicErrorController的类来处理/error请求,然后跳转到默认显示异常的页面来展示异常信息

使用模板引擎

在使用thymeleaf等模板引擎时,SpringBoot会自动到src/main/resources/templates/error/,文件夹下寻找404.html、500.html的错误提示页面

错误提示页面的命名规则就是:错误码.html,如404404.html500500.html

使用示例

创建SpringBoot项目如下

404、500错误提示页面结构如下

application.properties项目配置文件

server.port=8080#它的默认值就是classpath:/templates/,源码在ThymeleafProperties类中spring.mvc.view.prefix=classpath:/templates/#它的默认值就是.html,源码在ThymeleafProperties类中spring.mvc.view.suffix=.htmlspring.thymeleaf.cache=false

404页面内容如下

<!DOCTYPE html><html lang="en" xmlns:th=""><head><meta charset="UTF-8"><title>404</title><link rel="shortcut icon" type="image/x-icon" th:href="@{/img/favicon.ico}"/><link rel="stylesheet" type="text/css" th:href="@{/css/404.css}"/></head><body><div id="banner" style="height: 600px;width: 600px;margin-left: 370px"></div></body></html>

500页面内容如下

<!DOCTYPE html><html lang="en" xmlns:th=""><head><meta charset="UTF-8"><title>500</title><link rel="shortcut icon" type="image/x-icon" th:href="@{/img/favicon.ico}"/><link rel="stylesheet" type="text/css" th:href="@{/css/500.css}"/></head><body><div id="banner" style="height: 600px;width: 600px;margin-left: 370px"></div></body></html>

Controller如下

@Controllerpublic class PageController {// 跳转到登录页@GetMapping(path = "/toLogin")public String toLogin() {int code = 1/0;return "login";}}

404.html页面测试

访问不存在的接口:http://localhost:8080/aaaa,结果如下

500.html页面测试

访问已存在的接口:http://localhost:8080/toLogin,结果如下

没有使用模板引擎

如果没有使用thymeleaf等模板引擎时,SpringBoot会到静态资源文件夹寻找404.htm、500.html的错误提示页面,命名同上。SpringBoot中默认的静态资源路径有4个,分别是

classpath:/METAINF/resources/classpath:/resources/classpath:/static/classpath:/public/

优先级顺序为:META-INF/resources > resources > static > public,以上4种路径创建error文件夹,再创建404、500错误提示页面如下

不用写额外的映射器,就能直接请求到

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。