轉自:http://hi.baidu.com/fevelen/item/5b0484510c059ad8d48bacb9
Jstl是sun的標准taglib庫,Jstl是標簽庫和el語言的結合。
el表達式的隱含對象pageScope,requestScope,sessionScope,applicationScope,比如${hello}語句首先會從pageScope開始逐個查找scope中的屬性,指定域對象語句為${requestScope.hello}
屬性值:${hello}
對象值
姓名:${user.username}
年齡:${user.age}
所屬組:${user.group.name}
map集合
假設Action中保存map集合:
Map mapvalue=new HashMap();
mapvalue.put(“key1”,”值1”);
mapvalue.put(“key2”,”值2”);
request.setAttribute(“mapvalue”,mapvalue);
${mapvalue.key1}
數組
假設Action中有數組
Char[] char={“1”.”2”};
request.setAttribute(“char”,char);
${char[1]}
數組中的對象
User[] users=new User[10];
for(int i=0;i<10;i++)
{
User u=new User();
u.setUsername(“U_”+i);
users[i]=u;
}
request.setAttribute(“users”,users);
${users[1].username}
list集合
List list=new ArrayList();
list.add(user1);
list.add(user2);
list.add(user3);
request.setAttribute(“list”,list);
${list[3].username}
el表達式對運算符的支持
1+2=${1+2}
10/5=${10/5}
10 div 5=${10 div 5}
10%3=${10%3}
10 mod 3=${10 mod 3}
el表達式支持算數運算符和邏輯運算符
el表達式的函數
判斷值是否為空:
${empty scope中的屬性名}
判斷值為非空:
${!empty scope中的屬性名}