作用领域对象接收用户输入
JSP:
<input type="text" name="user.name">
<input type="text" name="user.password">
User类
public class User implements Serializable{
private String username;
private String password;
//get set 方法
}
Action:
public class LoginAction implements Action{
private User user;
//......
// user的get和set方法
}
传递user.name请求参数等同于调用:action.getUser().setUsername();
Struct2会遍历所有请求参数,自动依次实例化任何用于填充数据的对象(对于任意层次的对象包含关系都适用)
需要显示的话可以
<s:property value="user.username" />
用ModelDriven action
jsp:
<input type="text" name="username">
<input type="text" name="password">
action:
public class LoginAction implements Action,ModelDriven<User>{
private User user = new User();
// ......
@Override
public User getModel(){
return user;
}
}
引用:
<s:property value="username"/>
使用Action的属性接收用户输入
public class LoginAction implements Action
{
private String username;
private String password;
// get set
}