<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 312, 文章 - 14, 評(píng)論 - 1393, 引用 - 0
    數(shù)據(jù)加載中……

    Struts1.x系列教程(19):LookupDispatchAction類處理一個(gè)form多個(gè)submit

    本文為原創(chuàng),如需轉(zhuǎn)載,請(qǐng)注明作者和出處,謝謝!

    上一篇:Struts1.x系列教程(18):使用DispatchAction類調(diào)用多個(gè)Action方法  

        有時(shí)在HTML form中需要提供多個(gè)提交按鈕,這時(shí)LookupDispatchAction類就派上用場(chǎng)了。LookupDispatchAction是DispatchAction的子類,用于處理客戶端代碼中有一個(gè)Form含有多個(gè)提交按鈕的情況。為了使用LookupDispatchAction,首先來(lái)編寫客戶端代碼,代碼如下:

    <html:form action="myaction">
         
       
    <html:submit property="action">
           
    <bean:message key="submit.print" />
       
    </html:submit>
       
    <html:submit property="action">
           
    <bean:message key="submit.save" />
       
    </html:submit>
    </html:form>

    其中submit.printsubmit.save是屬性文件中的keyaction實(shí)際上是提交按鈕的name屬性值。在提交時(shí),會(huì)將property<bean:message key="..." />作為請(qǐng)求參數(shù)和參數(shù)值傳給Struts動(dòng)作。如save按鈕被單擊時(shí),請(qǐng)求URLhttp://localhost:8080/.../myaction.do?action=save。其中savesubmit.save在屬性文件中對(duì)應(yīng)的屬性值,也就是說(shuō)submit.save = save

        接下來(lái)我們編寫一個(gè)LookupDispatchAction的子類,代碼如下:

    package action;
    import org.apache.struts.actions.LookupDispatchAction;
     
      
    public class MyLookupDispatchAction extends LookupDispatchAction
      {
          
    //  為了方便描述,在這里未使用屬性文件,只是直接將key和value的映射添加到Map對(duì)象中
          
    //  讀者可以在getKeyMethodMap方法中從屬性文件中讀取相應(yīng)的key-value對(duì)
          
    //  來(lái)添加到Map對(duì)象中
          protected Map getKeyMethodMap()
          {
              Map m 
    = new HashMap();
              m.put(
    "submit.print""print");
              m.put(
    "submit.save""save");
              
    return m;
          }
          
    public ActionForward print (ActionMapping mapping, ActionForm form,
                  HttpServletRequest request, HttpServletResponse response)
          {
              
    // 處理print代碼
          } 
          
    public ActionForward save(ActionMapping mapping, ActionForm form,
                  HttpServletRequest request, HttpServletResponse response)
          {
              
    // 處理save代碼
          } 
      }

    在編寫LookupDispatchAction的子類時(shí)要注意必須實(shí)現(xiàn)getKeyMethodMap方法,在這個(gè)方法中需要進(jìn)行keyAction方法的映射。下面的代碼用來(lái)配置MyLookupDispatchAction

    <action path="/moresubmit" type="action.MyLookupDispatchAction" parameter="action" />

        其中parameter屬性指定了請(qǐng)求URL中由提交按鈕生成的請(qǐng)求參數(shù)名。

    下一篇:
    Struts1.x系列教程(20):使用EventDispatchAction類處理一個(gè)form多個(gè)submit





    Android開發(fā)完全講義(第2版)(本書版權(quán)已輸出到臺(tái)灣)

    http://product.dangdang.com/product.aspx?product_id=22741502



    Android高薪之路:Android程序員面試寶典 http://book.360buy.com/10970314.html


    新浪微博:http://t.sina.com.cn/androidguy   昵稱:李寧_Lining

    posted on 2009-02-23 21:34 銀河使者 閱讀(2806) 評(píng)論(0)  編輯  收藏 所屬分類: javaweb 原創(chuàng)struts1.x

    主站蜘蛛池模板: 亚洲v国产v天堂a无码久久| 一级全免费视频播放| 四虎影视在线影院在线观看免费视频| 亚洲欧洲日产韩国在线| 国产一区二区三区免费看| 久久99精品国产免费观看| 国产啪精品视频网站免费尤物| 国产精品99爱免费视频| 精品熟女少妇aⅴ免费久久| 久久嫩草影院免费看夜色| 精品一区二区三区免费观看 | 狠狠亚洲狠狠欧洲2019| 三年片在线观看免费观看大全动漫| 国产一级婬片A视频免费观看| 久久精品免费大片国产大片| 中文字幕在线免费看| 久久国产乱子精品免费女| 国产精品亚洲片在线花蝴蝶| 老司机免费午夜精品视频| 亚洲av午夜精品无码专区| 日韩亚洲不卡在线视频中文字幕在线观看| 亚洲精品V欧洲精品V日韩精品| 亚洲人成无码网站| 久久精品国产亚洲av四虎| 亚洲精品成人图区| 亚洲中文字幕无码爆乳AV| 免费看一级做a爰片久久| 免费一区二区三区四区五区| 免费看a级黄色片| av无码国产在线看免费网站| 最近最新中文字幕完整版免费高清| 成人au免费视频影院| 亚洲精品视频在线看| 亚洲AV人无码综合在线观看| 亚洲熟妇无码八AV在线播放| 亚洲日本一区二区三区| 亚洲精品V欧洲精品V日韩精品| 亚洲成人黄色在线观看| 亚洲AV无码片一区二区三区| 中国一级特黄的片子免费| 成年人网站免费视频|