一。概念:表达式语言
作用:替换和简化jsp页面中java代码的编写
语法:¥{表达式}
注:就是怕默认支持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
* 2. 获取值
1. el表达式只能从域对象中获取值
2. 语法:
1. 域 名 称 . 键 名 : 从 指 定 域 中 获 取 指 定 键 的 值 ∗ 域 名 称 : 1. p a g e S c o p e − − > p a g e C o n t e x t 2. r e q u e s t S c o p e − − > r e q u e s t 3. s e s s i o n S c o p e − − > s e s s i o n 4. a p p l i c a t i o n S c o p e − − > a p p l i c a t i o n ( S e r v l e t C o n t e x t ) ∗ 举 例 : 在 r e q u e s t 域 中 存 储 了 n a m e = 张 三 ∗ 获 取 : {域名称.键名}:从指定域中获取指定键的值 * 域名称: 1. pageScope --> pageContext 2. requestScope --> request 3. sessionScope --> session 4. applicationScope --> application(ServletContext) * 举例:在request域中存储了name=张三 * 获取: 域名称.键名:从指定域中获取指定键的值∗域名称:1.pageScope−−>pageContext2.requestScope−−>request3.sessionScope−−>session4.applicationScope−−>application(ServletContext)∗举例:在request域中存储了name=张三∗获取:{requestScope.name}2. ${键名}:表示依次从最小的域中查找是否有该键对应的值,直到找到为止。 3. 3. 获取对象、List集合、Map集合的值 1. 对象:${域名称.键名.属性名} * 本质上会去调用对象的getter方法 2. List集合:${域名称.键名[索引]} 3. Map集合: * ${域名称.键名.key名称} * ${域名称.键名["key名称"]} * 3. 隐式对象: * el表达式中有11个隐式对象 * pageContext: * 获取jsp其他八个内置对象 * ${pageContext.request.contextPath}:动态获取虚拟目录