欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

springboot中自定義異常以及定制異常界面實(shí)現(xiàn)過(guò)程解析

 更新時(shí)間:2019年09月26日 14:39:24   作者:shun-w  
這篇文章主要介紹了springboot中自定義異常以及定制異常界面實(shí)現(xiàn)過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

不多說(shuō)廢話,直接進(jìn)入主菜??!

步驟:

1.搭建SpringBoot的開(kāi)發(fā)環(huán)境,略(有不會(huì)的可以私信我)。

2.編寫(xiě)一個(gè)自定義異常,自定義異常需要繼承RuntimeException。寫(xiě)一個(gè)構(gòu)造函數(shù),并調(diào)用父類保存異常信息。

public class MyException extends RuntimeException {
  public MyException(String massage) {
    super(massage);
  }
}

3.編寫(xiě)一個(gè)控制器,用于拋出異常。當(dāng)請(qǐng)求參數(shù)param=aa時(shí)拋出異常,否則不拋出異常。

@Controller
public class MyController {
  @ResponseBody
  @RequestMapping("/exception")
  public String ee(String param){
    if(param.equals("aa")){
      throw new MyException("拋出自定義異常");
    }
    return "沒(méi)有拋出異常";
  }
}

當(dāng)控制器拋出自定義異常時(shí),這是服務(wù)器會(huì)發(fā)生狀態(tài)碼為500的錯(cuò)誤。springboot自帶的異常界面不是很友好,我們可以定制一個(gè)異常界面用于顯示異常信息,看下一步驟。

4.定制自定義異常處理界面。springboot自動(dòng)配置了視圖解析器,我們可以編寫(xiě)一個(gè)500.html放在classpath:tempaltes/error目錄下。

500.html代碼如下(用的是thymeleaf渲染):

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>
status: [[${status}]] <br>
timestamp: [[${timestamp}]] <br>
message: [[${message}]] <br>
exception: [[${exception}]] <br>
</body>
</html>

代碼已經(jīng)編寫(xiě)完畢,來(lái)看看效果吧!

當(dāng)我們?cè)L問(wèn) http://localhost/exception?param=aa時(shí)拋出異常,結(jié)果如下:

訪問(wèn) http://localhost/exception?param=bb,不會(huì)拋出異常,結(jié)果如下:

** 舉一反三:在用戶管理系統(tǒng)中,我們可以自定義用戶不存在異常類,當(dāng)查詢某個(gè)不存在的用戶時(shí),讓控制器拋出用戶不存在異常,并跳轉(zhuǎn)到一個(gè)友好的提示界面。

搶票系統(tǒng),當(dāng)用戶購(gòu)買(mǎi)的票已經(jīng)賣(mài)完,我們可以拋出一個(gè)自定義的票已經(jīng)沒(méi)有的異常,并跳轉(zhuǎn)到一個(gè)友好的提示界面。 **

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論