SpringBoot詳解實(shí)現(xiàn)自定義異常處理頁(yè)面方法
1.相關(guān)介紹
當(dāng)發(fā)生異常時(shí), 跳轉(zhuǎn)到我們自定義的異常處理頁(yè)面.
SpringBoot中只需在靜態(tài)資源目錄下創(chuàng)建一個(gè)error文件夾, 并把異常處理頁(yè)面放入其中, 頁(yè)面的命名與異常錯(cuò)誤代碼對(duì)應(yīng), 如404.html, 500.html.
5xx.html可以對(duì)應(yīng)所有錯(cuò)誤代碼為5開頭的錯(cuò)誤
默認(rèn)靜態(tài)資源目錄為類路徑(resources)下的:
- /static
- /public
- /resources
- /META-INF/resources
2.代碼實(shí)現(xiàn)

HelloController
package com.limi.springboottest2.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
public class HelloController {
@ResponseBody
@GetMapping("/test1")
public String test1(){
int i = 10/0; //模擬500異常
return "ok";
}
}404.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h1>這是自定義404</h1>
</body>
</html>5xx.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h1>這是自定義5xx</h1>
</body>
</html>
3.運(yùn)行測(cè)試
測(cè)試404

測(cè)試500

使用postman測(cè)試

{
"timestamp": "2022-06-22T04:12:13.740+00:00",
"status": 500,
"error": "Internal Server Error",
"trace": "java.lang.ArithmeticException: / by zero\r\n\tat com.limi.springboottest2.controller.HelloController.test1(HelloController.java:14),
"message": "/ by zero",
"path": "/test1"
}
返回的信息我們可以使用模板引擎(如thymeleaf)獲取并寫入自定義的異常處理頁(yè)面中
到此這篇關(guān)于SpringBoot詳解實(shí)現(xiàn)自定義異常處理頁(yè)面方法的文章就介紹到這了,更多相關(guān)SpringBoot異常處理內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java虛擬機(jī)JVM性能優(yōu)化(一):JVM知識(shí)總結(jié)
這篇文章主要介紹了Java虛擬機(jī)JVM性能優(yōu)化(一):JVM知識(shí)總結(jié),本文是系列文章的第一篇,后續(xù)篇章請(qǐng)繼續(xù)關(guān)注腳本之家,需要的朋友可以參考下2014-09-09
java 中JFinal getModel方法和數(shù)據(jù)庫(kù)使用出現(xiàn)問題解決辦法
這篇文章主要介紹了java 中JFinal getModel方法和數(shù)據(jù)庫(kù)使用出現(xiàn)問題解決辦法的相關(guān)資料,需要的朋友可以參考下2017-04-04
java程序員如何編寫更好的單元測(cè)試的7個(gè)技巧
測(cè)試是開發(fā)的一個(gè)非常重要的方面,可以在很大程度上決定一個(gè)應(yīng)用程序的命運(yùn)。良好的測(cè)試可以在早期捕獲導(dǎo)致應(yīng)用程序崩潰的問題,但較差的測(cè)試往往總是導(dǎo)致故障和停機(jī)。本文主要介紹java程序員編寫更好的單元測(cè)試的7個(gè)技巧。下面跟著小編一起來看下吧2017-03-03
Spring Boot整合FTPClient線程池的實(shí)現(xiàn)示例
這篇文章主要介紹了Spring Boot整合FTPClient線程池的實(shí)現(xiàn)示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-12-12
淺談mybatis mapper.xml文件中$和#的區(qū)別
這篇文章主要介紹了淺談mybatis mapper.xml文件中$和#的區(qū)別,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-11-11
解決MyEclipse下啟動(dòng)項(xiàng)目時(shí)JBoss內(nèi)存溢出的問題
下面小編就為大家?guī)硪黄鉀QMyEclipse下啟動(dòng)項(xiàng)目時(shí)JBoss內(nèi)存溢出的問題。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-07-07
簡(jiǎn)單了解Java刪除字符replaceFirst原理及實(shí)例
這篇文章主要介紹了簡(jiǎn)單了解Java刪除字符replaceFirst原理及實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-05-05
Netty分布式固定長(zhǎng)度解碼器實(shí)現(xiàn)原理剖析
這篇文章主要為大家介紹了Netty分布式固定長(zhǎng)度解碼器原理剖析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-03-03
在IDEA中搭建最小可用SpringMVC項(xiàng)目(純Java配置)
這篇文章主要介紹了在IDEA中搭建最小可用SpringMVC項(xiàng)目(純Java配置),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12

