標籤:support convert final div details pass detail stat struts
structs可以對參數進行自動封裝,做法也很簡單.
一,action參數自動封裝:
1,可以直接在action類中,聲明public的屬性,接受參數。
2,屬性也是是private,如果是private,需要提供setter方法,也可以根據需要提供getter方法。
3,struts可以自動對類型進行轉換,一般我們會傳遞String類型的參數,struts可以轉換成預設聲明的變數類型
4,調用api時候,傳遞的參數名必須和action類中聲明的名稱相同。
public class UserAction extends ActionSupport {private static final long serialVersionUID = 1L;public String username;public String pw;public Integer age;public Date birthday;private Double balance;public void setBalance(Double balance) {this.balance = balance;}public String login() {// 擷取所有參數System.out.println("login with username: " + username + " ,password: "+ pw + ", age:" + age + ", birthday:" + birthday + ", balance:"+ balance);return SUCCESS;}}
二,參數的類型轉換
從上面看,預設struts2可以自動進行類簡單型轉換(八種基本類型),但是有時候可能我們希望轉換成複雜的效果,這個時候,就需要自己寫轉換器了。
兩種方式:一個是實現介面,一個是繼承類DefaultTypeConverter
不想貼代碼了,參考:
8018419
(24) java web的struts2架構的使用-action參數自動封裝與類型轉換