結果頁面配置
1.全局結果頁面
- result标簽配置action方法的傳回值到不同的路徑裡面
-
建立兩個action,執行預設的方法execute方法,讓兩個action的方法都傳回success,傳回success之後,配置到同一個頁面裡面
(1)如果多個action,方法裡面傳回值相同的,到頁面也是相同的,這個時候可以使用全局結果頁面配置
(2)在package标簽裡面配置Struts2架構學習筆記——02 Struts2架構學習筆記——02
2.局部結果頁面
配置全局頁面,也配置了局部頁面,最終以局部配置為準
3.Result标簽的type屬性
-
result标簽裡面除了name屬性之外,還有一個屬性 type屬性
type屬性:如何到路徑裡面(轉發還是重定向)
-
type屬性值
(1)預設值,做轉發操作,值是 dispatcher
(2)做重定向操作,值是 redirectStruts2架構學習筆記——02 redirectAction:重定向到actionStruts2架構學習筆記——02 Struts2架構學習筆記——02
Action擷取表單送出資料
- 之前web階段,送出表單到servlet裡面,在servlet裡面使用request對象裡面的方法擷取,getParameter,getParameterMap
- 送出表單到action,但是action沒有request對象,不能直接使用request對象
-
action擷取表單送出資料主要三種方式
(1)使用ActionContext類
(2)使用ServletActionContext類
1.使用ActionContext類擷取
(1)建立表單,送出表單到action裡面
(2)在action使用ActionContext擷取資料
2.使用ServletActionContext類擷取
調用類裡面靜态方法,得到request對象
在action操作域對象
- request、session、servletContext域對象
- 使用ServletActionContext類操作
Struts2架構學習筆記——02
Struts2封裝擷取表單資料方式
原始方式擷取表單封裝到實體類對象
1.屬性封裝
1 直接把表單送出屬性封裝到action的屬性裡面
2 實作步驟
(1)在action成員變量位置定義變量
變量名稱和表單輸入項的name屬性值一樣
(2)生成變量的set方法(把set和get方法都寫出來)
3 使用屬性封裝擷取表單資料到屬性裡面,不能把資料直接封裝到實體類對象裡面
2.模型驅動封裝
1 使用模型驅動方式,可以直接把表單資料封裝到實體類對象裡面
2 實作步驟
(1)action實作接口 ModelDriven
(2)實作接口裡面的方法 getModel方法
把建立對象傳回
(3)在action裡面建立實體類對象
3 使用模型驅動和屬性封裝注意問題:
在一個action中,擷取表單資料可以屬性封裝,使用模型驅動封裝,
不能同時使用屬性封裝和模型驅動封裝擷取同一個表單資料
如果同時使用,之後執行模型驅動
注:表單輸入項name屬性值和實體類屬性名一樣