您的位置:首页 > 编程语言 > Java开发

Struts2获取表单数据的方式

2016-10-09 14:10 363 查看
有四种方式可以获取jsp表单提交的数据:

第一种:定义属性值,通过Setters方法获取

<form action="user/LoginAction.html" method="post">
账号: <input type="text" name="userName"><br>
密码: <input type="text" name="passWord"><br>
<input type="submit" value="提交">
</form>


public class UserAction {

private String userName;
private String passWord;

public String getUserName() {
return userName;
}

public void setUserName(String userName) {
this.userName = userName;
}

public String getPassWord() {
return passWord;
}

public void setPassWord(String passWord) {
this.passWord = passWord;
}
}


第二种:从ServletActionContext中获取request对象,再从request对象中获取参数

<form action="user/LoginAction.html" method="post">
账号: <input type="text" name="userName"><br>
密码: <input type="text" name="passWord"><br>
<input type="submit" value="提交">
</form>


public class UserAction {

public String execute() {

HttpServletRequest request = ServletActionContext.getRequest();
String userName = request.getParameter("userName");
String passWord = request.getParameter("passWord");

return "success";
}
}


第三种:可以在action里面定义一个user对象,然后写上对应的Setters和Getters方法获取

<form action="user/LoginAction.html" method="post">
账号: <input type="text" name="user.userName"><br>
密码: <input type="text" name="user.passWord"><br>
<input type="submit" value="提交">
</form>


public class UserAction {

private User user;

public User getUser() {
return user;
}

public void setUser(User user) {
this.user = user;
}

public String execute() {

System.out.println(user.getUserName()+">>"+user.getPassWord());

return "success";
}
}


第四种:通过实现ModelDriven接口获取获取(推荐)

<form action="user/LoginAction.html" method="post">
账号: <input type="text" name="userName"><br>
密码: <input type="text" name="passWord"><br>
<input type="submit" value="提交">
</form>


public class QueryAllAction implements ModelDriven<User> {

private User user;

public User getUser() {
return user;
}

public void setUser(User user) {
this.user = user;
}

public String execute() {
System.out.println(user.getUserName());
System.out.println(user.getPassWord());
return "success";
}

@Override
public User getModel() {
if (user == null) {
user = new User();
}
return user;
}

}


注:标签form表单中的action属性地址中的html后缀名是自己在配置文件中加的后缀名。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: