EL表达式
什么是EL表达式,EL表达式的作用?
EL表达式的全称是:Expression Language。
EL表达式有什么作用: EL表达式主要是代替jsp页面中的表达式脚本在jsp页面中进行数据的输出
因为EL表达式在输出数据的时候要比jsp的表达式脚本要简洁很多
<body>
<%
request.setAttribute("key","值");
%>
表达式脚本输出 Key 的值是:
<%=request.getAtrribute("key1")==null%><br/>
EL表达式输出Key的值是:${key1}
</body>
EL表达式的格式是:${}
EL表达式输出null的时候是空白 jsp表达式输出null则是null字符串
EL表达式搜索域数据的顺序
EL表达式主要是在jsp页面中输出数据
主要是输出域对象中的数据
当四个域中都有相同的key的数据的时候,EL表达式会按照四个域的从小到大的顺序去搜索,找到就输出
EL表达式输出 Bean 的普通属性,数组属性。List 集合属性,map 集合属性
格式:
pageContext.setAttribute("p",person);
输出Person:${ p.name }
EL表达式中的运算
关系运算:
等于 == 或 eq ${5 == 5} 或 ${5 eq 5}
不等于 != 或 ne ${ 5 != 5} 或 ${5 ne 5}
小于 < 或 lt ${3 < 5} 或 ${3 lt 3}
大于 > 或 gt ${ 2 > 10} 或 ${2 gt 10}
小于等于 <= 或 le ${5 <= 12} 或 ${5 le 12}
大于等于 >=或ge ${3 >= 5} 或 ${3 ge 5}
逻辑运算:
与 && 或 and
或 || 或 or
! 或 not
算数运算:
+
/
%
empty运算
判断值,值为空则为ture
三元运算
表达式1?表达式2:表达式3
EL表达式中11个隐含对象
EL表达式中自己定义的对象,可以直接使用
变量 类型 作用
pageContext PageContextImpl 它可以获取jsp中的九大内置对象
pageScope Map<String,Object> 它可以获取pageContext域中的数据
requestScope Map<String,Object> 它可以获取 Request 域中的数据
sessionScope Map<String,Object> 它可以获取 Session域 中的数据
applicationScope Map<String,Object> 它可以获取 ServletContext中的数据
param Map<String,String> 它可以获取请求参数的值
paramValues Map<String,String[ ]> 获取多个值的时候使用
header Map<String,String> 它可以获取请求头的信息
headerValues Map<String,String> 可以获取多个值的情况
cookie Map<String,Cookie> 它可以获取当前请求的Cookie信息
initParam Map<String,String> 可以获取在web.xml中配置的上下文参数