明月松间照 清泉石上流


                                        ——— 兵临城下   猫科动物
posts - 70, comments - 137, trackbacks - 0, articles - 23
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

Struts DispatchAction类--笔记 (引用自junmy)

Posted on 2007-01-07 11:17 兵临城下 阅读(264) 评论(0)  编辑  收藏 所属分类: Struts
最近在练习struts的时候,发现如一张表里一些常用的。添加。删除。修改.得到数据.等一些操作在同一个Action 里处理很麻烦,分成几个Action来处理,又显的臃肿。有没有更好的办法在一个类里面处理,而且又容易维护呢?真是叫人郁闷啊。。

    后来在百度搜了一下.....有个org.apache.struts.actions.DispatchAction 类可以实现。继承此类。里面可以定义自己的方法,jsp里面很好调用了。。

如我刚刚写了一个测试的例子。。

建个类继承 DispatchAction 
public class TestAction extends DispatchAction {


    
public ActionForward add(ActionMapping mapping,ActionForm form,
                                    HttpServletRequest request,
                                    HttpServletResponse response)
    
{
        
        //写上你要处理的代码。。。
    }


    
public ActionForward del(ActionMapping mapping,ActionForm form,
                                  HttpServletRequest request,
                                  HttpServletResponse response)
  
{
     
      //写上你要处理的代码。。。
  }

//其他的一些自定义的方法。。

在struts-config.xml 文件里配置这样写。。

  <action-mappings>
    
<action name="TestActionForm" parameter="method" path="/TestAction" scope="request" type="dispatchaction.TestAction" validate="false">
      
<forward name="addforward" path="/add.jsp" />
       
<forward name=del"forward" path="/show.jsp" />
    
</action>
  
</action-mappings>

开始的时候忘记在里面加 parameter="method" 老是没有出来。。搞了半天才看到了。看样子还是要细心一点了。。

前台jsp要调用就简单了。。

<html:form action="/TestAction.do?method=del" method="POST">

在method后面加上在Action 类里面自己定义的方法就可以了。。

只有注册用户登录后才能发表评论。


网站导航: