struts的DispathAction

对于StrutsDispathAction是对Action的一种瘦身方式。下面就针对其建立过程做一个简略的介绍。

1.       建立一个类文件,其中类文件继承DispatchAction

    public class AdminAction extends DispatchAction {

 

    public ActionForward add(ActionMapping mapping, ActionForm form,

           HttpServletRequest request, HttpServletResponse response)

           throws Exception {

       ……………..(在这里把前面的代码省去了)

       if(UserSessionServlet.isNotUserSession(request, response)){

       ld.addAdmin(DBConnection.getConn(),user);

       List userlist=ld.findAllUsers(DBConnection.getConn());

       request.setAttribute("userlist", userlist);

       return mapping.findForward("add_success");  //关键

       }else{

           return mapping.findForward("error");

       }

    }

   

    public ActionForward del(ActionMapping mapping, ActionForm form,

           HttpServletRequest request, HttpServletResponse response)

           throws Exception {

       ……………..(在这里把前面的代码省去了)

       if(UserSessionServlet.getsession()!=null){

       ld.delAdmin(DBConnection.getConn(), id);

       List userlist=ld.findAllUsers(DBConnection.getConn());

       request.setAttribute("userlist",userlist);

       return mapping.findForward("del_success");//关键

       }else

       {

           return mapping.findForward("error");

       }

    }

}

当然在这里也可以复写execute方法,但是注意一点的是复写的时候注意将其转向使用父类的转向。

public ActionForward execute(ActionMapping mapping, ActionForm form,

           HttpServletRequest request, HttpServletResponse response)

           throws Exception {

        //代码段

       return super.execute(mapping, form, request, response);

    }

2.       配置xml文件。

    <action path="/admin"

               type="bjsydx.test.action.AdminAction"

               name="loginForm"

               scope="request"

               parameter="command"

        >

        <forward name="add_success" path="/user/userlist.jsp"></forward>

        <forward name="del_success" path="/user/userlist.jsp"></forward>

        <forward name="error" path="/login/login.jsp"></forward>

        </action>

3.       在网页文件中写链接,这里就写一个举例。

<form action="../admin.do?command=add" method="post">

注意admin为配置文件中的path对应的值,后面接的commandparameter的值,addDispatchAction中对应的方法。

4.       下面就是运行了。

 

还有一个就是struts的模式匹配。这个是针对按照某种规范编码时,采用的一种模式匹配方式。{0}表示带上前面的虚拟路径,{1}表示不带,因此写路径的时候需要依情况而定,这里不做具体的介绍。是时候看下正则表达式了,听其名而未闻其详啊。上次一个网络实习的单位还说需要用到正则表达式,看来是需要点时间琢磨下了。

 

 

还有一个是ForwordAction,这个不难,上网搜一下就成,不做介绍了。互联网就是老师,嘿嘿。给大爷笑一个!

你可能感兴趣的:(jsp,xml,struts,正则表达式,互联网)