這是JSTL標(biāo)簽所需要的tld文件(c.tld、fmt.tld、fn.tld)下載,JSP的開發(fā)是在HTML代碼中嵌入了大量的Java代碼,但是這樣一來會(huì)使得JSP頁面中充滿了Java程序,修改或維護(hù)起來非常的不方便,定義一個(gè)簡單的標(biāo)簽----空標(biāo)簽要想實(shí)現(xiàn)一個(gè)標(biāo)簽,可以直接繼承javax.servlet.jsp.tagext.TagSupport類,如果要定義的標(biāo)簽內(nèi)沒有標(biāo)簽體,則直接覆寫TagSupport類中的doStartTag()方法即可。
JSTL標(biāo)簽所需要的tld文件(c.tld、fmt.tld、fn.tld)(JSP Standard Tag Library,JSP標(biāo)準(zhǔn)標(biāo)簽庫)是一個(gè)開放源代碼的標(biāo)簽組件,由Apache的Jakarta小組開發(fā),可以直接從http://tomcat.apache.org/taglibs/下載 ,下載來的JSTL.是以jar包的形式存在的,直接將此Jar包保存在WEB-INF/lib目錄之中,之后可以直接通過WINRAR工具打開此JAR包,并且將里面的META-INF文件夾中的幾個(gè)主要標(biāo)簽配置文件:c.tld、fmt.tld、fn.tld、sql.tld、x.tld保存在WEB-INF文件夾之中。
JSTL標(biāo)簽所需要的tld文件,包括 c.tld、fmt.tld、fn.tld 三個(gè) 幾乎所有的JSTL標(biāo)簽下載的zip中都只有一個(gè)c.tld,然后只講解<C:>標(biāo)簽怎么用,其實(shí)<fmt:> <fn:>標(biāo)簽也非常好用和實(shí)用,找了好久才找到fmt.tld這個(gè),現(xiàn)在無私的貢獻(xiàn)出來。 另外,附上jstl-1.2.jar,要把這個(gè)放到項(xiàng)目的lib中,三個(gè)tld文件放到 WEB-INF\tags中 才能運(yùn)行JSTL表達(dá)式哦。
1、c:forTokens
類似于js及java中的split函數(shù),將一個(gè)字符串用某個(gè)字符分割成數(shù)組,然后逐個(gè)處理。items是需要處理的原始字符串,delims是分隔符
<c:forTokens var="item" items="" delims=".">
${item }<br/>
</c:forTokens>
2fmt.tld中比較有用的fmt:parseDate, fmt:formatDate, fmt:parseNumber, fmt:formatNumber,用來格式化時(shí)間與數(shù)字,例子如下:
<fmt:formatDate value="${item.createdTime }" pattern="yyyy-MM-dd HH:mm" />
3、fn.tld,jstl的函數(shù),其中有
fn:contains 判斷一個(gè)字符串是否含有另外一個(gè)字符串,eg <c:if test="${fn:contains(str, searchString)}">;
fn:containsIgnoreCase 同上面的tag,只是不區(qū)分大小寫;
fn:endsWith 判斷一個(gè)字符串是否以某個(gè)字串結(jié)束,eg <c:if test="${fn:endsWith(filename, ".txt")}">
fn:escapeXml 將字符串轉(zhuǎn)換為沒有xml無法識(shí)別字符的字符串,eg ${fn:escapeXml(info)}
fn:indexOf 判斷某個(gè)字符在一個(gè)字符串中的位置,eg ${fn:indexOf(name, "-")}
fn:join 同jsjoin,將數(shù)組用字符拼接,eg ${fn:join(array, ";")}
fn:length 計(jì)算字符串的長度
fn:replace 替換某個(gè)字串, eg ${fn:replace(text, "-", "•")}
fn:split join的反過程,eg ${fn:split(customerNames, ";")}
fn:startsWith 是否以某個(gè)字串開始, eg <c:if test="${fn:startsWith(product.id, "100-")}">
fn:substring 獲取字串,eg ${fn:substring(zip, 6, -1)}
fn:substringAfter 從某個(gè)字串開始取字串,eg ${fn:substringAfter(zip, "-")}
fn:substringBefore 上一條的反過程
fn:toUpperCase 把字符串中的字符全部轉(zhuǎn)為大寫
fn:trim 去掉字符串兩邊的空格,eg ${fn.trim(name)}