在struts2中有两种驱动,那就是模型驱动与属性驱动。
属性驱动
属性驱动就是在页面通过form表单设置name属性,在表单提交后在action中通过相同的名称属性的变量获取提交值。
例如:
<form action="Log">
<input name="username" type="text"/>
<input type="submit" value="提交" />
</form>
//那么在Action中只需要这样配置就可以获取到值了
public class LogAction extends ActionSupport{
private String username;
public String setUsername(String username){
this.username = username;
}
.............
}
模型驱动
模型驱动就是通过指定的对象获取表单提交的值,struts2会自动填充对象,在action中,我们可以直接通过对象获取单个属性值。
例如:
<form action="Log">
<input name="username" type="text"/>
<input name="password" type="text"/>
<input type="submit" value="提交" />
</form>
//这是只需要在Action这么配置就可以获取到值了
public class LogAction extends ActionSupport implememnt ModelDriven<User>{
private User User = new User();
public User getModel() {
return user;
}
}
如果在外部想要获取User的值,例如在jsp中,那么可以使用getModel这个方法:
//jsp中获取Model,此时的Model就相当于User对象
<input name="usernameValue" type="text" value-"model.username"/>