EL表达式获取简单数据与复杂数据(调用类)+EL表达式获取Map集合与list集合数据

时间:2022-07-28
本文章向大家介绍EL表达式获取简单数据与复杂数据(调用类)+EL表达式获取Map集合与list集合数据,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

1.使用EL表达式获取简单数据与复杂数据

1.1代码

<%@ page import="domain.User" %><%--
  Created by IntelliJ IDEA.
  User: 49841
  Date: 2020/9/1
  Time: 15:25
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
<h1>使用el表达式获取简单数据</h1>
    <%
        //向域中存放数据
        pageContext.setAttribute("username", "张三");
        pageContext.setAttribute("password", "132456");
        pageContext.setAttribute("address", "大连",PageContext.SESSION_SCOPE);
    %>
    <h2>不使用el表达式获取数据</h2>
    <%=pageContext.findAttribute("username")%><br/>
    <%=pageContext.findAttribute("password")%><br/>
    <%=pageContext.findAttribute("address")%>
    <%=pageContext.findAttribute("haha")%>

    <h2>使用el表达式</h2>
    ${"username"}<br/>
    ${username}<br/>
    ${password}<br/>
    ${address}<br/>
    ${haha}<br/>
    <h1>使用el表达式获取复杂数据</h1>
    <%
        User user = new User("夏雨荷","12");
        pageContext.setAttribute("user", user);
    %>
<%--使用el表达式获取--%>
    ${user}<br/>
    ${user.name}<br/>
    ${user.password}<br/>




</body>
</html>

1.2运行结果

2.使用EL表达式获取集合数据

2.1代码

<h3>使用el表达式,获取list集合的数据</h3>
    <%
        ArrayList<String> list = new ArrayList<>();
        String[] arr = new String[5];
        list.add("呱?");
        list.add("呱呱?");
        list.add("呱呱呱?");
        list.add("呱呱呱呱?");
        arr[0]="gua1";
        arr[1]="gua2";
        arr[2]="gua3";
        arr[3]="gua4";
        pageContext.setAttribute("list", list);
        pageContext.setAttribute("arr", arr);
    %>
    ${list}<br/>
    ${list[0]}<br/>
    ${list[1]}<br/>
    ${list[2]}<br/>
    ${list[4]}<br/>
    ${list[3]}<br/>
<%--出错就不会显示--%>
    ${list[4]}<br/>
    ${list.get(0)}<br/>
-------------------------------<br/>
    ${arr[0]}<br/>
    ${arr[1]}<br/>
    ${arr[2]}<br/>
    ${arr[3]}<br/>
    ${arr}<br/>
-------------------------------<br/>
    <h3>使用el表达式,获取Map集合的数据</h3>
    <%
        HashMap<String,String> map = new HashMap<>();
        map.put("cn1","中国1");
        map.put("cn2","中国2");
        map.put("cn3","中国3");
        map.put("666","gua");
        pageContext.setAttribute("map", map);
    %>
    ${map}<br/>
    ${map.cn1}<br/>
    ${map.cn2}<br/>
    ${map.cn3}<br/>
<%--错误:不能以数字开头这样取    ${map.666}<br/>--%>
    ${map['666']}<br/>

2.2运行结果()

使用map集合时,调用数据不能用数字开头,否则会报错,需要加[’ ']