jsp页面使用el按key获取map中的对应值

本文介绍了在JSP页面中如何使用EL表达式根据key获取Map中的值,包括直接使用EL、Struts标签以及JSTL标签的方式。示例代码展示了从HashMap中获取String和bean属性的值,并给出了显示结果。

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

Struts标签使用,keyset
这里写图片描述


Struts标签直接使用
这里写图片描述


JSP表达式调用
action中的代码

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

jsp页面中的代码:

<script type="text/javascript">
    var msgTip = "${msgs['loginError']}";
    alert(msgTip);
</script>

注:
map名后不要加点,直接是[]
key要用单引号
在js中写,要在整个取值外面加双引号


补充

10.10 使用JSTL标签和EL表达式显示HashMap中String的值

在Servlet文件中:

    // 通过EL表达式获取HashMap简单的内容  
    HashMap hm_simple_string = new HashMap();  
    hm_simple_string.put("key1", "value1");  
    hm_simple_string.put("key2", "value2");  
    request.setAttribute("hm_simple_string", hm_simple_string); 

在JSP文件中:

    //通过EL表达式获取HashMap简单的内容:  
    "${hm_simple_string['key1']}"> 

在JSP文件中,hm_simple_string是一个HashMap实例,Map是一个以key键value值配对的数据结构。通过key显示出value,这样就可以直接使用[‘key_name’]的形式显示出指定key所对应的value了。
显示结果为:

    value1

10.11 使用JSTL标签和EL表达式显示HashMap中bean属性的值
在Servlet文件中:

    // 通过EL表达式取HashMap复杂的内容  
    HashMap hm_complex = new HashMap();  
    hm_complex.put("key1", Student_complex);  
    request.setAttribute("hm_complex", hm_complex); 

HashMap存放的是一个类class的实例。
在JSP文件中:

    //通过EL表达式取HashMap复杂的内容  
    <c:out value="${hm_complex['key1']['username']}"></c:out> 

hm_complex是一个HashMap类型,通过key可以取得value。但value是一个bean类型,所以就需要先通过[‘key1’]来取得指定key所对应的value,再通过[‘username’]来访问bean的username属性,并显示出来。
显示结果为:

    Student_complex
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值