【SpringBoot】 配置錯誤信息提示頁(404,500)

配置錯誤信息提示頁

在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>

對不起,頁面消失了(404)!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章