struts2是乙個優秀的mvc(model-view-controller)框架,其中客戶端請求引數在mvc架構中作為model的屬性存在。struts2框架有兩種方式獲取客戶端請求的引數。
1、通過屬性驅動的方式獲取客戶端請求的引數(將action類作為model的方式):
(1)將pojo類作為action類的屬性,並在action類中提供getter/setter方法:
action類**如下:
public class useraction extends actionsupport
public void setuserbean(userbean userbean)
}
其中userbean的**如下:
public class userbean
public void setusername(string username)
public string getpassword()
public void setpassword(string password)
}
jsp頁面**如下:
(2)將客戶端請求的引數名作為action類的屬性,並在action類中提供getter/setter方法:
public class useraction extends actionsupport
public void setusername(string username)
public string getpassword()
public void setpassword(string password)
}
jsp頁面**如下:
(3)將客戶端請求的引數封裝到list集合中,作為action類的屬性,並在action類中提供getter/setter方法:
public class useraction extends actionsupport
public void setuserlist(listuserlist)
}
jsp頁面**如下:
(4)將客戶端請求的引數封裝到map集合中,作為action類的屬性,並在action類中提供getter/setter方法:
public class useraction extends actionsupport
public void setusermap(mapusermap)
}
jsp頁面**如下:
2、通過模型驅動的方式獲取客戶端請求的引數(將pojo類作為model的方式):
讓action類實現com.opensymphony.xwork2.modeldriven介面,並例項化乙個pojo類,將例項化的pojo類物件通過getmodel方法返回。
public class user6action extends actionsupport implements modeldriven
}
jsp頁面**如下:
優點:解決了屬性驅動存在的問題,缺點:一次只能封裝乙個model物件。
總結:模型驅動在開發中使用比較多,當然模型驅動也可以結合屬性驅動一起使用。
struts2的客戶端驗證
struts2同樣支援客戶端驗證 1.struts2標籤的form的主題 theme 一定不能設為 2.將form的validate屬性設為true。這樣客戶端就會根據相應的action的xml驗證檔案產生乙個js對客戶端進行驗證。一般開發中只使用struts2的服務端驗證,而不使用struts2的...
struts2客戶端校驗器詳解
一 struts2內建校驗器 位於xwork 2.0.4.jar壓縮包中 com.opensymphony.xwork2.validator.validators 有個檔案default.xml 該檔案中定義了struts2框架內建的校驗器。default.xml檔案定義了常用的校驗器型別。二 各種...
webapi獲取請求客戶端位址
獲取客戶端ip位址 無視 若失敗則返回回送位址 public static string gethostaddress if string.isnullorempty userhostaddress 最後判斷獲取是否成功,並檢查ip位址的格式 檢查其格式非常重要 if string.isnullor...