当前位置: 代码迷 >> Java Web开发 >> EL表达式获取Map的值,求帮助
  详细解决方案

EL表达式获取Map的值,求帮助

热度:6162   发布时间:2016-04-10 22:58:41.0
EL表达式获取Map的值,在线等,求帮助
大家好,我的问题是这样的
map是这样写的

Map<String,String>  map  = new HashMap<String,String>();
map.put("a","aa");
map.put("b","bb");

ModelAndView mv = new ModelAndView();
mv.setViewName("/jsp/jyxw");
mv.addObject("list", map);
return mv;

然后在jsp页面中

<c:forEach items="${list }" var="map">
<h1>${map.key}--${map.value }</h1>
</c:forEach>

这样是可以获取到值的,但是我想通过Key去获取值,我试了以下方法
方法一,不要引号:

<c:forEach items="${list }" var="map">
<h1>${map[a]}</h1>
</c:forEach>

这样的话获取不到值
方法二,加单引号:

<c:forEach items="${list }" var="map">
<h1>${map['a']}</h1>
</c:forEach>

出现错误javax.el.PropertyNotFoundException: Property 'a' not found on type java.util.HashMap$Entry
方法三,加双引号:

<c:forEach items="${list }" var="map">
<h1>${map["a"]}</h1>
</c:forEach>

和方法二的错误提示一样javax.el.PropertyNotFoundException: Property 'a' not found on type java.util.HashMap$Entry
各位大神帮帮小弟,非常感谢!!!
------解决方案--------------------
<h1>${map.key['a']}</h1> /<h1>${map.key[0]}</h1>呢 这样试试 
------解决方案--------------------
取错了。   ${list['a'] }
  相关解决方案