EL表达式判断Map是否为空和map的取值

本文介绍了如何在EL表达式中判断Map是否为空以及如何获取Map的值。提供了使用JSTL核心和函数标签库的示例,包括检查Map是否非空、长度大于0以及在JSP中显示Map内容的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

EL表达式 判断Map是否为空和map的取值


1.  Map<String, Object> fieldMap
<c:if test="${fieldMap['realname'].showstatus == 1}">


action中的代码

private Map<String, String> msgs = new HashMap<String, String>
msgs.put("loginError", "验证码错误");


jsp页面中的代码:
<script type="text/javascript">
    var msgTip = "${msgs['loginError']}";
    alert(msgTip);
</script>
--------------------------------------------------------------------------------------------------------------------------------------
注意事项:map名后不要加点,直接是[]
          key要用单引号
          在js中写,要在整个取值外面加双引号

1.在JSP页面中引入sun的核心标签库
      <% @ taglib uri = " http://java.sun.com/jstl/core_rt "  prefix = " c "   %>
2.在JSP页面中引入sun的函数标签库
     <% @ taglib uri = " http://java.sun.com/jsp/jstl/functions "   prefix = " fn " %>
3.判断是否为空
     < c:if  test ="${!empty map}" >
     </ c:if >
4.判断长度大于0
     < c:if  test ="${fn:length(map)>0}" >
     </ c:if >
注:fn:length(obj),对于空对象也会返回0
5.例子:将request传入的hashmap显示在表格中    
<% @ page language = " java "  contentType = " text/html; charset=utf-8 "
    pageEncoding
= " utf-8 "  import = " java.util.HashMap,java.util.Iterator " %>
<% @ taglib uri = " http://java.sun.com/jstl/core_rt "  prefix = " c "   %> <!--  引入sun的核心标签库  -->
<% @ taglib uri = " http://java.sun.com/jsp/jstl/functions "   prefix = " fn " %> <!--  引入sun的函数标签库  -->
  <! DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd" >
< html >
< head >
< meta  http-equiv ="Content-Type"  content ="text/html; charset=utf-8" >
< title >显示jsp传递的参数-使用标签库 </ title >
</ head >
< body >
< center >< h1 >传递的参数 </ h1 ></ center >
< hr />
< c:choose >
     < c:when  test ="${fn:length(requestScope.paramMap)>0}" >
           < table  border ="1" >
               < tr >< th >参数名 </ th >< th >参数值 </ th ></ tr >
             < c:forEach  items ="${requestScope.paramMap}"  var ="map" >
                   < tr >< td >${map.key} </ td >< td >${map.value} </ td ></ tr >
              </ c:forEach >
          </ table >
     </ c:when >
     < c:otherwise >
         < c:out  value ="没有在request中传递paramMap属性" />< br />
         < p >paramMap大小为:${fn:length(requestScope.paramMap)} </ p >
     </ c:otherwise >
</ c:choose >
</ body >
</ html >
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值