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

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

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

    隨筆-10  評論-22  文章-1  trackbacks-0

    常用的Struts標簽庫有以下五大類:

    1.HTML Tag:

    用來創(chuàng)建能夠和Struts框架以及其它相應的HTML標簽交互的HTML輸入表單;

    如:<html:form></html:form>,<html:text/>,<html:password/>,<html:radio/>,<html:checkbox/>,<htmlmultibox>

    2.Bean Tag

    該標簽庫包含的標簽可以用來創(chuàng)建bean、訪問bean和訪問bean的屬性。

     如:<bean:write/>:用于將bean的屬性輸送到jsp頁面,<bean:define/>定義一個新的bean

    3.Logic Tag

    該標簽庫包含的標簽可以用來進行邏輯判斷、集合迭代和流程控制。

    如:<logic:iterate/>:用來循環(huán)迭代,<logic:eaual/>:用來進行邏輯判斷

    4.Nested:增強對其他Struts標簽的嵌套使用能力

    該標簽庫建立在前三個標簽庫的基礎(chǔ)上,具有前三個標簽庫的所有功能,只是允許標簽間的嵌套。

    5.Template Tag

    隨著Titles框架包的出現(xiàn),此標記已開始減少使用

    下面介紹幾個最常用的標簽:

    <html:check box/>一般用于一個選項的復選框

    <html:multibox/>一般用于多個選項的復選框

    <bean:write name="user" property="username"/>等同于EL表達示:${user.username}

    <bean:define id="inter" name="user" property="interest" type="java.lang.String"/>定義一個bean

    <bean:message key=" " arg0=" "/> key 定義在資源文件中,args0[1,2]為參數(shù)

    <logic:iterate name="list" id="user"> 等同于JSTL的:<c:foeach item=${list} var="user"/>

    <logic:equal name="user" property="sex" value="0"/>等同于JSTL的:<c:when test=""/>

    <logic:empty />標簽是用來判斷是否為空的。如果為空,該標簽體中嵌入的內(nèi)容就會被處理

    <logic:empty name="listForm" property = "persons">
    <div>集合persons為空!</div>
    </logic:empty>

    1.下面給一個表單的完整代碼:

    <body>
        
    <center>
            
    <html:form action="/user">
            用戶名:
    <html:text property="user.username"></html:text><p/>
            密碼:
    <html:text property="user.pwd"></html:text><p/>
            性別:
    <html:radio property="user.sex" value=""></html:radio>
                
    <html:radio property="user.sex" value=""></html:radio><p/>
            城市:
    <html:select property="user.city">
                
    <html:option value="">請選擇</html:option>
                
    <html:option value="武漢">武漢</html:option>
                
    <html:option value="上海">上海</html:option>
                
    <html:option value="北京">北京</html:option>
            
    </html:select><p/>
            愛好:
    <html:multibox property="interest" value="看書"/>看書
                
    <html:multibox property="interest" value="游戲"/>游戲
                
    <html:multibox property="interest" value="睡覺"/>睡覺<p/>
                
    <html:submit/><html:cancel/>
            
    </html:form>
        
    </center>
        
    </body>

    使用html標簽作為表單輸入,可以方便的使用驗證框架即:<html:errors property="username">

    2.下面給一個顯示數(shù)據(jù)的代碼:

    <table align="center" border="1" width="600">
            
    <caption>用戶注冊信息</caption>
            
    <tr>
                
    <td>用戶名</td>
                
    <td>密碼</td>
                
    <td>性別</td>
                
    <td>城市</td>
                
    <td>愛好</td>
                
    <td colspan="2" align="center">操作</td>
            
    </tr>
            
    <logic:iterate name="list" id="user">
            
    <tr>
                
    <td><bean:write name="user" property="username"/></td>
                
    <td><bean:write name="user" property="pwd"/></td>
                
    <td><bean:write name="user" property="sex"/></td>
                
    <td><bean:write name="user" property="city"/></td>
                
    <td>
                    
    <bean:define id="interest" name="user" property="interest" type="java.lang.String"></bean:define>
                    
    <logic:iterate id="inter" collection="<%=StringUtil.stringChange2(interest)%>">
                        $
    {inter}
                    
    </logic:iterate>
                
    </td>
                
    <td><a href="del.do?userid=${user.userid}">刪除</a></td>
                
    <td><a href="upd.do?userid=${user.userid}">修改</a></td>
            
    </tr>
            
    </logic:iterate>
        
    </table>

    作為顯示數(shù)據(jù),Struts標簽并不比Jstl與EL方便,因此,本人更習慣用后者

    其實Struts標簽的好處,并不是上面這些,而是它可利用ActionForm來填充數(shù)據(jù)

    比如我們在做頁面數(shù)據(jù)修改的時候,會讓當前頁面數(shù)據(jù)顯示到顯示修改頁面,這樣利于客戶端修改

    以前我們這樣做的:根據(jù)id從數(shù)據(jù)庫查出,然后使用html的value屬性填充,現(xiàn)在有了Struts標簽,就不需要那么麻煩了

    直接在Action里填充ActionForm的數(shù)據(jù)就搞定了

    public ActionForward upd(ActionMapping mapping, ActionForm form,
                HttpServletRequest request, HttpServletResponse response) 
    {
            UserForm userForm 
    = (UserForm) form;
            
    int userid = Integer.parseInt(request.getParameter("userid"));
            UserInfo user 
    = biz.findUser(userid);
            String[]interest 
    = StringUtil.stringChange2(user.getInterest());
            
    //將用戶信息填充到ActionForm
            userForm.setUser(user);
            userForm.setInterest(interest);
            
    return mapping.findForward("upd");
        }
    然后在修改頁面顯示,請往下看:
    <html:form action="/doupd">
            用戶名:
    <html:text property="user.username"></html:text><p/>
            密碼:
    <html:text property="user.pwd"></html:text><p/>
            性別:
    <html:radio property="user.sex" value=""></html:radio>
                
    <html:radio property="user.sex" value=""></html:radio><p/>
            城市:
    <html:select property="user.city">
                
    <html:option value="">請選擇</html:option>
                
    <html:option value="武漢">武漢</html:option>
                
    <html:option value="上海">上海</html:option>
                
    <html:option value="北京">北京</html:option>
            
    </html:select><p/>
            愛好:
    <html:multibox property="interest" value="看書"/>看書
                
    <html:multibox property="interest" value="游戲"/>游戲
                
    <html:multibox property="interest" value="睡覺"/>睡覺<p/>
                
    <html:submit value="修改"/>
            
    </html:form>
    怎么樣,簡單方便吧,其實Struts標簽還是有它的好處的。
    posted on 2009-03-14 23:47 獨孤行 閱讀(1602) 評論(1)  編輯  收藏 所屬分類: Struts

    評論:
    # re: Struts核心標簽(原創(chuàng)) 2009-03-15 13:05 | 陽衡鋒
    好像界面層的標簽還是自己封裝比較好,我現(xiàn)在的項目的,我就封裝了幾個標簽。沒有花多少功夫,基本上只要封裝select radio checkbox 就可以了。其他的直接寫html+el反而比較好。  回復  更多評論
      

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導航:
     
    主站蜘蛛池模板: 一道本不卡免费视频| 在线免费观看亚洲| 女人18毛片a级毛片免费视频| 亚洲最新永久在线观看| a国产成人免费视频| 久久精品国产亚洲麻豆| 国产黄在线播放免费观看| 国产精品白浆在线观看免费| 亚洲国产美女精品久久久久∴| 最近国语视频在线观看免费播放| 亚洲欧洲∨国产一区二区三区| 国产色爽免费无码视频| 亚洲丝袜美腿视频| 美女网站免费福利视频| 亚洲精品夜夜夜妓女网| 未满十八18禁止免费无码网站| 四只虎免费永久观看| 亚洲AV成人噜噜无码网站| 日本一区午夜艳熟免费| 亚洲爆乳无码专区| 亚洲免费精彩视频在线观看| 亚洲视频一区在线观看| 黄页网站免费观看| 亚洲AV性色在线观看| 国产精品亚洲二区在线观看| 亚洲精品无码国产片| 国产成人精品免费视频大| 亚洲欧美日韩久久精品| 亚洲国产免费综合| 日韩亚洲产在线观看| 最近中文字幕高清免费中文字幕mv | 久久九九亚洲精品| 97视频免费观看2区| 亚洲精品久久无码| 国产亚洲精品va在线| 野花高清在线观看免费完整版中文| 国产91成人精品亚洲精品| 免费理论片51人人看电影| 亚洲综合精品伊人久久| 国产亚洲精久久久久久无码AV| 国产国产人免费视频成69堂|