现在,我们先来写一个属于自己的DispatchAction:
package blog.struts.base;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.actions.DispatchAction;
public abstract class BaseAction extends DispatchAction ...{
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception ...{
if ( !this.doFirst(mapping, form, request, response) )
...{
// 前期处理的错误处理
}
else
...{
}
ActionForward forward = super.execute(mapping, form, request, response);
if ( this.doLast(mapping, form, request, response) )
...{
/ 后期处理的错误处理
}
return forward;
}
protected boolean doFirst(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) throws Exception ...{
//业务的前期处理
}
protected boolean doLast(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) throws Exception ...{
// 业务的后期处理
}
}我们现在可以写一个自己项目的Action继承于上面的BaseAction:
package blog.struts.action;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import blog.struts.base.BaseAction;
public class TestAction extends BaseAction {
public ActionForward test(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) throws Exception{
// 具体的业务处理
return mapping.findForward("test");
}
}

4807



被折叠的 条评论
为什么被折叠?



