Java学习笔记:EL表达式

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Nidhoggz/article/details/78417253

表达式语言,JSP2.0最重要的特性之一。

语法

EL表达式的结构:  ${ expression }

它也可以用来连接两个表达式:${a+b}${c+d}

关键字:

and

eq

gt

true

instanceof

or

ne

le

false

empty

not

lt

ge

null

mod

[].运算符

EL表达式可以返回任意类型的值。返回一个带有属性的对象可以使用[].运算符来访问该属性。

${object["propertyName"]}

${object.propertyName}

如果propertyName不是有效的Java变量名,既属性名称中含有特殊字符,只能用[]运算符。

${user["My-Name"]}

如果对象的属性碰巧返回带有属性的另一个对象,则既可以用[],也可以用.运算符来访问第二个对象的属性。

${pageContext["request"]["servletPath"]}

${pageContext.request["servletPath"]}

${pageContext.request.servletPath}

${pageContext["request"].servletpath}


EL隐式对象

表达式语言中含有11个隐式对象

pageScope

它将给定的属性名称与页面作用域中设置的值进行映射

requestScope

它将使用请求范围中设置的值映射给定的属性名称

sessionScope

它将使用在会话作用域中设置的值映射给定的属性名称

applicationScope

它将使用应用程序作用域中设置的值映射给定的属性名称

param

它将请求参数映射到单个值

paramValues        

它将请求参数映射到值的数组

header

它将请求头名称映射到单个值

headerValues

它将请求头名称映射到值数组

cookie

它将给定的cookie名称映射到cookie值

initParam

它映射初始化参数

pageContext

它提供对许多对象的访问请求,会话等。

参考示例

pageContext包含了所有jsp内置对象,如获取当前的ServletRequest

${pageContext.request}

initParam用于获取上下文参数的值

${initParam.password}

param用于获取请求参数值

${param.userName}

paramValues可以获取一个请求参数的多个值

${paramValues.selectedOptions[0]}

header表示一个包含所有请求标题的Map

${header.connection}

cookie可以用来获取一个cookie

${cookie.jsessionid.value}

${cookie.jsessionid.path}


EL运算符

算术运算符

加法(+)、减法(-)、乘法(*)、除法(/)、取余/取模(%mod)

逻辑运算符

(&&and)、或(||or)、非(!和not)

关系运算符

等于(==eq)、不等于(!=ne)、大于(>gt)、大于或等于(>=ge)、小于(<lt)、小于或等于(<=le

empty运算符

用来检某一个值是否为nullempty

猜你喜欢

转载自blog.csdn.net/Nidhoggz/article/details/78417253