yxhxj2006

          常用鏈接

          統計

          最新評論

          JSTL標簽 參考手冊

          前言

          =========================================================================

          JSTL標簽庫,是日常開發經常使用的,也是眾多標簽中性能最好的。把常用的內容,放在這里備份一份,隨用隨查。盡量做到不用查,就可以隨手就可以寫出來。這算是Java程序員的基本功吧,一定要扎實。

           

          JSTL全名為JavaServer Pages Standard Tag Library,目前最新的版本為1.1版。JSTL是由JCP(Java Community Process)所制定的標準規范,它主要提供給Java Web開發人員一個標準通用的標簽函數庫。

          Web程序員能夠利用JSTL和EL來開發Web程序,取代傳統直接在頁面上嵌入Java程序(Scripting)的做法,以提高程序的閱讀性、維護性和方便性。

          JSTL 1.1必須在支持Servlet 2.4且JSP 2.0以上版本的Container才可使用

           

           

          <%@ taglib %>引入標簽庫

          =========================================================================

          1、以classPath中,加入jar包:  standard-1.1.2.jar ,  jstl-1.1.2.jar

           

          2、在相目\WEB-INF\tld\文件夾中放入常用的tld文件:c.tld,fmt.tld

           

          3、在jsp文件的頂部加入以下內容:

          Java代碼  收藏代碼
          1. <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>   
          2. <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>  
          3. <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>  

           

           

          <c:> 核心標簽庫 

          ==========================================================================

          JSTL 核心標簽庫(C標簽)標簽共有13個,功能上分為4類:
          1.表達式控制標簽:out、set、remove、catch
          2.流程控制標簽:if、choose、when、otherwise
          3.循環標簽:forEach、forTokens
          4.URL操作標簽:import、url、redirect

           

          <c:forEach> 標簽

          -------------------------------------------------------------------

          為循環控制,它可以將集合(Collection)中的成員循序瀏覽一遍。

           

           <c:forEach> 標簽的語法 說明 

          語法1:迭代一集合對象之所有成員

          Html代碼  收藏代碼
          1. <c:forEach [var="varName"items="collection" [varStatus="varStatusName"] [begin="begin"] [end="end"] [step="step"]>  
          2. 本體內容  
          3. </c:forEach>  

          語法2:迭代指定的次數

          Html代碼  收藏代碼
          1. <c:forEach [var="varName"] [varStatus="varStatusName"begin="begin" end="end" [step="step"]>  
          2. 本體內容  
          3. </c:forEach>  

           

          <c:forEach> 標簽的 屬性說明 

           

           

          <c:forEach> 標簽的 屬性 : varStatus屬性: 它的提供另外四個屬性:index,count,fist和last,它們個自的意義如下:

          Java代碼  收藏代碼
          1. 屬性                   類型                                  意義  
          2. index                  number                    現在指到成員的索引  
          3. count                  number                    總共指到成員的總和  
          4. first                  boolean                   現在指到成員是否為第一個  
          5. last                   boolean                   現在指到成員是否為最后一個   

           

           

           <c:forEach> 遍歷 List列表:

           對于一個基本類型的數組,當前元素將作為相應包裝類(Integer、Float等等)的一個實例提供。

          Html代碼  收藏代碼
          1. <c:forEach items="${domainList }" var="item">  
          2. <tr>  
          3.   <td align="center" valign="middle">${item["domain"]==null?"&nbsp;":item["domain"]}</td>  
          4.   <td align="center" valign="middle"><fmt:formatDate value="${item['bind_date']}" pattern="yyyy-MM-dd HH:mm:ss"/></td>  
          5.   <td align="center" valign="middle">  
          6.     <c:if test="${item['domain']!=null}">  
          7.     <a href="javascript:;" id="${item['domain']}" class="del">&nbsp;</a>  
          8.     </c:if>  
          9.     </td>  
          10. </tr>    
          11. </c:forEach>  

           

           <c:forEach> 遍歷Map:

           對于一個java.util.Map,當前元素則作為一個java.util.Map.Entry提供。

          Html代碼  收藏代碼
          1. <c:if test="${!empty permissionMap}">    
          2. <c:forEach items="${permissionMap}" var="item">  
          3. <tr>  
          4.     <td>${item.value.id}</td>  
          5.     <td>${item.value.urlOnClass}</td>  
          6.     <td>${item.value.urlOnMethod}</td>  
          7. </tr>  
          8. </c:forEach>  
          9. </c:if>    

           

          <c:forTokens> 標簽

          -------------------------------------------------------------------

          用來瀏覽一字符串中所有的成員,其成員是由定義符號(delimiters)所分隔的。

           

           <c:forTokens> 標簽的語法 說明 

          Html代碼  收藏代碼
          1. <c:forTokens items="stringOfTokens" delims="delimiters" [var="varName"]  
          2. [varStatus="varStatusName"] [begin="begin"] [end="end"] [step="step"]>  
          3. 本體內容  
          4. </c:forTokens>  

           

          <c:forTokens> 標簽的 屬性說明 

           

           

          <c:out> 標簽

          -------------------------------------------------------------------

          主要用來顯示數據的內容

           

           <c:out> 標簽的語法 說明 

          語法1:沒有本體(body)內容

          Html代碼  收藏代碼
          1. <c:out value="value" [escapeXml="{true|false}"] [default="defaultValue"/>  

           

          語法2:有本體內容

          Html代碼  收藏代碼
          1. <c:out value="value" [escapeXml="{true|false}"]>  
          2. default value  
          3. </c:out>  

          <c:forEach> 標簽的 屬性說明  略

           

          一般來說,<c:out>默認會將<、>、’、” 和 & 轉換為 &lt;、&gt;、'、" 和&amp;。假若不想轉換時,只需要設定<c:out>的escapeXml屬性為fasle就可以了。

           

           

          <c:set> 標簽

          -------------------------------------------------------------------

          主要用來將變量儲存至JSP范圍中或是JavaBean的屬性中。

           

           <c:set> 標簽的語法 說明 

          語法1:將value的值儲存至范圍為scope的 varName 變量之中

          Html代碼  收藏代碼
          1. <c:set value="value" var="varName" [scope="{ page|request|session|application }"]/>  

           

          語法2:將本體內容的數據儲存至范圍為scope的 varName 變量之中

          Html代碼  收藏代碼
          1. <c:set var="varName" [scope="{ page|request|session|application }"]>  
          2. … 本體內容  
          3. </c:set>  

           

          語法3:將 value的值儲存至 target 對象的屬性中

          Html代碼  收藏代碼
          1. <c:set value="value" target="target" property="propertyName" />  

           

          語法4:將本體內容的數據儲存至target 對象的屬性中

          Html代碼  收藏代碼
          1. <c:set target="target" property="propertyName">  
          2. … 本體內容  
          3. </c:set>  

           

          <c:set> 標簽的 屬性說明 

           

           

          <c:remove> 標簽

          -------------------------------------------------------------------

          主要用來移除變量。

           

           <c:remove> 標簽的語法 說明 

          Html代碼  收藏代碼
          1. <c:remove var="varName" [scope="{ age|request|session|application }"/>  

           

          <c:catch> 標簽

          -------------------------------------------------------------------

          主要用來處理產生錯誤的異常狀況,并且將錯誤信息儲存起來。

           

           <c:catch> 標簽的語法 說明 

          Html代碼  收藏代碼
          1. <c:catch [var="varName">  
          2. … 欲抓取錯誤的部分  
          3. </c:catch>  

           

           

          <c:if> 標簽

          -------------------------------------------------------------------

          的用途就和我們一般在程序中用的if一樣。

           

           <c:if> 標簽的語法 說明 

          語法1:沒有本體內容(body)

          Html代碼  收藏代碼
          1. <c:if test="testCondition" var="varName" [scope="{page|request|session|application}"]/>  

           

          語法2:有本體內容

          Html代碼  收藏代碼
          1. <c:if test="testCondition" [var="varName"] [scope="{page|request|session|application}"]>  
          2. 本體內容  
          3. </c:if>  

          示例:

           

          Html代碼  收藏代碼
          1. <c:if test="${not empty item.publish_time}">  
          2. 內容  
          3. </c:if>  
          4.   
          5. <c:if test="${item['domain']!=null}">  
          6. 內容  
          7. </c:if>  
          8.   
          9. <c:if test="${!empty permissionMap}">   
          10. 內容  
          11. </c:if>  

           

           

          c:choose> <c:when> <c:otherwise>   標簽

          -------------------------------------------------------------------

           <c:choose when otherwise> 標簽的語法 說明 

          Html代碼  收藏代碼
          1. <c:set var="score">85</c:set>  
          2. <c:choose>  
          3. <c:when test="${score>=90}">  
          4. 你的成績為優秀!  
          5. </c:when>  
          6. <c:when test="${score>=70&&score<90}">  
          7. 您的成績為良好!  
          8. </c:when>  
          9. <c:when test="${score>60&&score<70}">  
          10. 您的成績為及格  
          11. </c:when>  
          12. <c:otherwise>  
          13. 對不起,您沒有通過考試!  
          14. </c:otherwise>  
          15. </c:choose>  

          posted on 2014-01-15 00:51 奮斗成就男人 閱讀(281) 評論(0)  編輯  收藏


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


          網站導航:
           
          主站蜘蛛池模板: 西贡区| 沭阳县| 高唐县| 清镇市| 阿城市| 武清区| 武功县| 海盐县| 扎囊县| 右玉县| 革吉县| 香港| 彭州市| 沈阳市| 泗水县| 蒲江县| 鹤山市| 化州市| 将乐县| 郧西县| 乐都县| 佛学| 广西| 万盛区| 平顶山市| 潞西市| 清新县| 象山县| 深州市| 麻江县| 东明县| 灵石县| 肥西县| 巴楚县| 原阳县| 澳门| 临安市| 南木林县| 平果县| 新闻| 东平县|