EL
一. 概念
Expression Language
用于简化jsp中java代码的书写
jsp默认支持EL,可以在page指令下配置isELIgnored属性值为true来设置整个页面的EL表达式原样输出;
也可以进行单条EL表达式的忽略:\${ 表达式 }
二. 基本语法
格式:${ 表达式 }
三. 功能
3.1 数据的获取
注:
1、EL表达式只能获取域对象中的数据
2、如果键不存在,则显示空字符串
3、异常信息不做处理
格式:
- ${ 域名称.键 }:从指定的域中获取指定的键对应的值
- 域名称:
- pageScope:pageContext
- requestScope:request
- sessionScope:session
- applicationScope:application (ServletContext)
- 域名称:
- ${ 键 }:从pageScope -> requestScope -> sessionScope -> applicationScope中查找指定键对应的值,范围是从小到大,直到找到为止
1、获取对象
${ 域名称.键 }
2、获取对象属性
${ 域名称.键.属性名 } 注:这个属性名实质上是根据get方法来获取的,获取的原则:将方法名的get删去,再将剩余部分的首字母变成小写
3、获取list集合中的元素
${ 域名称.键[ 下标 ] }
4、获取map集合中的元素
${ 域名称.键.map的键 }
3.2 运算
- 算数运算:+、-、*、/(div)、%(mod)
- 比较运算:>、>=、<、<=、==、!=
- 逻辑运算:&&(and)、||(or)、!(not)
- 三元运算:条件表达式?表达式1:表达式2
- 空运算:empty,用于判断字符串、集合、数组对象是否为null或者长度为0
3.3 隐式对象
pageContext
获取其他八个内置对象
${pageContext.request.contextPath }:动态获取项目名(虚拟路径)