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

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

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

    隨筆-40  評論-66  文章-0  trackbacks-0
    和女主角Action 對象共舞

    什么是Action?
    和常規(guī)的web 應用相比,Struts Action 類工作起來就象一個小型的servlet。在大多數(shù)Java
    應用中,諸如訪問業(yè)務(wù)層的任務(wù)、錯誤處理等任務(wù)均是由servlet 承擔的。在一個 Struts 應
    用中,servlet 扮演著一個分派器的角色。而Action 對象則干實際的工作。象 servlets 一樣,
    Action 對象是多線程的。每個應用只需要一個Action 類的實例。

    Action做些什么?

    一個典型的Action 的職責通常是:

    ?? ■校驗前提條件或者聲明
    ?? ■調(diào)用需要的業(yè)務(wù)邏輯方法
    ?? ■檢測其它處理錯誤
    ?? ■將控制路由到相關(guān)視圖


    檢驗輸入: Action 需要做的就是確認ActionForm 是否是需要的類型。

    調(diào)用邏輯業(yè)務(wù):

    Action 類是HTTP 與應用系統(tǒng)中其它部分之間的適配器。最重要的是要避免將業(yè)務(wù)邏輯放入
    Action 之中。Action 類應該只是簡單地收集業(yè)務(wù)方法需要的數(shù)據(jù)并傳遞它到具體的業(yè)務(wù)對
    象。如果你同時在編寫業(yè)務(wù)類和Action 類,可能會受到要將它們編寫在一起的誘惑。一定
    要抵擋這種誘惑,并且將業(yè)務(wù)方法放入Action 可調(diào)用的單獨的類之中。Java 虛擬機(JVM)
    針對這種方法調(diào)用作了優(yōu)化;性能損失可以忽略不計。
    同時你也得到了一些設(shè)計上的優(yōu)勢

    Action檢測錯誤:
    Struts具有一個設(shè)計良好的錯誤處理系統(tǒng),允許你可以:
    ??■ 同時截獲幾個錯誤
    ??■ 在請求中傳遞錯誤數(shù)據(jù)包
    ??■ 顯示本地化信息

    這個處理流程涉及到兩個對象 (ActionErrors 和 ActionError) 和一個注冊錯誤的工
    具方法(saveErrors) 。其它兩個對象 (MessageResources 和 一個定制標簽)則用來顯
    示錯誤信息

    注冊錯誤
    總體流程歸結(jié)為:
    ??1 創(chuàng)建一個空的ActionErrors 實例
    ??2 在錯誤發(fā)生時,為錯誤信息添加關(guān)鍵字;
    ??3 檢查是否添加了某些信息
    ??4 保存ActionErrors 集合對象到請求中
    ??5 ?轉(zhuǎn)發(fā)控制到錯誤頁面以顯示信息
    ??6? 否則,正常繼續(xù)

    例如
    ActionErrors?errors?=?new?ActionErrors();
    try?{
    //?*?調(diào)用業(yè)務(wù)對象?*
    }

    catch?(ModelException?e)?{
    errors.add(ActionErrors.GLOBAL_ERROR,
    new?ActionError("error.detail",e.getMessage()));
    }

    if?(!errors.empty())?{
    saveErrors(Request,?errors);
    return?(mapping.findForward("error"));
    }

    //?*?正常繼續(xù)?*

    posted on 2006-12-14 10:32 Super·shen BLOG 閱讀(422) 評論(0)  編輯  收藏 所屬分類: JAVA技術(shù)
    主站蜘蛛池模板: 亚洲熟女乱综合一区二区| 亚洲av无码成人精品区| 特色特黄a毛片高清免费观看| 国产V亚洲V天堂无码久久久| 成人性生交大片免费看无遮挡 | 最近免费最新高清中文字幕韩国 | 亚洲人成网站免费播放| 亚洲a在线视频视频| 国产专区一va亚洲v天堂| 国产成人免费永久播放视频平台| 91av在线免费视频| 国产色爽免费无码视频| 中文字幕一区二区免费| 污污污视频在线免费观看| 日本中文字幕免费看| 自拍偷自拍亚洲精品偷一| 国产精品亚洲专区无码牛牛| 亚洲码欧美码一区二区三区| 亚洲欧美熟妇综合久久久久| 亚洲伊人久久大香线蕉啊| 亚洲免费黄色网址| 亚洲人成网站色在线观看| 亚洲免费网站观看视频| 亚洲AV无码一区二区三区网址 | 亚洲精品高清在线| 亚洲精品乱码久久久久久按摩 | 亚洲人成网www| 国产亚洲精品成人AA片| 免费人人潮人人爽一区二区| 免费夜色污私人影院网站| A片在线免费观看| 国产1000部成人免费视频| 国产精品99久久免费| 亚洲精品tv久久久久久久久| 亚洲尹人九九大色香蕉网站 | 亚洲国产精品国产自在在线| 亚洲成AV人片在线观看无| 亚洲资源最新版在线观看| 国产免费一区二区三区免费视频| 99精品视频在线观看免费专区| 成人无遮挡毛片免费看|