在流行的MVC的開模式中,JSP僅負責數據的渲染工作,JSP中的java代碼有點“殺雞用牛刀”,並且使用代碼過於混亂,JSTL+EL的組合有效的解決了這個難題,本文從實戰的角度出發,闡明其作用。
0、EL:在JSP中,將對象從上下文中取出,並進行輸出的簡化語言。格式:${[request/session/applicationScope].變量名[index].成員變量},對於集合類型[index]有效。
1、JSTL(JSPStandardTagLibrary)是在JSP中使用,旨在用標籤的手段完成頁面渲染工作的一套標準標籤,即以做網頁的方式完成編碼工作。
2、使用JSTL的條件:
1)項目中必須引入jstl-1.x.jar(javaEE5規範已經默認支持)
2)在jsp中必須加入指令(<%@tagliburi="http://java.sun.com/jsp/jstl/core"prefix="c"%>
<%@tagliburi="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>等)
3、JSTL雖然有很多功能,但其主要的目的是"渲染傳入到三大上下文對象的java對象",所以大家在使用時請加以取捨。
4、核心標籤:
1)條件判斷:<c:iftest="EL條件">html標籤、JSTL標籤、EL</c:if>其中的“條件”可以放入任何可以返回真假值的EL(注意沒有沒有else標籤,這也反映了JSTL的定位---不處理複雜的業務)
2)循環遍歷:
<c:forEachvar="變量"items="EL集合">
html標籤
jstl標籤
EL
</c:forEach>
其中var表示定義一個在循環內部使用的局部變量名,items表示從上下文對象中取出的集合對象。
5、格式化標籤:
1)格式化日期:<fmt:formatDatevalue="EL日期類型對象"pattern="yyyy-MM-ddhh:mm:ss"/>表示格化一個完成的日期時間(可根據情況調整或將“-”進行替換)
2)格式化數字:<fmt:formatNumbervalue="EL數值類型對象"pattern="#,###.##"></fmt:formatNumber>表示數字成爲一個3,423,456.23形式的格式。