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

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

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

    龍行天下

      政 博
    隨筆 - 23, 文章 - 0, 評論 - 12, 引用 - 0
    數(shù)據(jù)加載中……

    struts在URI后面?zhèn)鲄?shù)的問題

    在struts標(biāo)簽<html:link>的page屬性指定的URI后面?zhèn)鬟f參數(shù)可以有幾種方式:
    1.若明確參數(shù)名和參數(shù)值則直接在URI后輸出,
    如:<html:link page="/test.do?action=add">add</html:link>

    2.對于參數(shù)值不確定的,paramName和paramProperty來輸出,用paramId屬性指定參數(shù)名。
    對于paramName指定的對象應(yīng)該存在于page、request、session、application其中之一。一般來說,是從Action類傳過來的,作為request的屬性之一(requst.setAttribute("name",object))。
    如果paramName指定的對象是action的ActionForm,則無需使用request.setAttribute方法。
    例:<html:link page="/test.do" paramId="userid" paramName="uid">uname</html:link>
    若參數(shù)值是一個bean對象的屬性值(比如ActionForm,或者集合中存放的對象)則:
    <html:link page="/test.do" paramId="userid" paramName="user" paramProperty="uid">uname</html:link>

    3.若兩個參數(shù),一個確定一個不確定,則是以上兩種方法的結(jié)合,即:
    <html:link page="/test.do?action=modify" paramId="userid" paramName="uid">modify</html:link>

    4.對于多個參數(shù)的問題,可以使用一個HashMap集合對象來存放所有的參數(shù)名及對應(yīng)的參數(shù)值的方式,paramName屬性值指定為該HashMap集合對象即可。
    舉例:
    <%
    //代碼理想的位置應(yīng)該是在action中
    //可以在jsp頁面測試
    ? java.util.HashMap pms = new java.util.HashMap();
    ? pms.put("code", "001002");
    ? pms.put("name", "tester");
    ? pms.put("alias", new String[]{"matin","jack"});
    ? request.setAttribute("params", pms);
    %>
    <html:link action="/test.do" name="params" >test</html:link>
    編譯后的結(jié)果:<a href="/test.do?code=001002&name=tester&alias=matin&alias=jack">test</a>
    這種方式雖然可以解決傳多參數(shù)的問題,但是實(shí)現(xiàn)起來也比較麻煩,特別是對記錄集中的數(shù)據(jù)逐條列出的時候

    5.針對有的網(wǎng)友在<html:link>標(biāo)簽中嵌入使用jsp腳本(scriptlet)的問題,
    例如:
    <html:link page="/test.do?code=<%=varible%>">add</html:link>,這種寫法是錯誤的,是無法編譯的。
    有的網(wǎng)友認(rèn)為在struts標(biāo)簽內(nèi)是不允許使用jsp腳本的,這種說法也不準(zhǔn)確。如果前面的寫法改成:
    <html:link page="<%="/test.do?code="+varible%>">add</html:link>,就可以被執(zhí)行,但是要注意URL相對路徑的問題。

    雖然在struts標(biāo)簽中嵌入jsp腳本不是真正意義上的struts應(yīng)用,但是有時在委曲求全的情況下也只能如此了,除非使用自定義標(biāo)簽。比如在form表單中可能需要根據(jù)具體數(shù)據(jù)讓某個字段是只讀的,就可以用嵌入jsp腳本來實(shí)現(xiàn):
    <%
    boolean rdonly=false;
    if(2==2) rdonly=true;
    %>
    <html:text property="userid" readonly="<%=rdonly%>" />


    6.另外一種比較變態(tài)的方法,既不是真正意義上的struts,也不符合xml規(guī)范。那就是在<a>標(biāo)簽中用<bean:write>標(biāo)簽輸出參數(shù)值。
    如:<a href="test.do?uid=<bean:write name="user" property="userid"/>&name=<bean:write name="user" property="username"/>">test</a>

    posted on 2006-05-03 20:02 feingto 閱讀(886) 評論(0)  編輯  收藏 所屬分類: Java Web

    主站蜘蛛池模板: 亚洲欧洲自拍拍偷精品 美利坚 | 在线观看亚洲AV每日更新无码| 亚洲中文字幕成人在线| 成年网在线观看免费观看网址| 亚洲人成人网站在线观看| 国产精品视频白浆免费视频| 最近中文字幕2019高清免费| 涩涩色中文综合亚洲| 在线精品一卡乱码免费| 亚洲aⅴ天堂av天堂无码麻豆| 久久亚洲中文字幕精品一区四| 亚洲视频在线观看免费| 亚洲AV无码一区二区三区久久精品 | 亚洲男人天堂2017| 四虎影视大全免费入口| 两个人看www免费视频| 日韩一卡2卡3卡4卡新区亚洲| 1000部拍拍拍18勿入免费视频下载 | 亚洲成年人电影在线观看| 日本一道一区二区免费看| 色噜噜的亚洲男人的天堂| 亚洲av无码精品网站| 四虎影视永久免费观看网址| 久久综合给合久久国产免费| 免费大片av手机看片高清| 国产成人综合亚洲AV第一页 | 亚洲视频在线免费观看| 日产久久强奸免费的看| 久久狠狠爱亚洲综合影院| 成人免费无码大片A毛片抽搐 | 最近中文字幕完整版免费高清| 男女啪啪免费体验区| 亚洲av午夜精品无码专区| 精品国产亚洲一区二区三区| 日韩免费无砖专区2020狼| **俄罗斯毛片免费| 一个人免费视频观看在线www| 香港特级三A毛片免费观看| 亚洲中文字幕无码爆乳AV| 国产禁女女网站免费看| 18禁止观看免费私人影院|