1.声明模型(值对象)
public class UserValue implements Serializable {
private static final long serialVersionUID = 232L;
private String name;
private String password;
private Integer age;
private String address;
public UserValue() {
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
@Override
public String toString() {
return "UserValue [name=" + name + ", password=" + password + ", age=" + age + ", address=" + address + "]";
}
}
2.定义控制器,接收模型参数
public class UserAction {
private UserValue userValue;
public void setUserValue(UserValue userValue) {
this.userValue = userValue;
}
public UserValue getUserValue() {
return userValue;
}
public String execute(){
System.out.println(userValue);
return "success";
}
}
3.开发JSP页面,用于提交表单参数:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<h1>提交用户信息</h1>
<form action="demo/user.action" method="post">
<div>
用户名:<input type="text" name="userValue.name>
</div>
<div>
密码:<input type="password" name="userValue.password">
</div>
<div>
年龄:<input type="text" name="userValue.age">
</div>
<div>
地址:<input type="text" name=userValue.address">
</div>
<div>
<input type="submit" value="保存">
</div>
</form>
</body>
</html>
!注意:表单中的input元素name属性必须写为 name="userValue.address" 这样才能传递参数.
4.配置控制器 :
<!-- 利用值对象打包传递参数 -->
<action name="user"
class="cn.tedu.controller.UserAction">
<result name="success">
/WEB-INF/jsp/ok.jsp
</result>
</action>