Jstl
使用簡介
一、??????????
配置說明
1、?
在應(yīng)用中引入兩個
jar
包:
standard.jar
、
jstl-
2、?
引入
tld
:
c.tld
3、?
在
web.xml
中配置標簽
? <taglib>
????? <taglib-uri>http://java.sun.com/jsp/jstl/core</taglib-uri>
????? <taglib-location>/WEB-INF/c.tld</taglib-location>
? </taglib>
4、?
配置完上面三步后,就可以在頁面中引入
jstl
標簽了,引入方法:
?? <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
二、??????????
el(
Expression Language
)
表達式計算
1、?
數(shù)值計算
EL Expression
|
Result
|
${1} |
1 |
${1 + 2} |
3 |
${1.2 + 2.3} |
3.5 |
${1.2E4 + 1.4} |
12001.4 |
${-4 - 2} |
-6 |
${21 * 2} |
42 |
${3/4} |
0.75 |
${3 div 4} |
0.75 |
${3/0} |
Infinity |
${10%4} |
2 |
${10 mod 4} |
2 |
${(1==2) ? 3 : 4} |
4 |
2、?
bean
屬性計算
注:有效范圍指的是
application
、
session
、
request
、
page
??
${imb.multiple == '2'}
:
計算有效范圍內(nèi)
imb
對象的屬性
multiple
的值是否等于
2,
如果等于
2
則返回
true,
否則返回
false
??????
${users}:
????????
返回有效范圍內(nèi)名為
”users”
的值,該值可以是任何對象,如:
request.setAttribute(“users”,new ArrayList());
這樣得到的就是一個集合
.
三、??????????
部分標簽使用說明
1
、
<c:out>
[
說明
]
輸出值,相當于
struts
中的
<bean:write>
[
舉例
]
獲得
request
中的屬性:
?
<c:out value="${requestScope.test_all}"/>
獲得
session
中的屬性:
?
<c:out value="${sessionScope.test_all}"/>
獲得
application
中的屬性:
<c:out value="${applicationScope.test}"/>
2
、
<c:forEach>
[
說明
]
循環(huán)某個范圍內(nèi)的一個集合(可以是
Collection
、
Set
、
List
、
Array
等)
?????
??
??items----
表示要循環(huán)的集合
?????
??
??var---
表示當前集合中的某條記錄,可以對它進行訪問
??
?[
舉例
]
3
、
<c:if>
[
說明
]
邏輯判斷
[
舉例
]
<
c:if
test
=
"
${imb.hmtb.typeid == 4}">
???
??????????????
<
c:if
test
=
"
${imb.multiple == '2'}">(10,270)</c:if>
???
??????????????
<
c:if
test
=
"
${imb.multiple == '1'}">(10,290)</c:if>
??? </ c:if >
4
、
<c:set>
[
說明
]
設(shè)置不同的屬性,并且指定它們的范圍
[
舉例
]
<c:set value="10000" var="maxUser" scope="application"/>
<c:set value="20" var="maxIdelTime" scope="session"/>
<c:set value="next.jsp" var="nextPage" scope="request"/>
?????????????
?????????????
相當于:
?
???????????
?? application.setAttribute(“maxUser”,”
?????????? session.setAttribute(“maxIdelTime”,”
?????????????
?? request.setAttribute(“nextPage”,”next.jsp”);
?