一個提交到服務器的處理通常可以分為兩個階段,第一個階段查詢服務器狀態(查詢或者更新數據庫),第二個階段選擇一個合適的結果頁面其返回給用戶(這里要講的Result的內容)。
Struts2提供了對不同種類返回結果的支持,常見的有JSP,FreeMarker,Velocity等。
Struts2支持的不同類型的返回結果為:
名字
說明
Chain Result
用來處理Action鏈
Dispatcher Result
用來轉向頁面,通常處理JSP
FreeMarker Result
處理FreeMarker模板
HttpHeader Result
用來控制特殊的Http行為
Redirect Result
重定向到一個URL
Redirect Action Result
重定向到一個Action
Stream Result
向瀏覽器發送InputSream對象,通常用來處理文件下載
Velocity Result
處理Velocity模板
XLS Result
處理XML/XLST模板
PlainText Result
顯示原始文件內容,例如文件源代碼
S2PLUGINS:Tiles Result
結合Tile使用
另外第三方的Result類型還包括JasperReports Plugin,專門用來處理JasperReport類型的報表輸出。
在struts-default.xml文件中已經有了對于所有類型Result的定義: