struts2 模型驱动

servlet中获取页面传递过来的数据的方式是:request.getParameter(“username”);这个代码可以获取到页面的username的数据。在action中可以通过模型驱动的方式来获取页面的值。

例子:

Jsp页面

<form action="propertydriver/propertyDriverAction_testPropertyDriver.action" method="post">
    	用户名:<input type="text" name="username"/>
    	密码:<input type="password" name="password"/>
		<input type="submit"/>
    </form>

  

Action

public class ModelDriverAction extends ActionSupport implements ModelDriven<User>{
	private User model = new User();
	public User getModel() {
		// TODO Auto-generated method stub
		return this.model;
	}
	public String modeldriver(){
		return "modeldriver";
	}
}

  

过程为:当浏览器提交modelDriverAction_modeldriver.action请求时,先经过拦截器。其中有一个拦截器为ModelDrivenInterceptor,从这个源代码可以看出,这个拦截器的作用就是获取实现了ModelDriver接口的action的模型驱动。在这里为user。然后把模型驱动利用push方法压入到栈顶。这样我们就能直接通过属性进行回显和赋值了。

  

原文地址:https://www.cnblogs.com/callyblog/p/7544959.html