亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

struts1.1中的異常應用實踐

2019-11-17 06:19:22
字體:
來源:轉載
供稿:網友

struts的異常處理機制帶我們很大的方便。通過思考和自己作例子,覺得以下這種方式較為靈活:

    首先為你的應用程序定制一套異常類。例如,先定義一個基類(可以是虛類),注重,在此它擴展自RuntimeException,這是為了在struts的action中順利捕捉到。


public class BaseException extends RuntimeException {...}

下來你可以定義幾個子類,例如:Dao異常,事務處理異常,service異常等。在sPRing中,包
org.springframework.dao下定義了一套Dao異常,值得大家學習一下。

接著,在struts-cofig.xml文件中定義全局異常如下,此處的key屬性我已經不預備用了:
    <global-exceptions>
        <exception key="todo" type="org.chage.exception.BaseException"        handler="org.chage.exception.MyExceptionHandler" />
    </global-exceptions>

   
下面看一下我的處理異常的類:
   
package org.chage.exception;
import org.apache.struts.action.ExceptionHandler;
import ...  
public class MyExceptionHandler  extends ExceptionHandler {

 public ActionForward execute(
   Exception exception,
   ExceptionConfig config,
   ActionMapping mapping,
   ActionForm form,
   HttpServletRequest request,
   HttpServletResponse response)
  throws ServletException
 {      
    request.setAttribute("exception", exception);
    //返回原始請求的Forward,當然你也可以定義一個全局異常ForWord,都轉向它
    return mapping.getInputForward();
 }
}
  

在頁面上(此頁面我們設置為請求action,即發生異常的action的input屬性),我們顯示錯誤信息時可以使用struts標簽如下,注重,這里顯示的信息和資源屬性文件無關,是你自己拋出的:

<logic:present name="exception">
   <bean:write name="exception"/>
</logic:present>

這樣作的好處在哪里呢?我們來看一下,一般我們的思路是,發生了邏輯錯誤,比如說,用戶名輸重復,或者預備修改的數據已被他人刪除等,我們要捕捉它并顯示給用戶,第一感是在action中作的,例如:
try{
   //do something logic method...
}catch (XXXException e){
  ActionErrors errors= new ActionErrors();
  ActionError error=new ActionError("error.missing.username");
  errors.add("error.xxx",error);
  saveErrors(request,errors);
  return mapping.findForward("errorPage");
}

 
設計良好的action應該僅僅是web層的一個“路標指引器”,真正的邏輯方法是調用其他的業務bean來完成的,簡單地說,通常認為action中的代碼越少越好.假如采用了上面那種全局異常處理機制,action此時就可以不用管邏輯異常了,由業務bean負責拋出就可以了,大家就可以少寫一些action中的try  catch 語塊了,也可以繞開ActionError,思路上是不是更清楚?異常在真正發生的類中被拋出,然后向上傳遞,一直傳到action中,struts負責捕捉之,當然這里的異常你必須已經定義過了。

注:
1. 假如你不想寫 MyExceptionHandler 類,當然struts-config.xml中的handler=屬性也要去掉,還有一種辦法可以顯示錯誤信息在 jsp頁上,先引用jstl標簽庫,然后如下:

<c:out value="${requestScope['org.apache.struts.action.EXCEPTION'].message}"/>




