JavaWeb——EL 表达式基础总结

为君一笑 提交于 2019-11-27 13:41:56

一、概述

1、概念:Expression Language 表达式语言

2、作用:替换和简化jsp页面中java代码的编写<% %>

3、语法:${表达式}

4、注意:jsp默认支持el表达式的。如果要忽略el表达式:

  1. 设置jsp中page指令中:isELIgnored="true" 忽略当前jsp页面中所有的el表达式
  2. ${表达式} :忽略当前这个el表达式

二、EL表达式——执行运算

1、算数运算符: + - * / div % mod
2、比较运算符: > < >= <= == !=
3、逻辑运算符: && and || or ! not
4、空运算符: empty

  • 功能:用于判断字符串、集合、数组对象是否为null或者长度是否为0
  • ${empty list}:判断字符串、集合、数组对象是否为null或者长度为0
  • ${not empty str}:表示判断字符串、集合、数组对象是否不为null 并且 长度>0

实例:el01.jsp

<%@ page import="java.util.List" %>
<%@ page import="java.util.ArrayList" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>el_test</title>
</head>
<body>
<h4>算术运算符</h4><br>
${3 + 4}<br>//7
${3 / 4}<br>//0.75
${3 div 4}<br>//0.75
${3 % 4}<br>//3
${3 mod 4}<br>//3
<h4>比较运算符</h4><br>
${3 == 4}<br>//false
<h4>逻辑运算符</h4><br>
${3 > 4 and 3 < 4}<br>//false
${3 > 4 && 3 < 4}<br>//false
<h4>empty运算符</h4><br>
<%
String string = null;
request.setAttribute("string字符串",string);
List list = new ArrayList();
request.setAttribute("list集合",list);
%>
${not empty string字符串}<br>//false
${not empty list集合}//false
</body>
</html>

三、EL表达式——获取值

1、el表达式只能从域对象中获取值
2、语法:

  1. ${域名称.键名}:从指定域中获取指定键的值
    • 域名称:
      1. pageScope --> pageContext
      2. requestScope --> request
      3. sessionScope --> session
      4. applicationScope --> application(ServletContext)
    • 举例:在request域中存储了name=张三

3、获取:${requestScope.name}

4、${键名}:表示依次从最小的域中查找是否有该键对应的值,直到找到为止

四、EL表达式——获取对象的值

1、获取对象

  • 对象:${域名称.键名.属性名}

  • 本质上会去调用对象的getter方法

2、获取List集合

  • ${域名称.键名[索引]}

3、获取 Map 集合

  • ${域名称.键名.key名称}
  • ${域名称.键名["key名称"]}

4、获得请求参数

  • ${param.参数名}

五、EL表达式——隐式对象

1、el表达式中有11个隐式对象
2、pageContext:获取jsp其他八个内置对象
3、${pageContext.request.contextPath}:动态获取虚拟目录

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!