当前位置:编程学习 > JSP >>

XDoclet简化Struts开发

答案:

Struts是一个Web开发框架,是用Struts避免了简单的JSP + Servlet开发过程,维护过程中的一系列问题,但是struts配置文件的编辑始终是一个问题。下面我们使用Xdoclet来自动生成struts配置文件。Xdoclet是一个使用Java代码中的注释来生成接口文件,或者配置文件的开源工具。

所有得Struts的各组件关系如上所示,其中有两个主要类,DispatchAction和DispatchValueBean。DispatchAction从上个页面获得输入,根据输入定位到不同的页面(0定位到dispatch_0.jsp,1定位dispatch_1.jsp)。

可以看看下列代码(只涉及到Xdoclet相关的部分):

//DispatchValueBean.java

/**

 *

 * @author mazhao

 * @struts.form

 *    name="DispatchValueBean"

 */

public class DispatchValueBean extends org.apache.struts.action.ActionForm {

    private String dispatchValue = "0";

    public DispatchValueBean () {

    }

    public String getDispatchValue()

    {

        return dispatchValue;

    }

    public void setDispatchValue(String dispatchValue)

    {

        this.dispatchValue = dispatchValue;

    }

}

上述的蓝色代码表示自己是一个FormBean,且FormBean的名字是DispatchValueBean。

//DispatchAction.java

/**

 *

 * @author mazhao

 * @struts.action

 *   name="DispatchValueBean"

 *   path="/DispatchAction.do"

 *   input="/index.jsp"

 *

 * @struts.action-forward

 *   name="dispatch_0"

 *   path="/dispatch_0.jsp"

 *   redirect="false"

 *

 * @struts.action-forward

 *   name="dispatch_1"

 *   path="/dispatch_1.jsp"

 *   redirect="false"

 *

 */

public class DispatchAction extends org.apache.struts.action.Action {

   

    private String dispatchValue = "0";

   

   

    public DispatchAction() {

    }

   

    public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {

        DispatchValueBean dispatchBean = (DispatchValueBean)form;

        String value = dispatchBean.getDispatchValue();

        if("0".equals(value))

        {

            return mapping.findForward("dispatch_0");

        }

        else

        {

            return mapping.findForward("dispatch_1");

        }

    }

    public String getDispatchValue()

    {

        return dispatchValue;

    }

    public void setDispatchValue(String dispatchValue)

    { <

上一个:连连看的代码(基本算法)加了部分注释
下一个:Struts 学习笔记2 -ActionServlet深入探讨

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,