`
a137268431
  • 浏览: 145519 次
文章分类
社区版块
存档分类
最新评论

JSTL对Map集合的操作

 
阅读更多

在EL中,方括号运算符用来检索数组和集合的元素。对于实现 java.util.Map 接口的集合,方括号运算符使用关联的键查找存储在映射中的值。
在方括号中指定键,并将相应的值作为表达式的值返回。例如,表达式 ${map['key']} 返回与 map标识符所引用的 Map 中的 "key" 键相关联的值。
当forEach 的items属性中的表达式的值是java.util.Map时,则var中命名的变量的类型就是 java.util.Map.Entry。这时var=entry的话,用表达式${entry.key}取得键名。 用表达${entry.value}得到每个entry的值。这是因为java.util.Map.Entry对象有getKey和getValue方 法,表达式语言遵守JavaBean的命名约定。

Java代码 复制代码 收藏代码
  1. <%
  2. Map<String,String> map2 = new HashMap();
  3. map2.put("a","hello world");
  4. map2.put("b","this is map");
  5. request.setAttribute("map2",map2);
  6. %>

键值对遍历

Java代码 复制代码 收藏代码
  1. <c:forEach var="item" items="${map2}">
  2. ${item.key} > ${item.value} <br>
  3. </c:forEach>

键遍历

Java代码 复制代码 收藏代码
  1. <c:forEach var="item" items="${map2}">
  2. ${item.key}<br>
  3. </c:forEach>

值遍历

Java代码 复制代码 收藏代码
  1. <c:forEach var="item" items="${map2}">
  2. ${item.value}<br>
  3. </c:forEach>
  4. <body>

Java代码 复制代码 收藏代码
  1. <%
  2. List<String> list = new ArrayList<String>();
  3. list.add("first");
  4. list.add("second");
  5. List<String> list2 = new ArrayList<String>();
  6. list2.add("aaaaaa");
  7. list2.add("bbbbbb");
  8. Map<String,List<String>> map = new HashMap();
  9. map.put("a",list);
  10. map.put("b",list2);
  11. request.setAttribute("map",map);
  12. %>

通过键获得列表值,并遍历列表

Java代码 复制代码 收藏代码
  1. <c:forEach var="item" items="${map['a']}">
  2. ${item }<br>
  3. </c:forEach><br>
  4. <c:forEach var="item" items="${map['b']}">
  5. ${item }<br>
  6. </c:forEach>

map中值为列表,直接遍历列表中的每一项

Java代码 复制代码 收藏代码
  1. <c:forEach var="item" items="${map}">
  2. <c:forEach items="${item.value}" var="it">
  3. ${it }<br>
  4. </c:forEach>
  5. </c:forEach>

分享到:
评论

相关推荐

    Struts的增删改查分页 带oracle数据库的项目 包含JSTL读取MAP集合 批量删除

    Struts的增删改查分页 入门级的经典项目,带数据库的sql数据文件 包含JSTL读取MAP集合 批量删除 还有实现全选,反选, 只是前台的jsp页面未作页面校验,望各位输入到数据库的数据的合法性 保证下载 导入文件和...

    使用Java集合模拟JSTL包中的Result接口功能

    如果不想导包,那么,我们需要自己写,于是,本人使用Java的集合框架来完成模拟jstl的Result接口的功能--返回一个Map对象,然后通过表的字段名作为键来从Map对象中取所对应的记录集合list. 学习对象:所有学习Java...

    在jsp中使用JSTL跟El表达式访问和遍历Map集合

    NULL 博文链接:https://yelangking.iteye.com/blog/2042913

    在JSTL EL中处理java.util.Map,及嵌套List的情况

    在EL中,方括号运算符用来检索数组和集合的元素。对于实现 java.util.Map 接口的集合,方括号运算符使用关联的键查找存储在映射中的值。

    jstl中判断list中是否包含某个值的简单方法

    如何判断list中是否包含某个值, 很遗憾,contains是不行的,只能穷举了 ${sessionScope.SelectDeviceIdsList} var=map&gt; ${map.key&gt; &lt;c:set var=iscontain value=true /

    springmybatis

    恭喜你,环境搭建配置成功,接下来第二章,将讲述基于接口的操作方式,增删改查。 整个工程目录结构如下: 除非申明,文章均为一号门原创,转载请注明本文地址,谢谢! mybatis实战教程(mybatis in action)之二:以...

    freemarker总结

    defaultValue,第一种用法不给缺失的变量指定默认值,表明默认值是空字符串,长度为0的集合,或者长度为0的Map对象. 使用!指定默认值时,并不要求默认值的类型和变量类型相同.使用??运算符非常简单,它总是返回一个布尔值...

    Spring-Reference_zh_CN(Spring中文参考手册)

    集合 3.3.3.5. Nulls 3.3.3.6. XML-based configuration metadata shortcuts 3.3.3.7. 组合属性名称 3.3.4. 使用depends-on 3.3.5. 延迟初始化bean 3.3.6. 自动装配(autowire)协作者 3.3.6.1. 设置Bean使自动装配...

    Java学习笔记-个人整理的

    {12.11}集合操作}{165}{section.12.11} {12.11.1}union}{166}{subsection.12.11.1} {12.11.2}intersect与minus}{166}{subsection.12.11.2} {12.11.3}join}{166}{subsection.12.11.3} {12.11.3.1}cross join}{...

    Struts in Action中文版

    1. 介绍.........................................................................................................18 1.1. 关于本书..........................................................................

    struts in Action

    1. 介绍.........................................................................................................18 1.1. 关于本书...........................................................................

Global site tag (gtag.js) - Google Analytics