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

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

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

    Flyingis

    Talking and thinking freely !
    Flying in the world of GIS !
    隨筆 - 156, 文章 - 16, 評論 - 589, 引用 - 0
    數據加載中……

    重溫Struts--ActionMapping和ActionForward

    作者:Flyingis

    前段時間用Struts完成一個小項目,當時還沒有來到blogjava,很多東西也沒有記錄。現在花一點時間,將整個Struts應用重新溫習一遍,重新挖掘項目開發過程中沒有注意到的知識點,并寫下自己的一些心得與體會。

    ActionMapping

    ActionMapping將對Struts應用中有效的業務邏輯進行分類,當一個請求到達時,ActionSevletActionMapping目錄中查找對應的信息。ActionMappingStruts應用的一個核心設計,當需要了解一個Struts應用,或編寫一個新的Struts應用的時候,都應該從ActionMapping入手。ActionMapping有較多的屬性信息,具體參考相關文檔。

    ActionForward

    ActionForwardStruts的核心類之一,其基類僅有4個屬性:name / path / redirect / classname。在基于StrutsWeb應用程序開發過程中,Action操作完畢后程序會通過Struts的配置文件struts-config.xml鏈接到指定的ActionForward,傳到Struts的核心類ActionServletActionServlet使用ActionForward提供的路徑,將控制傳遞給下一個步驟。ActionForward控制接下來程序的走向。ActionForward代表一個應用的URI,它包括路徑和參數,例如:

    path=“/modify.do?method=edit&id=10”

    ActionForward的參數除了在struts-config.xml和頁面中設置外,還可以通過在Action類中添加參數,或重新在Action中創建一個ActionForward

    ActionForward中有一個重要的屬性redirect,當redirect=false時,將保存存儲在http請求和請求上下文中的所有內容,僅在同一個應用中可用。當redirect=true時,Web客戶端進行一次新的http請求,請求的資源可以在同一個應用中,也可以不在,原來的請求參數不再保存,原來的請求上下文也被清除,新的http請求僅包含ActionForwardpath屬性里所包含的參數。如果在同一個應用中,用戶會話的上下文會被維護。

    ActionForward分為全局轉發和局部轉發,ActionMapping對象的findForward方法首先會檢查局部轉發列表,查找失敗就會到全局轉發列表中查找。書寫格式中,我們一般將全局變量定義為String常數,避免誤解,使得轉發列表結構清晰易讀。

    在項目開發過程中經常碰到一種情況,當頁面已經改變了,瀏覽器中的地址如/modify.do/modify.jsp卻沒有變化,當時沒有考慮這么細,雖然存在疑問,但沒有影響到程序功能的實現,因此忽略過去了,今天查找了一些資料才弄清楚。客戶端瀏覽器顯示的是瀏覽器最后被給定的URL,當URL被提交后,在某個組件返回一個響應給瀏覽器之前,Web應用可能已經轉發請求多次,而這些過程都發生在服務器端,客戶端瀏覽器并不知道有什么變化。當一個http響應被返回時,它并沒有包含地址欄的值,所以瀏覽器僅僅顯示其用來作為初始請求的地址。通過使用redirect可以改變瀏覽器地址的顯示,因為這樣可以向瀏覽器提交一個新的請求,但付出的代價是數據不能通過請求上下文傳遞到頁面,這也是使用forwardredirect的差異之一。

    posted on 2006-03-05 10:40 Flyingis 閱讀(1432) 評論(0)  編輯  收藏 所屬分類: Web 框架與開發

    主站蜘蛛池模板: 亚洲人成网77777亚洲色| 亚洲一区视频在线播放| 91亚洲国产成人精品下载| 中国内地毛片免费高清| 日韩亚洲变态另类中文| 黄色视屏在线免费播放| 丁香五月亚洲综合深深爱| 在线看片免费人成视频久网下载| 中文字幕亚洲日韩无线码| A国产一区二区免费入口| 亚洲精品无码久久千人斩| a国产成人免费视频| 亚洲av不卡一区二区三区| 99精品视频在线视频免费观看| 久久精品国产亚洲AV高清热| 精品国产亚洲一区二区三区| 中文字幕永久免费| 久久精品亚洲一区二区| aⅴ免费在线观看| 亚洲精品无码专区久久| 亚洲国产av无码精品| 东方aⅴ免费观看久久av| 亚洲黄色在线电影| 午夜网站免费版在线观看| 未满十八私人高清免费影院| 亚洲成a人片在线观看无码专区| 精品免费久久久久久久| 亚洲av永久中文无码精品| 亚洲精品99久久久久中文字幕 | 国产亚洲A∨片在线观看| 美女内射无套日韩免费播放| 亚洲三级在线观看| 亚洲综合色区在线观看| 国产在线播放线91免费| 中文字幕亚洲男人的天堂网络| 免费国产不卡午夜福在线| 久久永久免费人妻精品| 亚洲爆乳少妇无码激情| 亚洲av午夜福利精品一区| 性一交一乱一视频免费看| 你懂的网址免费国产|