EL表达式(变量和操作符)总结
EL表达式
关键字: el表达式
⼀个EL表达式包含变量和操作符。任何存储在某个JSP作⽤范围(如:page、 request、session、application)的bean能被作为⼀个EL变量来使⽤。另外,EL⽀持以下预定义的变量: 变量名称 说明
pageScope
⼀个包含所有page scope范围的变量集合 (a java.util.Map)
requestScope
⼀个包含所有request scope范围的变量集合 (a java.util.Map)
sessionScope
⼀个包含所有session scope范围的变量集合 (a java.util.Map)
applicationScope
⼀个包含所有application scope范围的变量集合 (a java.util.Map)
param
⼀个包含所有请求参数的集合 (a java.util.Map),通过每个参数对应⼀个String值的⽅式赋值
paramValues
⼀个包含所有请求参数的集合 (a java.util.Map),通过每个参数对应⼀个String数组的⽅式赋值
header
⼀个包含所有请求的头信息的集合, (a java.util.Map) ,通过每个头信息对应⼀个String值的⽅式赋值
headerValues
⼀个包含所有请求的头信息的集合 (a java.util.Map) ,通过每个头信息的值都保存在⼀个String数组的⽅式赋值
cookie
⼀个包含所有请求的 cookie集合 (a java.util.Map), 通过每⼀个cookie(javax.servlet.http.Cookie)对应⼀个cookie值的⽅式赋值
initParam
⼀个包含所有应⽤程序初始化参数的集合(a java.util.Map) ,通过每个参数分别对应⼀个String值的⽅式赋值
pageContext
⼀个javax.servlet.jsp.PageContext类的实例, ⽤来提供访问不同的请求数据
操作符描述了你对变量所期望的操作。如果你之前曾经使⽤过任何编程语⾔的话,在EL表达式中所使⽤的操作符对你来说可能看起来很熟悉。因为它们和那些在⼤多数语⾔中所⽀持的操作符⼀样。
Operator
Description . 访问⼀个bean属性或者 Map entry
[]
el表达式获取值
访问⼀个数组或者链表元素
()
对⼦表达式分组,⽤来改变赋值顺序
:
条件语句,⽐如: 条件 ? ifTrue : ifFalse.如果条件为真,表达式值为前者,反之为后者
+
数学运算符,加操作
-
数学运算符,减操作或者对⼀个值取反
*
数学运算符,乘操作
/
or div
数学运算符,除操作
% or mod
数学运算符,模操作(取余)
== or eq
逻辑运算符,判断符号左右两端是否相等,如果相等返回true,否则返回false
!= or ne
逻辑运算符,判断符号左右两端是否不相等,如果不相等返回true,否则返回false
< or lt
逻辑运算符,判断符号左边是否⼩于右边,如果⼩于返回true,否则返回false
> or gt
逻辑运算符,判断符号左边是否⼤于右边,如果⼤于返回true,否则返回false
<= or le
逻辑运算符,判断符号左边是否⼩于或者等于右边,如果⼩于或者等于返回true,否则返回false
>= or ge
逻辑运算符,判断符号左边是否⼤于或者等于右边,如果⼤于或者等于返回true,否则返回false
&& or and
逻辑运算符,与操作赋。如果左右两边同为true返回true,否则返回false
|| or or
逻辑运算符,或操作赋。如果左右两边有任何⼀边为true返回true,否则返回false
! or not
逻辑运算符,⾮操作赋。如果对true取运算返回false,否则返回true
empty
⽤来对⼀个空变量值进⾏判断: null、⼀个空String、空数组、 空Map、没有条⽬的Collection集合func(args)
调⽤⽅法, func是⽅法名,args是参数,可以没有,或者有⼀个、多个参数.参数间⽤逗号隔开 ⼀个EL表达式可以包含:数字、⽂本(在单引号或者双引号之间)、布尔值、null值。
因为⼀个EL表达式可以出现在静态⽂本出现的地⽅,因此你必须告诉JSP容器它应该被当作⼀个EL表达式来处理。你可以通过使⽤定界符来做到这⼀点。⼀个EL表达式总是以”${ }”来标记(⼀个“$”符号和⼀个左花括号,右花括号)。
除了在这个⽅法中使⽤的length()⽅法,JSTL1.1标签库还包含了许多其它经常使⽤的函数: 函数 描述
fn:contains(string, substring)
如果参数string中包含参数substring,返回true
fn:containsIgnoreCase(string, substring)
如果参数string中包含参数substring(忽略⼤⼩写),返回true
fn:endsWith(string, suffix)
如果参数 string 以参数suffix结尾,返回true
fn:escapeXml(string)
将有特殊意义的XML (和HTML)转换为对应的XML character entity code,并返回
fn:indexOf(string, substring)
返回参数substring在参数string中第⼀次出现的位置
fn:join(array, separator)
将⼀个给定的数组array⽤给定的间隔符separator串在⼀起,组成⼀个新的字符串并返回。
fn:length(item)
返回参数item中包含元素的数量。参数Item类型是数组、collection或者String。如果是String类型,返回值是String中的字符数。
fn:replace(string, before, after)
返回⼀个String对象。⽤参数after字符串替换参数string中所有出现参数before字符串的地⽅,并返回替换后的结果
fn:split(string, separator)
返回⼀个数组,以参数separator 为分割符分割参数string,分割后的每⼀部分就是数组的⼀个元素
fn:startsWith(string, prefix)
如果参数string以参数prefix开头,返回true
fn:substring(string, begin, end)
返回参数string部分字符串, 从参数begin开始到参数end位置,包括end位置的字符
fn:substringAfter(string, substring)
返回参数substring在参数string中后⾯的那⼀部分字符串
fn:substringBefore(string, substring)
返回参数substring在参数string中前⾯的那⼀部分字符串
fn:toLowerCase(string)
将参数string所有的字符变为⼩写,并将其返回 fn:toUpperCase(string) 将参数string所有的字符变为⼤写,并将其返回
fn:trim(string)
去除参数string ⾸尾的空格,并将其返回

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。