EL表达式

EL表达式功能1:获取数据

1.获取常量

<h1>EL表达式功能1:获取数据</h1>
    <h3>获取常量</h3>
        字符型:${"张三"}<br>
        数值型:${"123"}<br>
        布尔型:${"true"}<br>
    <hr>

结果:

2.获取变量

<h3>获取变量</h3>
    <%
        // EL表达式只能获取保存在作用域里面的变量 
        // 如果没有获取到变量,他就不会返回任何值
        // 获取变量,会使用变量在4大作用域中,从小到大依次寻找
        // 找到就返回值,找不到就不返回,和pageContext.findAttribute()相似
        // pageContext.setAttribute("name", "张三");
        request.setAttribute("name", "李四");
        pageContext.setAttribute("age", 18);
        String email="123@163.com";
    %>
    name=${name}<br>
    age=${age}<br>
    email=${email}<br>
    <hr>

结果:

3.获取数组中的数据

<h3>获取数组中的数据</h3>
    <% 
        String[] provs={"","","广",""};
        pageContext.setAttribute("ps", provs);
    %>
    provs[0]=${ps[0]}<br>
    provs[7]=${ps[7]}<br><!-- 如果数组中没有指定的下标(下标越界),则不输出任何内容 -->
    <hr>

结果:

4.获取集合中的数据

<h3>获取集合中的数据</h3>
    <% 
        List<String> list=new ArrayList<String>();
        list.add("刘备");
        list.add("关羽");
        list.add("张飞");
        list.add("诸葛亮");
        pageContext.setAttribute("list", list);
    %>
    list[0]=${list[0]}<br>
    list[6]=${list[6]}<br>
    <hr>

结果:

5.获取map集合中的数据

<h3>获取map集合中的数据</h3>
    <% 
        Map<String,String> map=new HashMap<String,String>();
        map.put("name","刘备");
        map.put("age","30");
        map.put("wife", "糜夫人");
        map.put("wife.another", "孙尚香");
        pageContext.setAttribute("map", map);
        
    %>
    name=${map.name}<br>
    age=${map.age}<br>
    wife=${map["wife"]}<br>
    wife=${map["wife.another"]}<br>
    <hr>

结果:

6.获取JavaBean中的数据

 *  JavaBean-Java中用来封装实体信息的类
 *  1. 属性都用private修饰
 *  2. 提供属性对应的get/set方法
 *  3. 提供构造器
 *  4. 实现Serializable接口

<h3>获取JavaBean中的数据</h3>
    <% 
        Person p1=new Person();
        p1.setName("张三丰");
        p1.setAge(120);
        p1.setAddr("武当山");
        pageContext.setAttribute("p1", p1);
    %>
    p1=${p1}<br>
    <!-- p1.name 被翻译成 p1.getName()  -->
    p1.name=${p1.name}<br>
    p1.addr=${p1.addr}<br>
    p1.job=${p1.job}<br>

结果:

原文地址:https://www.cnblogs.com/chuijingjing/p/9703019.html