a) 属性驱动灵活、准确;模型驱动不灵活,因为很多时候,页面所提交过来的参数并不属于模型中的属性.
也就是说页面所提交过来的参数,与模型中的属性 并不一致,这是很常见的情况。
b) 模型驱动更加符合面向对象的编程风格,使得我们获得的是对象而不是一个个离散的值。
c) 使用模型驱动时Action方法需要实现ModelDriven机构的getModels()方法。
例,利用驱动模型获得页面的值。
public classLoginModelDrivenTest extends ActionSupport implements
ModelDriven<Person>{
private Person person = newPerson();
public Person getModel() {
// TODOAuto-generated method stub
return person;
}
@Override
public String execute()throws Exception {
System.out.println(person.getUsername());
return SUCCESS;
}
}