發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
97色在线视频| 中文字幕日韩欧美在线视频| 久久夜色精品亚洲噜噜国产mv| 成人久久久久久| 欧美高清理论片| 亚洲电影免费观看高清完整版在线| 亚洲欧洲一区二区三区久久| 成人福利免费观看| 丝袜情趣国产精品| 久久精品久久久久| 国产精品私拍pans大尺度在线| 欧美高跟鞋交xxxxhd| 亚洲爱爱爱爱爱| 蜜臀久久99精品久久久无需会员| 久久国产精品网站| 欧美成人国产va精品日本一级| 成人欧美一区二区三区黑人孕妇| 亚洲精品视频二区| 亚洲va码欧洲m码| 久久99久久久久久久噜噜| 亚洲一区二区三区毛片| 日韩在线视频网| 久久久久久综合网天天| 亚洲国产高清福利视频| 欧美激情第一页xxx| 国产精品露脸自拍| 日韩精品视频免费在线观看| 午夜精品久久久久久99热软件| 国产日韩中文在线| 91老司机精品视频| 国产精品盗摄久久久| 国产精品成熟老女人| 青青在线视频一区二区三区| 亚洲成人激情视频| 4k岛国日韩精品**专区| 精品高清美女精品国产区| 国产视频精品免费播放| 中文字幕一区日韩电影| 九九久久久久久久久激情| 欧美巨大黑人极品精男| 欧美福利视频网站| 91精品国产乱码久久久久久蜜臀| 在线成人激情黄色| 国产综合香蕉五月婷在线| 日韩高清电影好看的电视剧电影| 亚洲护士老师的毛茸茸最新章节| 成人精品网站在线观看| 另类天堂视频在线观看| 亚洲国产精品福利| 夜夜狂射影院欧美极品| 亚洲精品福利在线观看| 欧美视频免费在线观看| 国产精品欧美日韩| 日韩免费在线播放| 精品日本美女福利在线观看| 日韩专区在线播放| 色综合久久久久久中文网| 国产精品久久久久av| 91免费综合在线| 亚洲视频国产视频| 亚洲欧美变态国产另类| 亚洲精品欧美极品| 国产91网红主播在线观看| 亚洲资源在线看| 国产成人avxxxxx在线看| 国色天香2019中文字幕在线观看| 欧美性受xxxx白人性爽| 欧美极品少妇与黑人| 欧美黑人一区二区三区| 成人免费自拍视频| 亚洲精品久久久一区二区三区| 久久99热精品这里久久精品| 精品亚洲国产成av人片传媒| 久久久亚洲影院| 欧美xxxx14xxxxx性爽| 久久99视频精品| 91国内在线视频| 国产精品成人aaaaa网站| 日本欧美黄网站| 亚洲精品一区二区三区不| 岛国精品视频在线播放| 这里只有精品在线播放| 中文字幕一区二区三区电影| 亚洲网站视频福利| 久久免费少妇高潮久久精品99| 91超碰中文字幕久久精品| 日韩av中文在线| 欧美俄罗斯性视频| 日韩在线观看视频免费| 亚洲直播在线一区| 最近2019年手机中文字幕| 国产欧美日韩综合精品| 精品视频久久久久久| 日韩欧美aⅴ综合网站发布| 久久久免费观看视频| 97热精品视频官网| 一区二区三区四区在线观看视频| 精品久久香蕉国产线看观看gif| 隔壁老王国产在线精品| 国产精品香蕉在线观看| 青草青草久热精品视频在线观看| 国产欧美一区二区| 亚洲精品国产精品自产a区红杏吧| 国产69精品久久久久9999| 精品久久中文字幕| 国模私拍视频一区| 91av免费观看91av精品在线| 日韩av在线影院| 亚洲成人激情图| 狠狠做深爱婷婷久久综合一区| 欧美精品videos另类日本| 亚洲精品成人久久电影| 成人在线小视频| 久久精品国产91精品亚洲| 亚洲精品一区二区久| 高清欧美电影在线| 日韩精品视频在线| 91精品国产综合久久久久久蜜臀| 成人444kkkk在线观看| 欧美日韩国产成人在线| 97在线视频免费播放| 福利视频第一区| www.亚洲免费视频| 亚洲一区二区久久久久久| 国产精品日韩在线一区| 国产精品久久久久久久久久久新郎| 日韩中文在线视频| 国产成人一区三区| 91视频国产精品| 欧美国产日韩二区| 成人动漫网站在线观看| 欧美视频在线观看免费网址| 欧美激情网站在线观看| 中文字幕日韩在线视频| 欧美精品午夜视频| 欧美日韩国产精品一区二区不卡中文| 日本韩国欧美精品大片卡二| 国产精品国产自产拍高清av水多| 日韩欧美国产免费播放| 欧美巨乳在线观看| 亚洲最大av在线| 日韩av成人在线观看| 影音先锋日韩有码| 精品国产乱码久久久久久婷婷| 亚洲第一色在线| 国内精品小视频| 亚洲人高潮女人毛茸茸| 亚洲成人av在线| 亚洲午夜av电影| 日韩精品一区二区三区第95| 热99久久精品| 久久男人av资源网站| 欧美丝袜一区二区三区| 亚洲欧美三级伦理| 大荫蒂欧美视频另类xxxx| 亚洲精品国精品久久99热一| 日韩精品免费一线在线观看| 美女av一区二区| 亚洲国产91精品在线观看| 久久国产精品久久国产精品| 欧美成人精品h版在线观看| 国产欧美亚洲精品| 国产精品日韩一区| 色综合久久久888|