Jstl是sun的标准taglib库,Jstl是标签库和el语言的结合。

el表达式,el表达式的使用方法$和{},比如要取出scope中的hello属性值:${hello}

el表达式的隐含对象pageScope,requestScope,sessionScope,applicationScope,比如${hello}语句首先会从pageScope开始逐个查找scope中的属性,所以要改进该语句为${requestScope.hello}

姓名:${user.username}

年龄:${user.age}

所属组:${user.group.name}

一,el表达式取出map集合中的数据

假设Action中保存map集合:

Map mapvalue=new HashMap();

mapvalue.put(“key1”,”值1”);

mapvalue.put(“key2”,”值2”);

request.setAttribute(“mapvalue”,mapvalue);

jsp上使用el表达式取出map数据:${scope中的属性名.键名}

${mapvalue.key1}

二,el表达式取出数组中的数据

假设Action中有数组

Char[] char={“1”.”2”};

request.setAttribute(“char”,char);

jsp上使用el表达式取出数组数据${scope中属性名[索引值]}

${char[1]}

三,el表达式取出对象数据中的数据

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);

Jsp上用el表达式取出对象数组数据${scope中属性名[索引值]}

${users[1].username}

四,el表达式取出list集合中的数据

List list=new ArrayList();

list.add(user1);

list.add(user2);

list.add(user3);

request.setAttribute(“list”,list);

jsp上用el表达式取出集合中的数据${scope 中属性名[索引值]}

${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中的属性名}

posted on 2011-02-13 14:43  魔战  阅读(2776)  评论(0编辑  收藏  举报