下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
struts2的action之間的參數(shù)傳遞和結(jié)果類型action的默認(rèn)結(jié)果類型是dispatcher,而action之間發(fā)送請(qǐng)求是不能直接用該結(jié)果類型的。一般來說,可選的結(jié)果有redirect、redirectAction、chain。前兩種都是屬于頁面跳轉(zhuǎn),也就是說,發(fā)送請(qǐng)求以后,地址欄的地址會(huì)刷新為被請(qǐng)求的action的地址,而chain則不會(huì)更新地址。redirect-action:“這個(gè)Result使用ActionMapperFactory提供的ActionMapper來重定位瀏覽器的URL來調(diào)用指定的action和(可選的)namespace.這個(gè)Result比ServletRedirectResult要好.因?yàn)槟悴恍枰裊RL編碼成xwork.xml中配置的ActionMapper提供的模式.這就是說你可以在任意點(diǎn)上改變URL模式而不會(huì)影響你的應(yīng)用程序.因此強(qiáng)烈推薦使用這個(gè)Result而不是標(biāo)準(zhǔn)的redirectresult來解決重定位到某個(gè)action的情況.”---webwork2的說法。redirect:"調(diào)用{@linkHttpServletResponse#sendRedirect(String)sendRedirect}方法來轉(zhuǎn)到指定的位置。HTTP響應(yīng)被告知使瀏覽器直接跳轉(zhuǎn)到指定的位置 (產(chǎn)生客戶端的一個(gè)新請(qǐng)求).這樣做的結(jié)果會(huì)使剛剛執(zhí)行的 action(包括action實(shí)例,action中的錯(cuò)誤消息等)丟失,不再可用?!焙唵握f,兩者的共同點(diǎn)是,*地址欄會(huì)變化,所有前一個(gè)action的請(qǐng)求參數(shù)都會(huì)丟失,當(dāng)然也包括action的屬性值也會(huì)丟失。*路徑寫法稍有不同,redirectAction請(qǐng)求下一個(gè)action時(shí),不帶后綴.action,而redirect和普通URL寫法一致。*redirectAction支持param來附加請(qǐng)求參數(shù),但是這往往會(huì)導(dǎo)致ServletActionRedirectResult報(bào)找不到xxx屬性的警告,這大概是由于無法識(shí)別是IOC注入,還是參數(shù)附加URL導(dǎo)致的,雖然是WARN級(jí)別,不過寧可寫成xxx?a=x&b=y的形式,而&還需要寫作&的格式,否則會(huì)報(bào)xml格式錯(cuò)誤。(另外,這種url形式,作為param的actionName的值也是可以正常使用的)chain:相當(dāng)于是forward,首先表現(xiàn)為地址欄不會(huì)改變,類似 dispatcher,同時(shí),它的特點(diǎn)是能夠在多個(gè)action中共享表單傳遞過來的數(shù)據(jù),同時(shí),按照action鏈的順序,相關(guān)action的屬性值也會(huì)傳遞下去,這表示在最后的視圖頁,你可以得到前面所有action的屬性值(如果有g(shù)et方法的話)。對(duì)于多個(gè)action具有相同屬性值的話,后續(xù)action會(huì)先使用前面的action的數(shù)據(jù)來進(jìn)行賦值,然后再進(jìn)行邏輯處理并傳遞下去。看起來是很完美,可是卻有很大的問題。如果后面的 action需要調(diào)用前面action的屬性值,他得保證具有同樣的屬性值,否則你無法接收到前面 action的值。他無法像redirect-action一樣通過附加參數(shù)獲取,他不支持xxx?a=x&b=y的形式。這將導(dǎo)致很大的耦合性和無效參數(shù)的泛濫,無法通過配置文件傳遞參數(shù)也很麻煩。另外,很困擾的一點(diǎn)就是,如果在action鏈靠前的action方法內(nèi)出現(xiàn)錯(cuò)誤(如action的hasError方法返回true)或者發(fā)生異常,他就會(huì)強(qiáng)迫你定義 input結(jié)果,包括后面的action也要定義,否則就會(huì)報(bào)錯(cuò)。而實(shí)際上,即使符合了以上條件,他仍不會(huì)執(zhí)行后面的 action,而是直接跳到后面的action的input視圖。除非發(fā)生錯(cuò)誤的 action返回input,并且type為"chain”并且后一個(gè)action的方法必須為input,否則后續(xù)方法不會(huì)執(zhí)行,而直接定位到了最后的物理視圖。這讓我覺得chain的適用范圍變的十分窄, 據(jù)說webwork2已經(jīng)不提倡使用chain,這個(gè)沒考證過。提交服務(wù)器處理業(yè)務(wù)后結(jié)果返回頁面的處理,Struts2提供了對(duì)不同種類返回結(jié)果的支持,常見的有JSP,F(xiàn)reeMarker,Velocity等。struts.xml配置文件中result的語法:<resultname=""type="">xxxxx</result>Struts2支持的不同類型的返回結(jié)果為:ChainResult-->type="chain"用來處理Action鏈DispatcherResult-->type="dispatcher"用來轉(zhuǎn)向頁面,通常處理JSPFreeMarkerResult-->type="freemarker"處理FreeMarker模板HttpHeaderResult-->type="httpheader"用來控制特殊的Http行為RedirectResult-->type="redirect"重定向到一個(gè)URLRedirectActionResult-->type="redirectAction"
重定向到一個(gè)ActionStreamResult-->type="stream"向?yàn)g覽器發(fā)送InputSream對(duì)象,通常用來處理文件下載VelocityResult-->type="velocity"處理Velocity模板XLSTResult-->type="xslt"處理XML/XLST模板
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年中國白尖美工筆市場調(diào)查研究報(bào)告
- 2024年05月嘉興銀行總行授信管理部空缺崗位招聘2人筆試歷年參考題庫附帶答案詳解
- 二零二五年度公寓租賃房屋租賃權(quán)終止合同范本3篇
- 2024年中國電散熱器市場調(diào)查研究報(bào)告
- 2024年中國瓷磚粘接膏市場調(diào)查研究報(bào)告
- 2025年度年度養(yǎng)豬場租賃與養(yǎng)殖產(chǎn)業(yè)鏈金融支持合同3篇
- 2025年度消防通道及安全出口施工勞務(wù)分包協(xié)議3篇
- 2024年中國植絨針市場調(diào)查研究報(bào)告
- 2025年度拖車服務(wù)合同正規(guī)范范文本(含拖車租賃維修服務(wù))3篇
- 2024年中國旋轉(zhuǎn)展示控制板市場調(diào)查研究報(bào)告
- 中小學(xué)數(shù)學(xué)學(xué)科德育實(shí)施指導(dǎo)綱要
- 并聯(lián)無功補(bǔ)償項(xiàng)目節(jié)約電量的計(jì)算中國電力企業(yè)聯(lián)合會(huì)
- 《病毒》教學(xué)設(shè)計(jì)
- 路面基層允許彎沉值計(jì)算+彎沉系數(shù)圖+允許彎沉值計(jì)算公式
- 連鑄意外事故處理
- 國家開放大學(xué)(中央廣播電視大學(xué))報(bào)名登記表【模板】
- 新職業(yè)英語1-基礎(chǔ)篇-Unit 3(課堂PPT)
- 公司各部門協(xié)作情況互評(píng)表滿意度調(diào)查表
- 第二章水準(zhǔn)測(cè)量PPT課件
- 長輸管道原油輸送基本知識(shí)
- 完美世界的材料
評(píng)論
0/150
提交評(píng)論