Struts2框架封装数据

主要解决的问题:是在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;
	}
}

对于模型驱动它与属性驱动对比,在实际开发中使用比较多,模型驱动缺点,它只能对 一个模型数据进行封装。


猜你喜欢

转载自blog.csdn.net/qq_33500554/article/details/80718963