JSTL改進JSP來簡化網頁的實現過程(2)

來源:互聯網
上載者:User
JSTL標記庫
至此,我已經解釋了一些基本原理並且涵蓋了EL文法。我要專門討論四種JSTL標記庫。我主要討論核心庫,因為它是你一定要使用的;但是,我也會詳細的討論其餘幾個,以便你能啟動它。
首先,儘管我應該更多地談論JSTL標記庫的兩種風格,我上面提到的每個JSTL標記庫以兩個版本出現:一個支援褂門L的運算式;另一個支援標準JSP運算式。當你引入任何標記庫到一個JSP頁時,你要定義一個首碼,該首碼指定了與庫中標記相對應的命名空間。
四種標準標記庫,和他們的JSTL規範定義的首碼常規,列表如下。記住:你可以定義自己的首碼,但是這絕對沒有什麼好處。
四種標準標記庫
為了使用頁中的核心標記庫( 實際上,你使你的頁對標記庫的命名空間可見),在你的頁首包含下列例子中的指令:
<%@ taglib prefix="c" uri=http://java.sun.com/jstl/core %>
為了使用該標記庫的標記,用你在你的包含語句中設計好的首碼,在你的頁中給每個標記加上首碼:
<c:out value="${anExpression}"/>
核心資料庫
讓我們更詳細的測試核心資料庫,先看看他最通用的功能。
顯示/設定值和異常處理
核心庫的最基本的標記是c:out標記,它在頁中顯示一個EL運算式的值。一個使用c:out的運算式通常是這樣:
We have <c:out value="${applicationScope.product.inventoryCount}"
escapeXml="true" default="0" /> of those items in stock.
上例中,value屬性是我們送到頁輸出的運算式。我也說明了選項escapeXml的屬性和預設屬性。escapeXml的屬性指定了XML字元(<、>、 &、 和 .)是否應該轉化為相應的字元實體代碼(這樣他們可以讓這些字元出現在一個HTML頁中);預設屬性用於EL不能估算出數值或者數值計算出來為空白的情況。
注意:當EL支援完全貫穿整個JSP2.0的時候,你不需要使用c:out動作;你可以僅嵌套JSP運算式直接在頁中。
另一個普遍使用的核心動作是c:set,它在頁中設定一個變數。你可以用兩種方法使用c:set動作,第一種方法設定在var屬性中定義的變數到在value屬性中定義的值上,方法如下:
<c:set var="customerID" value="$param:customerNumber" scope="session" />
上述的選擇項scope屬性指定了我們要在會話期範圍內設定變數customerID;如果範圍沒有制定,範圍預設為頁。
c:set另一個強大的用途就是將c:set標記的體的內容賦給一個指定的變數:
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.