0%

EL表达式

EL表达式


简介

EL(Expression Language) 是为了使JSP写起来更加简单。表达式语言的灵感来自于 ECMAScript 和 XPath 表达式语言,它提供了在 JSP 中简化表达式的方法,让Jsp的代码更加简化。

作用

获取作用域对象中的数据

注意:获取的是pageContext、request、session、application四个对象中的数据,其它数据一概不理会。找到了则获取返回,找不到则什么都不做,也不报错

语法

${表达式}

表达式:

获取请求数据

request对象存储了请求数据-->param.键名 返回值

request对象存储了请求数据-->paramvalues.键名 返回数组

通过setAttribute方法存储到作用域对象中的数据

${键名} 返回键名所对应的值

注意:如果存储的是普通字符串则直接返回,如果存储的是对象,则返回的是对象

​ 获取对象中的数据:

​ 普通对象:${键名.属性名.属性名...}

​ 集合对象:list集合--->${键名[角标]}

​ map集合-->${键名.map集合存储的键名}

作用域查找顺序

pageContext-->request-->session-->application

注意:每次查找都是从小到大查找,找到了则获取,不再继续找。

指定查找:\({pageScope.键名}---\){requestScope.键名}---\({sessionScope.键名}---\){application.键名}

EL表达式的逻辑运算

${逻辑表达式}:&& || !

${算术表达式}:+,-,*,/

${关系表达式}:>,<,>=,<=,==,!=,%

特殊:三目运算符

注意:+表示加法运算,不表示字符连接,使用EL表达式进行字符连接会报错

EL表达式的空值判断

${empty 键名}

作用:判断键名对象的值是否存有数据

EL获取请求头数据和Cookie数据

请求头数据:

${header}-->返回所有的请求头数据

${header["键名"]}--->返回指定的键名的请求头数据

${headerValues["键名"]}--->返回指定的键名(同键不同值)的值的数组

获取Cookie数据:

${cookie}--->返回存储了所有的cookie对象的map集合

${cookie.键名}--->返回指定的cookie对象

${cookie.键名.name}--->返回指定的cookie对象存储的数据的键名

${cookie.键名.value}--->返回指定的cookie对象存储的数据的值