EL表达式

2017-04-01  本文已影响53人  senninha

好久之前的笔记,现在整理一起发了。。。
EL表达式的语法是:${expression}.

1.获取request,session,context里的值:

request.setAttribute("senninha","request");
session.setAttribute("senninha","session");
context.setAttribute("senninha","context");

${senninha} 将获取到request的值,获取attribute的时候是按request-->session-->context 的顺序(由小到大)走的

获取request的parameter参数也很简单:
${param["name"]}  or ${param.name} 即可获取到表达的参数

2.EL支持的一些算术表达和逻辑运算

a.大于等于 >= ge(grater equals) ${1 ge 0} = true;
b.诸如此类
c.也支持java的三目运算符:
    ${(3 ge 2) == (3 ge 4) ? "yes they are equals":"no they are not equals"}
    这样就可以很方便显示
d.empty 判读是否为空:
    ${empty array} 如果为空(对于集合来说,对于一般对象则是表示是否为null) 则显示true。

3.EL表达式也有内置对象:

a.pageContext
b.pageScope
c.requestScope:相当于request变量的map集合
d.sessionScope:相当于session变量的map集合
e:applicationScope:相当于application变量的map集合
f:param:相当于request的参数值的map:
g:paramValues:request的参数组名parameter[] 的map
h:header:request的header的Map
i:headerValues:request的header[] 数组的map

有了这些就可以避免1中在多个同名值的时候无法选的问题了。
如下:
        ${requestScope.senninha}
        ${sessionScope.senninha}
        ${applicationScope.senninha}
        
        当param或者header内存在多个同名值的时候:
        如下:
            ${paramValues.name[1]}
            适合在表格输入的时候使用
上一篇下一篇

猜你喜欢

热点阅读