亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

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

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

不多說廢話,直接進入主菜??!

步驟:

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

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

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

3.編寫一個控制器,用于拋出異常。當請求參數(shù)param=aa時拋出異常,否則不拋出異常。

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

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

4.定制自定義異常處理界面。springboot自動配置了視圖解析器,我們可以編寫一個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)編寫完畢,來看看效果吧!

當我們訪問 http://localhost/exception?param=aa時拋出異常,結果如下:

訪問 http://localhost/exception?param=bb,不會拋出異常,結果如下:

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

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

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • java實現(xiàn)的AES加密算法完整實例

    java實現(xiàn)的AES加密算法完整實例

    這篇文章主要介紹了java實現(xiàn)的AES加密算法,結合完整實例形式分析了AES加密類的實現(xiàn)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2016-07-07
  • Springboot+mybatis-plus+注解實現(xiàn)數(shù)據(jù)權限隔離

    Springboot+mybatis-plus+注解實現(xiàn)數(shù)據(jù)權限隔離

    本文將結合實例代碼,介紹Springboot+mybatis-plus+注解實現(xiàn)數(shù)據(jù)權限隔離,文中通過示例代碼介紹的非常詳細,需要的朋友們下面隨著小編來一起學習學習吧
    2021-07-07
  • javaweb頁面附件、圖片下載及打開(實現(xiàn)方法)

    javaweb頁面附件、圖片下載及打開(實現(xiàn)方法)

    下面小編就為大家?guī)硪黄猨avaweb頁面附件、圖片下載及打開(實現(xiàn)方法)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06
  • Java字符編碼簡介_動力節(jié)點Java學院整理

    Java字符編碼簡介_動力節(jié)點Java學院整理

    這篇文章主要介紹了Java字符編碼簡介,本文主要包括以下幾個方面:編碼基本知識,Java,系統(tǒng)軟件,url,工具軟件等,感興趣的朋友一起看看吧
    2017-08-08
  • Spring源碼解析之Bean的生命周期

    Spring源碼解析之Bean的生命周期

    今天給大家?guī)淼氖顷P于Java源碼的相關知識,文章圍繞著Bean的生命周期展開,文中有非常詳細的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06
  • 使用bat啟動springboot項目并解決亂碼問題

    使用bat啟動springboot項目并解決亂碼問題

    這篇文章主要介紹了window中使用bat啟動springboot項目,并解決亂碼問題
    2021-06-06
  • Java并發(fā)編程之ConcurrentLinkedQueue解讀

    Java并發(fā)編程之ConcurrentLinkedQueue解讀

    這篇文章主要介紹了Java并發(fā)編程之ConcurrentLinkedQueue解讀,非阻塞的實現(xiàn)方式則可以使用循環(huán)CAS的方式來實現(xiàn),而ConcurrentLinkedQueue就是juc包中自帶的經(jīng)典非堵塞方式實現(xiàn)的工具類,需要的朋友可以參考下
    2023-12-12
  • Spring @ComponentScan注解使用案例詳細講解

    Spring @ComponentScan注解使用案例詳細講解

    @ComponentScan注解的作用可以簡述為:將項目中所有被@Component注解直接或者間接標記的類---->組裝成BeanDefinition---->然后以key=beanName, value=BeanDefinition的形式存儲,為后續(xù)生成bean對象做準備
    2023-03-03
  • mybatis中的if?test判斷入?yún)⒌闹祮栴}

    mybatis中的if?test判斷入?yún)⒌闹祮栴}

    這篇文章主要介紹了mybatis中的if?test判斷入?yún)⒌闹祮栴},具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • SpringBoot入門原理及優(yōu)勢分析

    SpringBoot入門原理及優(yōu)勢分析

    本篇文章主要來為大家介紹SpringBoot入門原理及優(yōu)勢分析,有需要的朋友可以借鑒參考下,希望可以有所幫助,祝大家多多進步,早日升職加薪
    2021-09-09

最新評論