主要解决的问题:是在action中如果获取请求参数
主要有两种方式:
1.属性驱动
- 直接在action类中提供与请求参数匹配属性,提供get/set方法
- 在action类中创始一个javaBean,对其提供get/set ,在请求时页面上要进行修改, 例如 user.username user.password ,要使用ognl表达式
以上两种方式的优缺点:
第一种比较简单,在实际操作我们需要将action的属性在赋值给模型(javaBean) 去操作
第二种:不需要在直接将值给javaBean过程,因为直接将数据封装到了javaBean 中。它要求在页面上必须使用ognl表达式,就存在页面不通用问题。
2.模型驱动(使用较多)
步骤:
- 1.让Action类要实现一个指定接口ModelDriven
- 2.实例化模型对象(就是要new出来javaBean)
- 3.重写getModel方法将实例化的模型返回。
public class LoginAction implements Action,ModelDriven<User>{
privete User user = new User();
@Override
public User getModel() {
// TODO Auto-generated method stub
return null;
}
}
对于模型驱动它与属性驱动对比,在实际开发中使用比较多,模型驱动缺点,它只能对 一个模型数据进行封装。