Struts2提供了對不同種類返回結(jié)果的支持,常見的有JSP,F(xiàn)reeMarker,Velocity等。
Struts2支持的不同類型的返回結(jié)果為:
名字
說明
Chain Result
用來處理Action鏈
(1)主要用于把相關(guān)的幾個action連接起來,共同完成一個功能。
HttpServletRequest request =
ServletActionContext.getRequest();
String
s=(String)request.getAttribute("propName");
Dispatcher Result
用來轉(zhuǎn)向頁面分發(fā)請求,通常處理JSP
FreeMarker Result
處理FreeMarker模板
HttpHeader Result
用來控制特殊的Http行為
Redirect Result
重定向到一個URL
sendRedirect是重定向,是重新產(chǎn)生一個HTTP請求到服務(wù)器,故重定向后其原來所在的action上下文就不可用了。
Redirect Action Result
重定向到一個Action
Stream Result
向瀏覽器發(fā)送InputSream對象,通常用來處理文件下載
Velocity Result
處理Velocity模板
XLS Result
處理XML/XLST模板
PlainText Result
顯示原始文件內(nèi)容,例如文件源代碼
S2PLUGINS:Tiles Result
結(jié)合Tile使用
JSON:Json Result
返回Json結(jié)果
他們主要的區(qū)別在于
Struts2支持的不同類型的返回結(jié)果為:
名字
說明
Chain Result
用來處理Action鏈
(1)主要用于把相關(guān)的幾個action連接起來,共同完成一個功能。
(3)多個action間數(shù)據(jù)的傳遞
主要有兩種方式:
1。由于處于chain中的action屬于同一個http請求,共享一個ActionContext,故可以在上下文中獲取,在頁面上可以直接使 用。手動獲取的方法如下:
2。實現(xiàn)ModelDriven接口
Dispatcher Result
用來轉(zhuǎn)向頁面分發(fā)請求,通常處理JSP
FreeMarker Result
處理FreeMarker模板
HttpHeader Result
用來控制特殊的Http行為
Redirect Result
重定向到一個URL
sendRedirect是重定向,是重新產(chǎn)生一個HTTP請求到服務(wù)器,故重定向后其原來所在的action上下文就不可用了。
Redirect Action Result
重定向到一個Action
Stream Result
向瀏覽器發(fā)送InputSream對象,通常用來處理文件下載
Velocity Result
處理Velocity模板
XLS Result
處理XML/XLST模板
PlainText Result
顯示原始文件內(nèi)容,例如文件源代碼
S2PLUGINS:Tiles Result
結(jié)合Tile使用
JSON:Json Result
返回Json結(jié)果
他們主要的區(qū)別在于