[color=blue][size=15]StrutsEntityAction[/size][/color] org.springside.core.web.StrutsEntityAction
[code]public abstract class StrutsEntityAction<T, M extends EntityDao<T>> extends StrutsAction implements InitializingBean {}[/code]
第二层封装:负责管理单个Entity CRUD操作的Struts Action基类. 子类以以下方式声明,并实现将拥有默认的CRUD操作
此类仅演示一种封装的方式,大家可按自己的项目习惯进行重新封装 目前封装了:
1.index、list、create、edit、view、save、delete 七种action的流程封装;
2.doListEntity、doGetEntity、doNewEntity、doSaveEntity(),doDeleteEntity五种业务函数调用,可在子类重载;
3.initEntity、initForm两个FormBean与业务对象的初始函数及refrenceData,onInitForm,onInitEntity三个回调函数;
4.savedMessage、deletedMessage 两种业务成功信息,可在子类重载。
[code] /** url参数未定义method时的默认Action函数. 默认为index Action.*/
@Override
public ActionForward unspecified(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
return index(mapping, form, request, response);
}[/code]
因为implements了InitializingBean类,所以需要实现方法:afterPropertiesSet --- Init回调函数,初始化一系列泛型参数.
三个回调函数
[code]/**
* form与list界面所需的参考对象注入.如categoryList,在子类重载.
*/
protected void refrenceData(HttpServletRequest request) {
request.setAttribute("disabledField", disabledField);
}
/**
* 显示Form表单时的回调函数.为Form对象添加更多属性,在子类重载.
*/
protected void onInitForm(ActionForm form, HttpServletRequest request,T object) {
request.setAttribute(getEntityName(), object);
}
/**
* 保存Form表单时的回调函数.为业务对象添加更多属性,在子类重载.
*/
protected void onInitEntity(ActionForm form, HttpServletRequest request,T object) {}[/code]
[code]public abstract class StrutsEntityAction<T, M extends EntityDao<T>> extends StrutsAction implements InitializingBean {}[/code]
第二层封装:负责管理单个Entity CRUD操作的Struts Action基类. 子类以以下方式声明,并实现将拥有默认的CRUD操作
此类仅演示一种封装的方式,大家可按自己的项目习惯进行重新封装 目前封装了:
1.index、list、create、edit、view、save、delete 七种action的流程封装;
2.doListEntity、doGetEntity、doNewEntity、doSaveEntity(),doDeleteEntity五种业务函数调用,可在子类重载;
3.initEntity、initForm两个FormBean与业务对象的初始函数及refrenceData,onInitForm,onInitEntity三个回调函数;
4.savedMessage、deletedMessage 两种业务成功信息,可在子类重载。
[code] /** url参数未定义method时的默认Action函数. 默认为index Action.*/
@Override
public ActionForward unspecified(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
return index(mapping, form, request, response);
}[/code]
因为implements了InitializingBean类,所以需要实现方法:afterPropertiesSet --- Init回调函数,初始化一系列泛型参数.
三个回调函数
[code]/**
* form与list界面所需的参考对象注入.如categoryList,在子类重载.
*/
protected void refrenceData(HttpServletRequest request) {
request.setAttribute("disabledField", disabledField);
}
/**
* 显示Form表单时的回调函数.为Form对象添加更多属性,在子类重载.
*/
protected void onInitForm(ActionForm form, HttpServletRequest request,T object) {
request.setAttribute(getEntityName(), object);
}
/**
* 保存Form表单时的回调函数.为业务对象添加更多属性,在子类重载.
*/
protected void onInitEntity(ActionForm form, HttpServletRequest request,T object) {}[/code]