在struts2中關於action的請求url請求基本上由三種情況:
首先要先提下struts在傳送請求的處理流程:
客戶端請求(http://localhost:8080/helloworld/stu/stuadd)->tomcat接收請求->根據helloworld這個專案來載入處理web.xml->把請求交給strutstfilter來處理,strutsfilter交給dofilter處理->dofilter根據struts.xml找到對應的namespace、action,及action處理完成返回的資訊來顯示呼叫對應的result頁面->返回給客戶端
struts.xml配置如下:
#1:不指定 由studentaction中的預設函式execute來處理
/student_index.jsp
#2:指定來處理
/student_index.jsp
/student_add.jsp
/student_add_error.jsp
#3:
/user_add.jsp
#4:萬用字元處理
/_.jsp
引數傳遞:struts中引數傳遞有基本三種方法:
1:action接收引數:
1:由action中的get***(),set***()來處理引數的接收,其中的action的屬性名稱不一定要傳遞的引數的名稱一樣,但是get***後面的名稱一定要一致。
**:
public class useraction extends actionsupport
public void setname(string name)
public int getage()
public void setage(int age)
//引數和成員變數時一一對應的 型別自動轉換
private string name;
private int age;
public string add()
} 2:域模型物件
建立乙個域模型物件接收引數此時引數的傳遞:user.name=.....
同時由於可能域模型欄位比要接收的字段少比如password的輸入的驗證,這時可以使用dto(資料傳輸物件)
作為中間的資料接收然後再傳遞來處理
dto:資料傳輸物件
do:資料物件
3:modeldriven 模型驅動
**:使用的是com.opensymphony.xwork2.modeldriven;模型驅動類
student類中,這是需要單獨的new出來乙個student物件
public class studentaction extends actionsupport implements modeldriven
public string add()
return "add_student";
}@override
public student getmodel()
@override
public string execute()
}
Struts2之action接收請求引數
1.採用基本型別接受請求引數 get post action public class getparamaction extends actionsupport public void setname string name public int getage public void setage ...
Struts2 action處理業務請求
struts.devmode value true struts.i18n.encoding value utf 8 default namespace extends struts default hello class action.helloaction hello.jsp taglib標籤庫...
Struts1 生成Action請求的幾種方式分析
1 直接硬編碼 a href lesson14 struts1 demo1 user reguserdo.do 註冊 a br 專案名,請求字尾,都是固定死的 2 使用el表示式 a href user reguserdo.do 註冊 a br 專案名稱實現了動態獲取,但是請求字尾還是固定 3 使用...