1. 程式人生 > >Struts2中jsp前臺傳值到action後臺的三種方式

Struts2中jsp前臺傳值到action後臺的三種方式

使用者名稱:<s:textfield name="username"/><br/>
   密 碼:<s:password name="password"/><br/>
              <s:submit value="提交"/>
  </form>
1.action中寫著同name名稱相同的屬性username 與 password 的get set方法(不推薦使用),因為一旦form向action中傳遞的引數多了,會使action中充斥很多的get set方法。
程式碼:
public class loginAction extends ActionSupport{
  private String username;
 
  private String password;

  public String getxx(){};
 
  public void setxx(){};

}

2..action 中引入jsp中向action中傳遞引數的物件User,並新增User 的get set 方法,
這樣便可以解決方法一的瓶頸,但需要注意的是jsp介面要變化一下,更改為<s:textfield name="user.username"><s:textfield name="user.password">,其實並不難理解,通過user.username與user.password 來與action中user 物件的屬性username 與password一一對應。
程式碼:
public class loginAction extends ActionSupport{
  private User user;

  public String getxx(){};
 
  public void setxx(){};

}
3.通過實現ModelDriven介面接收表單資料

首先Action類必須實現ModelDriven介面,同樣把表單傳來的資料封裝起來,Action類中必須例項化該物件,並且要重寫getModel()方法

public class loginAction extends ActionSupport implementsModelDriven<Users>{

private Users users =new Users();

public Users getModel(){

return users;

}