JSTL允許JSP程序員使用標簽進行編程而不是Java代碼。為了說明為什麼這個 是可取的,給出一個快速簡單的小例子。我們就舉個非常簡單的例子從1數到10 。我們用常規的基於scriptlet JSP網頁和JSTL兩種方式來制作這個網頁。當這 個數到10的例子是使用scriptlet JSP編制的,JSP網頁會有如下顯示:
< html> < head> < title>Count to 10 in JSP scriptlet< /title> < /head> < body> < % for(int i=1;i< =10;i++) {%> < %=i%>< br/> < % } %> < /body> < /html>
正如你從以上例子中所看到的,使用scriptlet代碼產生的網頁源代碼包括了 HTML標簽和Java語句的混合。有很多原因說明為什麼這種混合式編程風格不是最 佳的。
混合scriptlet和基於標簽的代碼不是最佳選擇的主要原因是可讀性。這種可 讀性是針對人和計算機的。JSTL允許編程者看一個由整個HTML和HTML-like標簽 組成的程序。
JSP scriptlet代碼的可讀性不僅只適用於人類。Scriptlet和HTML代碼的混 合也很難被計算機讀取。尤其是HTML制作工具例如某個Dreamweaver和Microsoft FrontPage。目前,大多數HTML制作工具將JSP scriptlet代碼作為不可編輯的塊 區而分離開。HTML制作工具通常不直接修改JSP scriptlet 代碼。
以下代碼顯示如何使用JSTL編寫從1數到10的這個例子。正如你所看到的,這 個代碼列表更連貫,因為只使用了標簽。是HTML和JSTL標簽混合在一起產生的例 子。
< %@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %> < html> < head> < title>Count to 10 Example (using JSTL)< /title> < /head> < body> < c:forEach var="i" begin="1" end="10" step="1"> < c:out value="${i}" /> < br /> < /c:forEach> < /body> < /html>
當你檢查以前的代碼的時候,你可以看到JSP網頁整個是由標簽組成的。上述 代碼使用了HTML標簽如< head> 和< br>。標簽的使用不僅限於 HTML標簽。這個代碼也使用了JSTL標簽例如< c:forEach> 和 < c:out>。在本文中向你介紹一些JSTL的基礎知識。