【学习总结】EL表达式总结

492 阅读1分钟

1.什么是EL表达式

EL 表达式的全称是:Expression Language。是表达式语言。EL 表达式的什么作用:EL 表达式主要是代替 jsp 页面中的表达式脚本在 jsp 页面中进行数据的输出。因为 EL 表达式在输出数据的时候,要比 jsp 的表达式脚本要简洁很多。

EL 表达式的格式是:${表达式}

EL 表达式在输出 null 值的时候,输出的是空串。jsp 表达式脚本输出 null 值的时候,输出的是** null**

2.EL 表达式搜索域数据的顺序

pageContext > request > session > application

3.EL 表达式输出 Bean 的属性

代码实现

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
<%
    Person person = new Person();
    person.setName("李华");
    person.setPhones(new String[]{"12313","3122312"});
    ArrayList<String> cities = new ArrayList<>();
    cities.add("上海");
    cities.add("海");
    cities.add("上");
    person.setCities(cities);
    Map<String,Object> map = new HashMap<>();
    map.put("key",1);
    map.put("key1",2);
    map.put("key2",3);
    person.setMap(map);
    pageContext.setAttribute("person",person);

%>
输出person:${person}<br>
输出person的name属性:${person.name}<br>
输出person的phones属性:${person.phones[0]}<br>
输出person的map属性:${person.map.key1}<br>
</body>
</html>

4.运算

语法:${ 运算表达式 } , EL 表达式支持如下运算符: 关系运算,逻辑运算,算数运算和java基础大同小异 值得关注的是empty运算 empty 运算可以判断一个数据是否为空,如果为空,则输出 true,不为空输出 false。

以下几种情况为空:

1、值为 null 值的时候,为空

2、值为空串的时候,为空

3、值是 Object 类型数组,长度为零的时候

4、list 集合,元素个数为零

5、map 集合,元素个数为零

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
<%
    //        1、值为null值的时候,为空
    request.setAttribute("emptyNull", null);
//        2、值为空串的时候,为空
    request.setAttribute("emptyStr", "");
//        3、值是Object类型数组,长度为零的时候
    request.setAttribute("emptyArr", new Object[]{});
//        4、list集合,元素个数为零
    List<String> list = new ArrayList<>();
//        list.add("abc");
    request.setAttribute("emptyList", list);
//        5、map集合,元素个数为零
    Map<String,Object> map = new HashMap<String, Object>();
//        map.put("key1", "value1");
    request.setAttribute("emptyMap", map);
%>
${ empty emptyNull } <br/>
${ empty emptyStr } <br/>
${ empty emptyArr } <br/>
${ empty emptyList } <br/>
${ empty emptyMap } <br/>

<hr>
${ 12 != 12 ? "aa":"bb" }

</body>
</html>