配置错误信息提示页
在Web项目开发过程中,错误信息提示页是一个非常重要的组成部分。
程序项目很难保证不出现类似于404或500的错误问题,
直接让用户看到满是异常信息的页面是不好的非常影响用户体验的,
需要个信息提示错误页。
信息提示错误页一般都属于静态页面,
在src/main/view/static目录下创建个
error-404.html
<!DOCTYPE HTML>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<title>404页面</title>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
</head>
<body>
<h1>对不起,页面消失了(404)!</h1>
</body>
</html>
error-500.html
<!DOCTYPE HTML>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<title>500页面</title>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
</head>
<body>
<h1>对不起,先让我静静的崩溃会儿(500)!</h1>
</body>
</html>
建立错误页配置
cn.liuawen.config
创建ErrorPageConfig.java类
HttpStatus.NOT_FOUND 没找到
HttpStatus.INTERNAL_SERVER_ERROR 服务器内部错误
@Configuration
public class ErrorPageConfig {
@Bean
public EmbeddedServletContainerCustomizer containerCustomizer() {
return new EmbeddedServletContainerCustomizer() {
@Override
public void customize(ConfigurableEmbeddedServletContainer container) {
ErrorPage errorPage404 = new ErrorPage(
HttpStatus.NOT_FOUND, "/error-404.html"); // 定义404错误页的状态码与跳转映射路径
ErrorPage errorPage500 = new ErrorPage(
HttpStatus.INTERNAL_SERVER_ERROR, "/error-500.html"); // 定义500错误页的状态码与跳转映射路径
container.addErrorPages(errorPage404, errorPage500); // 追加错误页
}
};
}
}
配置完错误页之后,会根据用户请求时的http状态码跳转到不同的页面显示。
浏览器输入http://localhost/hello 没有hello
404错误页
<html xmlns:th="http://www.thymeleaf.org"><head>
<title>404页面</title>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
</head>
<body>
<h1>对不起,页面消失了(404)!</h1>
</body></html>