好久之前的筆記,現(xiàn)在整理一起發(fā)了碑隆。赠法。。
EL表達(dá)式的語法是:${expression}.
1.獲取request牺荠,session,context里的值:
request.setAttribute("senninha","request");
session.setAttribute("senninha","session");
context.setAttribute("senninha","context");
${senninha} 將獲取到request的值驴一,獲取attribute的時(shí)候是按request-->session-->context 的順序(由小到大)走的
獲取request的parameter參數(shù)也很簡單:
${param["name"]} or ${param.name} 即可獲取到表達(dá)的參數(shù)
2.EL支持的一些算術(shù)表達(dá)和邏輯運(yùn)算
a.大于等于 >= ge(grater equals) ${1 ge 0} = true;
b.諸如此類
c.也支持java的三目運(yùn)算符:
${(3 ge 2) == (3 ge 4) ? "yes they are equals":"no they are not equals"}
這樣就可以很方便顯示
d.empty 判讀是否為空:
${empty array} 如果為空(對于集合來說,對于一般對象則是表示是否為null) 則顯示true。
3.EL表達(dá)式也有內(nèi)置對象:
a.pageContext
b.pageScope
c.requestScope:相當(dāng)于request變量的map集合
d.sessionScope:相當(dāng)于session變量的map集合
e:applicationScope:相當(dāng)于application變量的map集合
f:param:相當(dāng)于request的參數(shù)值的map:
g:paramValues:request的參數(shù)組名parameter[] 的map
h:header:request的header的Map
i:headerValues:request的header[] 數(shù)組的map
有了這些就可以避免1中在多個(gè)同名值的時(shí)候無法選的問題了灶壶。
如下:
${requestScope.senninha}
${sessionScope.senninha}
${applicationScope.senninha}
當(dāng)param或者h(yuǎn)eader內(nèi)存在多個(gè)同名值的時(shí)候:
如下:
${paramValues.name[1]}
適合在表格輸入的時(shí)候使用