分享

el表达式操纵map

 后飞的鸟 2010-11-20
1、迭代
     当forEach 的items属性中的表达式的值是java.util.Map时,则var中命名的变量的类型就是

     java.util.Map.Entry。这时var=entry的话,用表达式${entry.key}取得键名。

  用表达式${entry.value}得到每个entry的值。这是因为java.util.Map.Entry对象有getKey和getValue方

 法,表达式语言遵守JavaBean的命名约定。 example:

Java代码
       
<c:forEach items="${map}" var="entry">  
   <c:out value="${entry.key}" />  
   <c:out value="${entry.value}" />  
</c:forEach> 

    
<c:forEach items="${map}" var="entry">
   <c:out value="${entry.key}" />
   <c:out value="${entry.value}" />
</c:forEach>

2、根据key变量求值
      如果事先知道key那么很容易根据${map.key值}就可以得到值对象,但是如果key是一个变量呢?

     有一个问题,如果给定一个key的变量如何使用EL得到对象呢,这里需要使用EL表达式中的[]来解决,
    解决方法如示例:
Java代码
<c:out value="${map[key]}" /> 

  <c:out value="${map[key]}" />
 
<!-- 这里的map就是 java.util.Map对像,key是这个map里的一个key -->

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多