<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 6  文章 - 129  trackbacks - 0
    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    常用鏈接

    留言簿(14)

    隨筆檔案(6)

    文章分類(467)

    文章檔案(423)

    相冊

    收藏夾(18)

    JAVA

    搜索

    •  

    積分與排名

    • 積分 - 826292
    • 排名 - 49

    最新評論

    閱讀排行榜

    評論排行榜

    業(yè)務(wù)異常的設(shè)計(jì)

      業(yè)務(wù)異常的層次結(jié)構(gòu)設(shè)計(jì)在開發(fā)中也是非常重要的要作,業(yè)務(wù)異常體系結(jié)構(gòu)的設(shè)計(jì)方法將直接影響
    到異常處理的方法.
      對于異常系統(tǒng)的結(jié)構(gòu)通常會(huì)被劃分為三個(gè)層次,第一層為異常的基類,第二層為功能層或者模塊層,
    第三層為業(yè)務(wù)異常層,層與層之間是父子工的繼承關(guān)系.
      對于一個(gè)通用的異常系統(tǒng)而言,通常會(huì)定義一個(gè)異常基類,假設(shè)是BaseException,該類繼承自RuntimeException
    之所以將業(yè)務(wù)異常的基類定義為RuntimeException,是因?yàn)闃I(yè)務(wù)異常是否需要開發(fā)人員在開發(fā)過程中進(jìn)行捕獲的
    對于業(yè)務(wù)異常的捕獲交給系統(tǒng)的框架或者表示層來完成.
      接下來,在BaseException的基礎(chǔ)之上,還要為應(yīng)用中的每個(gè)層次定義一個(gè)異常基類.例如,業(yè)務(wù)層的異常
    可以定義為BusinessException,持久層的異常可以定義為DAOException等.當(dāng)然,這一層次的異常也可以按照
    功能或者模塊來進(jìn)行劃分,劃分的方式主要依賴于頂層對異常的處理方法.
      最后,就是為每一個(gè)業(yè)務(wù)異常定義相應(yīng)的業(yè)務(wù)對象.另外,為減少異常對象的數(shù)量,在這一層也可以采取錯(cuò)誤
    代碼,使得頂層的攔截程序可以依據(jù)錯(cuò)誤代碼來得到相應(yīng)的錯(cuò)誤信息.

    異常處理方法

      Servlet容器中異常的處理
    在web.xml文件中進(jìn)行異常處理的配置是通過<error-page>元素來進(jìn)行的,它支持兩種類型的異常攔截.

    <error-page>
     <error-code>404</error-code>
     <location>/error/notFound.jsp</location>
    </error-page>

    <error-page>
     <error-type>java.lang.NullPointException</error-type>
     <location>/error/nullPointer.jsp</location>
    </error-page>

    從JSP 2.0開始,除了在錯(cuò)誤頁面中可以使用綁定到request的exception對象外,還增加了一個(gè)名稱為
    errorData的綁定到pageContext的對象,該對象是javax.servlet.jsp.ErrorData類的實(shí)例,它可以當(dāng)做
    一個(gè)普通的Bean來使用,通過它的屬性可以了解到異常的更多信息.
    其屬性如下:
    屬性      類型      描述
    requestURI   String     發(fā)生請求失敗的URI
    servletName   String     發(fā)生錯(cuò)誤的Servlet或者JSP頁面的名稱
    statueCode   int       發(fā)生錯(cuò)誤的狀態(tài)碼
    throwable    Throwable    導(dǎo)致當(dāng)前錯(cuò)誤的異常
    例如:
    ...
    <title>404狀態(tài)碼錯(cuò)誤的頁面</title>
    ...
    <jsp:useBean id="now" class="java.util.Date" />
    發(fā)生異常的時(shí)間:${now}<br>
    請求的地址: ${pageContext.errorData.requestURI }<br>
    錯(cuò)誤狀態(tài)碼: ${pageContext.errorData.statueCode }<br>
    異常:    ${pageContext.errorData.throwable }
    ...

    自定義異常頁面

      自己在JSP頁面中的定義將會(huì)覆蓋在web.xml中的定義
      自定義異常頁面的方法如下
    <%@ page errorPage="/error/errorPage.jsp" %>

     



    posted on 2007-08-28 21:19 Ke 閱讀(405) 評論(0)  編輯  收藏 所屬分類: struts
    主站蜘蛛池模板: 亚洲av永久无码精品漫画| 免费在线黄色网址| 久久久亚洲欧洲日产国码aⅴ| 一区视频免费观看| 国产亚洲情侣一区二区无码AV| 四虎影视久久久免费观看| 亚洲国产成人精品久久久国产成人一区二区三区综| 亚洲综合欧美色五月俺也去| 无码少妇一区二区浪潮免费| 亚洲中文字幕乱码一区| 精品国产免费观看| 日本亚洲高清乱码中文在线观看| 国产精品免费播放| 日韩免费码中文在线观看| 亚洲午夜激情视频| 中文字幕无码免费久久| 亚洲天天在线日亚洲洲精| 1000部拍拍拍18免费网站| 中文字幕在线日亚洲9| 免费a级毛片永久免费| 一级毛片免费全部播放| 亚洲va中文字幕无码久久| 亚洲精品在线免费观看| 亚洲日韩国产二区无码| 亚洲一级黄色视频| 午夜视频免费在线观看| 亚洲第一成人在线| 免费一级毛片在线观看| a级日本高清免费看| www.亚洲成在线| 国产一级淫片免费播放| 在线观看免费无码专区| 国产婷婷综合丁香亚洲欧洲| 免费又黄又爽又猛的毛片| 亚欧免费无码aⅴ在线观看| 亚洲欧洲日韩国产一区二区三区| 亚洲国产成人精品91久久久| 51在线视频免费观看视频| 最新亚洲人成无码网站| 亚洲国产精品久久久久网站| 成人黄动漫画免费网站视频|