package Action;import User.User; //User包里面的User类 import com.opensymphony.xwork2.ActionSupport; import com.opensymphony.xwork2.ModelDriven; public class TestAction extends ActionSupport implements ModelDriven<User>{ //实现ModelDriven接口 private User obj= new User(); //一定要先初始化obj对象! public User getModel() { //此方法是Modeldriven接口的方法,要重写 // TODO Auto-generated method stub System.out.println(obj); return obj; } public String execute() throws Exception { System.out.println("执行excute方法"); System.out.println("用户名:"+obj.getUser()); System.out.println("密码:"+obj.getPassword()); return SUCCESS; } }
1.ModelDriven动作和javabean属性公开域数据不同,它通过getModel方法公开应用程序的域对象。
此方法在com.opensymhony.xwork.ModelDrive接口中有声明!
这种方法虽然为action引入了一个新的接口和另一个拦截器,但实际上非常简单易用。因为拦截器已经在默认拦截器中了,数据转移仍然是自动化的,甚至比之前说讲解的技术更加容易使用。
2.用以上方法实行,jsp等所有页面只需要直接访问你想要访问的变量就行,而不需要用obj.user来访问user!这样使我们的代码看起来更加简单方便~!推荐使用哦!