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

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

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

    posts - 70,comments - 408,trackbacks - 0

    Struts的Logic標簽可以根據特定的邏輯條件來判斷網頁的內容,或者循環遍歷集合元素,它和HTML,Bean標簽是Struts應用種最常用的三個標簽.它的功能主要是比較運算,進行字符串的匹配,判斷指定的內容是否存在,循環遍歷集合,進行請求轉發和重定向,下面具體的說明標簽的用途:

    <logic:equal>變量等于指定的常量

    <logic:notEqual>變量不等于指定的常量

    <logic:lessThan>變量小于指定的常量

    <logic:lessEqual>變量小于或者等于指定的常量

    <logic:geraterThan>變量大于指定的常量

    <logic:geraterEqual>變量大于或等于指定的常量

    以上這些標簽都很類似,有共同的屬性,cookie屬性指定cookie屬性的值,然后用value設置的常量進行比較.header屬性設置header請求頭的值,也是通過value屬性設置的值進行比較.parameter屬性設置一個請求參數,然后也是通過value屬性設置的值進行比較.name屬性設置一個變量,然后用value比較.如果同時設置了name和property屬性,此時name屬性指定已經存在的JavaBean,property屬性指定Bean的屬性.這個標簽感覺十分簡單,用法也十分單一,下面研究一下進行字符串匹配的標簽和判斷特定內容的標簽.

    <logic:match>標簽是判斷變量種是否包含常量字符串的,<logic:netMatch>也判斷是否不包含字符串的,用name屬性定義一個字符串變量,然后用value屬性的值去判斷變量是否包含這個字符串或者是不包含這個字符串,判斷成功返回true.

    <logic:empty>和<logic:netEmpty>標簽可以判斷指定的變量是否為空的字符串,可以通過name屬性來判斷一個字符串是否為null.例如是請求參數的字符串.

    <logic:present>和<logic:notPresent>標簽可以判斷指定的對象是否為空,這個標簽的屬性很多.cookie屬性判斷Cookie是否存在.Header屬性判斷HTPP請求頭是否存在.role屬性是判斷當前的權限的用戶是否是指定的安全角色.user屬性是判斷當前通過權限驗證的用戶是否擁有指定的用戶名.parameter屬性是判斷請求的參數是否存在.name屬性是用來判斷指定的Bean是否存在.同時設置name和property屬性就是判斷Bean種的具體屬性是否存在了.

    <logic:messagesPresent>和<logic:messagesNotPresent>標簽是用來判斷是否在request范圍內的特定的ActionMessages或者是子類ActionErrors對象.name屬性是用來檢索ActionMessages對象的key,property指定從ActionMessages集合對象中檢索某條消息key也就是具體的ActionMessage對象.

    進行循環遍歷Logic標簽是Logic標簽庫中最復雜的標簽,也是用途最廣泛的標簽,它能夠在一個循環中遍歷數組,Collection,Enumeration,Irerator或者Map中的所有元素

    1)              遍歷集合的標簽<logic:iterate>的name屬性指定需要進行遍歷的集合對象,它每次從集合中檢索出一個元素,然后存放在page范圍內,并以id屬性指定這個字符串來命名這個元素,最好是在里面嵌套一個<bean:write>標簽,把剛剛遍歷的第一個id指定的字符串輸出,然后在循環在輸出.length屬性需要遍歷的元素的數目,如果沒有設置length屬性,就遍歷集合中的所有元素.offset屬性指定開始遍歷的其實位置,默認值是0.indexId屬性定義一個代表當前被遍歷元素的系列號,這個變量存放在page范圍內,可以被<bean:write>標簽訪問輸出輸出的是int的數字.例如1.2.3.4等.可以用戶輸出輸出的元素的系列號.

    2)              遍歷Map是通過<logic:iterate>標簽,name屬性指定一個HashMap,存放在request范圍,然后賦給id指定的變量,indexId可以指定索引編號,然后通過<bean:write>標簽輸出出來.在HashMap的每一個元素都是一個集合對象,所以可以嵌套使用.就是說<logic:inerate>這個標簽既可以把Collection的元素弄出來負給一個變量也可以弄Map的.所以說它的功能強大.還有一個collection屬性可以設置一個表達式,這個表達式返回的結果可以作為,<logic:inerate>標簽輸出的集合或者Map.這個屬性類似name屬性.

    最后研究一下進行請求轉發和重定向的Logic標簽,<logic:forward>標簽用于請求轉發,它的name屬性指定轉發的目標,與Struts配置文件中的<global-forwards>元素和的子元素<forward>元素匹配.簡單的說就是<logic:forward>標簽的name屬性定義的值,要去找到<golbal-forwards>子元素<forward>元素的匹配的name屬性,然后通過path指定的路徑進行轉發.重定向用<logic:redierct>標簽它的forward,href和page屬性指定重定向的目標,這幾個屬性和<html:link>標簽的屬性用法十分相似.

    關于標簽的部分我就說到這里,因為我個人覺得在Struts中最常用的無非也就是這三個標簽庫了.我以前還寫過一個Struts的分頁應用,過些天繼續發布到我的Blog上. (網友們的支持,是我繼續寫技術文章的動力!)

    posted on 2005-11-01 21:31 我心依舊 閱讀(31050) 評論(26)  編輯  收藏

    FeedBack:
    # re: Struts標簽-Logic(原創)
    2006-01-13 21:50 | tanxiaoming
    您的文章寫道真不錯哦  回復  更多評論
      
    # re: Struts標簽-Logic(原創)
    2006-02-06 16:34 | li
    沒有具體的實例,不容易理解!  回復  更多評論
      
    # re: Struts標簽-Logic(原創)
    2006-02-24 09:48 | 路過
    <logic:geraterThan>變量大于指定的常量

    <logic:geraterEqual>變量大于或等于指定的常量

    應該是greaterThan,greaterEqual吧  回復  更多評論
      
    # re: Struts標簽-Logic(原創)
    2006-03-01 21:37 | tomcat
    <logic:iterate id="list" name="actionForm" property="infoList" indexId="index">
    <logic:equal name="index" vlaue="0">
    <INPUT type="checkbox" name="check" value="chk" checked>
    </logic:equal>
    <logic:notEqual name="index" vlaue="0">
    <INPUT type="checkbox" name="check" value="chk">
    </logic:notEqual >
    <bean:write name="list" property="name" />
    <bean:write name="list" property="address" >
    </logic:iterate>  回復  更多評論
      
    # re: Struts標簽-Logic(原創)
    2006-03-01 21:39 | tomcat
    <bean:write name="list" property="address" />
    呵呵
      回復  更多評論
      
    # re: Struts標簽-Logic(原創)
    2006-03-07 17:41 | 7737
    看了你的文章,提個問題,在進行<logic:equal>進行判斷時,如何能解決下面的問題?
    int a=0;
    int b=0;
    if(a==b)
    <logic:equal name="aa" property="aaa" value="1">
    只能對常量進行比較,那么在使用struts標簽時,怎樣解決變量與變量之間的比較?  回復  更多評論
      
    # re: Struts標簽-Logic(原創)
    2006-03-27 11:16 | 我的生活,我做主
    看了你的文章,覺的寫的不錯。想提個問題。
    我想判斷或的關系,改怎么用struts的標簽寫。
      回復  更多評論
      
    # re: Struts標簽-Logic(原創)
    2006-04-05 21:04 | gaujg
    請問怎么能實現不同的行顯示不同的顏色或者引用不同的css?  回復  更多評論
      
    # re: Struts標簽-Logic(原創)
    2006-04-13 09:42 | zhyiwww
    總結的不錯,好好學習一下  回復  更多評論
      
    # re: Struts標簽-Logic(原創)
    2006-05-10 19:43 | ttt
    怎樣用struts標簽實現:把從后臺傳來的一個數據list在頁面上遍力輸出啊  回復  更多評論
      
    # re: Struts標簽-Logic(原創)
    2006-08-23 11:09 | gg
    @ttt
    <logic:iterate id="element" name="userList">
    <tr>
    <td align="center"><bean:write name="element"/> </td>
    </tr>
    </logic:iterate>  回復  更多評論
      
    # re: Struts標簽-Logic(原創)
    2006-10-24 17:57 | ray[匿名]
    沒有實例比較難理解!  回復  更多評論
      
    # re: Struts標簽-Logic(原創)
    2006-10-26 23:34 | alex[匿名]
    我對logic的這些標簽的理解就是 它們是一個容器 你可以入東西到里面去 然后他們自動來判斷或者遍歷 你根據會產生結果 來顯示自己所要的東西~~   回復  更多評論
      
    # re: Struts標簽-Logic(原創)
    2006-12-15 16:29 | dsfdsf
    能不能舉個例子不抄書呢  回復  更多評論
      
    # re: Struts標簽-Logic(原創)
    2007-04-23 17:08 | loy
    看過了,寫的還可以  回復  更多評論
      
    # re: Struts標簽-Logic(原創)
    2007-08-26 12:31 | Zealot
    @7737
    用el表達式  回復  更多評論
      
    # re: Struts標簽-Logic(原創)
    2007-09-17 15:50 | 同聲傳譯
    同傳租賃 同聲傳譯翻譯公司 同聲傳譯設備租賃 同聲傳譯 同傳租賃 同聲傳譯 同聲傳譯設備租賃 同傳租賃
      回復  更多評論
      
    # re: Struts標簽-Logic(原創)
    2007-10-19 23:30 | nn
    有些標簽都不知道怎么用。  回復  更多評論
      
    # re: Struts標簽-Logic(原創)
    2008-01-07 13:43 | java綜合網
    java綜合網
    不錯,不錯~~~  回復  更多評論
      
    # re: Struts標簽-Logic(原創)
    2008-01-16 12:06 | rookie
    寫得不錯,學習學習,辛苦了  回復  更多評論
      
    # re: Struts標簽-Logic(原創)
    2008-01-21 14:38 | chenle
    有個list,我想讓list里的值在頁面上每五個換行顯示,怎么寫邏輯條件?  回復  更多評論
      
    # re: Struts標簽-Logic(原創)
    2008-03-02 16:48 | shan
    <logic:iterate>標簽有個indexId屬性,我們可以通過indexId的值來判斷,如果”(indexId+1)%5==0“,則輸出<br>直接換行即可
    例:
    <logic:iterate id="element" property="userList" name="userForm" indexId="index">
    <c:if test="${(index+1)%5 == 0}">
    <br>
    </c:if>
    </logic:iterate>

      回復  更多評論
      
    # re: Struts標簽-Logic(原創)
    2008-03-21 19:56 | 一笑而過
    看了你幾篇文章,錯別字太多了,雖然你是用拼音輸入,勉強猜得到中文漢字,但是這只也說明你專業風格上不嚴謹,希望你還是改正這個不好的習慣吧,你的文章還是可以的。
    建議你使用搜狗拼音輸入法吧,連起來可能錯別字會少一些的。  回復  更多評論
      
    # re: Struts標簽-Logic(原創)[未登錄]
    2008-06-06 15:15 | a
    請問:# re: Struts標簽-Logic(原創)2008-03-02 16:48 | shan

    <logic:iterate>標簽有個indexId屬性,我們可以通過indexId的值來判斷,如果”(indexId+1)%5==0“,則輸出<br>直接換行即可
    例:
    <logic:iterate id="element" property="userList" name="userForm" indexId="index">
    <c:if test="${(index+1)%5 == 0}">
    <br>
    </c:if>
    </logic:iterate>
    種的<c:if>是怎么得來的?  回復  更多評論
      
    # re: Struts標簽-Logic(原創)
    2008-10-14 13:52 | laji
    真佩服博主的 文筆,咋讀都不通順哈  回復  更多評論
      
    # re: Struts標簽-Logic(原創)[未登錄]
    2008-11-10 19:58 | 王鵬
    需要SSH的分頁自定義標簽 是否有難度。。  回復  更多評論
      

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


    網站導航:
     
    主站蜘蛛池模板: 一级毛片人与动免费观看| 亚洲偷自拍另类图片二区| 亚洲AV色无码乱码在线观看| 91免费播放人人爽人人快乐| 亚洲一区二区三区高清| 国内精品久久久久影院免费| 亚洲美女又黄又爽在线观看| 中国在线观看免费的www| 国产亚洲综合久久系列| 日本视频在线观看永久免费| 久久久久亚洲精品成人网小说 | 韩国二级毛片免费播放| 国产91在线|亚洲| 在线jlzzjlzz免费播放| 国产亚洲福利精品一区二区| 亚洲成?v人片天堂网无码| 国产精品福利片免费看| 国产av天堂亚洲国产av天堂| 日本免费一区二区久久人人澡| 久久精品a亚洲国产v高清不卡 | 免费黄色网址入口| 亚洲第一街区偷拍街拍| 亚洲国产精品尤物yw在线| 韩国免费a级作爱片无码| 亚洲三级电影网址| 成人午夜视频免费| fc2免费人成为视频| 麻豆亚洲AV永久无码精品久久| 一色屋成人免费精品网站 | 国产免费久久久久久无码| 亚洲成a人片77777老司机| 免费A级毛片无码免费视| 成人特级毛片69免费观看| 亚洲精品成人无码中文毛片不卡| 2015日韩永久免费视频播放| 亚洲欧洲AV无码专区| 亚洲综合精品香蕉久久网| 久久久久av无码免费网| 国产亚洲福利精品一区二区| 亚洲精选在线观看| 国产大片51精品免费观看|