spring boot 錯誤頁面配置解決方案
這篇文章主要介紹了spring boot 錯誤頁面配置解決方案,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
如果訪問了錯誤的路徑,或者后臺報錯
如果沒有一個統(tǒng)一的頁面!
或者說頁面上展示一堆報錯信息,既影響美觀,又對用戶不友好!
那么如何配置?
定義 ErrorPageConfig,配置錯誤狀態(tài)與對應訪問路徑
@Component
public class ErrorPageConfig implements ErrorPageRegistrar {
private static final Logger logger = LoggerFactory.getLogger(ErrorPageConfig.class);
@Override
public void registerErrorPages(ErrorPageRegistry errorPageRegistry) {
//1、按錯誤的類型顯示錯誤的網頁
//錯誤類型為404,找不到網頁的,默認顯示404.html網頁
ErrorPage e404 = new ErrorPage(HttpStatus.NOT_FOUND, "/error/404");
//錯誤類型為500,表示服務器響應錯誤,默認顯示500.html網頁
ErrorPage e500 = new ErrorPage(HttpStatus.INTERNAL_SERVER_ERROR, "/error/500");
errorPageRegistry.addErrorPages(e404, e500);
}
}
定義控制器,專門用于ErrorPageConfig 跳轉路徑
@Controller
@RequestMapping("/error")
public class ErrorController {
/**
* 404頁面
*/
@GetMapping(value = "/404")
public String error_404() {
return "comm/error_404";
}
/**
* 500頁面
*/
@GetMapping(value = "/500")
public String error_500() {
return "comm/error_500";
}
}
在comm文件夾 下新建頁面

訪問不存在的地址,或者后臺報錯,即可展示友好頁面

參考鏈接找不到了。
感謝:https://github.com/ZHENFENG13
其實,還有bug。
- 比如訪問 http://localhost:9090/admin/1 沒有直接報404,反而 真的去找了這個路徑
- 與后臺admin開頭的要跳轉到登錄頁面攔截器發(fā)生沖突,導致500錯誤
- 比如直接訪問 http://localhost:9090/error ,會報一個909錯誤,再次回到原生的報錯頁面
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
SpringMVC框架和SpringBoot項目中控制器的響應結果深入分析
這篇文章主要介紹了SpringMVC框架和SpringBoot項目中控制器的響應結果,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習吧2022-12-12
SpringBoot實現(xiàn)HTTP調用的7 種方式
本文主要介紹了SpringBoot實現(xiàn)HTTP調用的7 種方式,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2025-04-04
mybatis中BigDecimal中的0存為null的坑及解決
在使用MyBatis進行數(shù)據(jù)庫操作時,若Java中屬性類型為BigDecimal且值為0,插入數(shù)據(jù)庫時可能會變?yōu)閚ull,而不是0,這個問題可能是由于MyBatis在處理BigDecimal類型時的弱類型判斷導致的,當BigDecimal變量與空字符串進行比較時,MyBatis可能將其視為null2024-10-10
Java 實戰(zhàn)練習之網上電商項目的實現(xiàn)
讀萬卷書不如行萬里路,只學書上的理論是遠遠不夠的,只有在實戰(zhàn)中才能獲得能力的提升,本篇文章手把手帶你用java+vue+Springboot+ssm+mysql+maven+redis實現(xiàn)一個網上電商項目,大家可以在過程中查缺補漏,提升水平2021-11-11
如何利用 Either 和 Option 進行函數(shù)式錯誤處理
這篇文章主要介紹了如何利用 Either 和 Option 進行函數(shù)式錯誤處理。在 Java 中,錯誤的處理在傳統(tǒng)上由異常以及創(chuàng)建和傳播異常的語言支持進行。但是,如果不存在結構化異常處理又如何呢?,需要的朋友可以參考下2019-06-06
Netty分布式server啟動流程Nio創(chuàng)建源碼分析
這篇文章主要介紹了Netty分布式server啟動流程Nio創(chuàng)建源碼分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-03-03

