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 ,意思是直接把實體類當成頁面數據的收集對象。