实现ModelDriver接口的功能(转)

ModelDriver接口 来自com.opensymphony.xwork2.ModelDriven。是xwork-2.1.2-750.jar包的东西。jsp

下面是源码:对象

package com.opensymphony.xwork2;继承

public abstract interface ModelDriven<T> {   public abstract T getModel(); }接口

 

该接口只有一个getModel()方法。主要做用是封装Object对象。实现接口时能够指定某个具体的Object对象类,如:get

public class progressQueryAction extends CentricDefaultActionSupport implements Preparable,ModelDriven<LossSitesurvey>{源码

 public LossSitesurvey getModel() {
  return lossSitesurvey;
 }it

}io

当jsp页面中须要该对象的属性时,直接model.属性名便可获得该属性。而不用再在action中编写该对象的getset方法了,对象.属性名了。至关于默认的对象封装。方便操做。class

 

使用ModelDriven的方式。该action继承ModelDriven接口,实现getModel()方法,方法只返回一个模型对象,默认转换Object。model

最后Hello.jsp中能够使用<s:property
value=".."/>取值,value直接使用相应的age,name等。而action虽然提供的getModel()方法,但由于转为了Object,而Object不能提供取值的方法,因此没法使用value="model.xxx"来取值。

所谓ModelDriven ,意思是直接把实体类当成页面数据的收集对象。

相关文章
相关标签/搜索