问题
Need help.I have a hash map which is returned from a spring controller to JSP.Is there a way just to check if a certain key exists irrespective of any value(the value may be null too)
Say, the below hash map is being sent from the controller
HashMap hmap = new HashMap();
hmap.put("COUNTRY", "X");
hmap.put("REGION", null);
If the key REGION exists ( value may be anything including null) then display some section in the jsp.
I am trying to access the key as ${hmap['REGION']}
Thanks in advance.
回答1:
try using containsKey:
${hmap.containsKey('REGION')}
回答2:
<c:forEach var="entry" items="${hmap }" varStatus="status">
<c:if test="${entry.key == 'REGION'}">
<tr>
<td>${entry.key}</td>
<td>${entry.value}</td>
</tr>
</c:if>
</c:forEach>
Check this, if this solution works or not ? And post if not working and also post your JSP's jstl code.
回答3:
I know that you want to test for where the value may include null, but there's a solution by using the empty
operator that is elegant when one might want to also exclude null values in that it will evaluate to true
if the value is null or does not exist.
<c:if test="${not empty hmap['REGION']}">
<%-- conditional block --%>
</c:if>
来源:https://stackoverflow.com/questions/25177487/hash-map-key-check-in-jstl