国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JSP > 正文

JSP學習之異常處理實例分析

2020-07-27 21:30:57
字體:
來源:轉載
供稿:網友

本文實例講述了JSP異常處理的方法。分享給大家供大家參考。具體如下:

要對JSP程序可能產生的異常進行處理,可以從多個角度完成:可以針對特定的代碼,可以針對特定的文件,也可以針對錯誤的類型。

如果針對特定的代碼,可以使用標準標簽庫中的核心標簽庫中的<c:catch>標簽。

如果針對特定的文件,可以使用JSP的page指令中的isErrorPage屬性和errorPage屬性完成。

如果針對特定類型的錯誤,可以使用web.xml配置文件。

1 使用<c:catch>進行異常處理

<c:catch>標簽可以針對特定的一行或者多行代碼。<c:catch>標簽的基本格式如下:

復制代碼 代碼如下:
<c:catch [var="存儲異常信息的變量"]>
其他的JSP代碼,包括各種標簽
</c:catch>

用法與Java代碼中的try語句非常類似,把可能產生異常的代碼放在<c:catch>開始標志和結束標志之間。這樣,當這些代碼產生異常的時候,JSP容器會對異常進行處理。

下面是一個對界面異常進行處理的例子:

<c:catch>  <c:out value="${user.address}"/></c:catch>

如果希望產生異常之后,把異常信息保存起來供其它的代碼使用,可以使用var屬性指定一個變量。

下面的代碼會在異常產生的時候把異常信息存儲在exceptionInfo變量中:

<c:catch var="exceptionInfo">  <c:out value="${user.address}"/></c:catch>

如果需要可以在后面輸出異常的信息:

<c:if test="${exceptionInfo != null}">  運行時候產生異常,異常信息為:${exceptionInfo.message}</c:if>

2 為頁面指定異常處理文件

如果不想針對每一段代碼都進行異常處理,可以以頁面作為單位進行異常處理,可以指定當前頁面運行過程中產生錯誤的時候,由特定的頁面對異常進行處理。

采用這種異常處理方式,需要編寫一個專門的異常處理文件,然后在每個需要進行異常處理的文件中進行設置。

編寫異常處理文件

異常處理文件中需要使用page指令的isErrorPage屬性,格式如下:

復制代碼 代碼如下:
<%@ page isErrorPage="true"%>

如果在頁面上進行了這樣的設置,頁面就具有了一項特殊的功能,能夠訪問異常對象exception。exception是JSP的內部對象,當頁面在運行過程中產生異常的時候,會拋出異常對象exception,該對象包含了異常信息。

下面是一個異常處理文件:

文件名:errorPage.jsp

<%@ page contentType="text/html;charset=gb2312"%><%@ page isErrorPage="true"%>

頁面產生異常,異常信息如下:

復制代碼 代碼如下:
${exception.message}

為頁面指定異常處理文件

要想讓頁面產生異常的時候,由專門的異常處理文件對異常進行處理,需要在該頁面中使用page指令的errorPage指定專門的異常處理界面,格式如下:

復制代碼 代碼如下:
<%@ page errorPage="異常處理文件"%>

假設要設置前面編寫的errorPage.jsp頁面為當前頁面的異常處理文件,可以使用下面的代碼:
復制代碼 代碼如下:
<%@ page errorPage="errorPage.jsp"%>

3 通過web.xml進行配置

如果不想為每個頁面設置異常處理文件,可以為同一種類型的異常指定統一的異常處理文件。還有一些異常的處理是沒有辦法通過頁面設置來完成的,例如用戶輸入了網站中的一個不存在文件,這時候應該告訴用戶文件不存在,但是這種異常是沒有辦法通過在頁面設置來解決的。

要想為每種類型的異常指定一個異常處理文件,可以通過web.xml進行配置。在web.xml中進行配置可以根據錯誤類型配置,例如NullPointException、IOException等,也可以根據錯誤編碼配置。

常見的異常編碼如下:

403錯誤:文件被禁止訪問;
404錯誤:文件沒有找到;
500錯誤:文件在運行過程中發生未知錯誤。
根據異常類型進行配置,可以使用下面的代碼:

<error-page>  < exception-type >java.lang.NullPointerException</exception-type>  <location>/nullpointer.jsp</location></error-page>

根據異常編碼進行配置,可以使用下面的代碼:

<error-page>  <error-code>401</error-code>  <location>/401.jsp</location></error-page>

希望本文所述對大家的JSP程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 辽宁省| 江源县| 平谷区| 牡丹江市| 长寿区| 固始县| 图木舒克市| 安义县| 乡宁县| 双鸭山市| 眉山市| 临泽县| 谢通门县| 四子王旗| 梨树县| 泰来县| 敦化市| 秦皇岛市| 闽侯县| 平利县| 固阳县| 恩平市| 民权县| 赤城县| 山东省| 铁力市| 和静县| 英吉沙县| 台北市| 尖扎县| 丽水市| 乐平市| 准格尔旗| 文化| 红原县| 名山县| 平和县| 宜章县| 平定县| 北碚区| 嘉义县|