JSP EL表達式使用

##1.EL全名爲Expression Languagecookie

out.print(str)	<%=str%>	${str}

例子: Hi! <%=username%> 和 Hi! ${username}是同樣的session

只要是支持servlet2.4/jsp2.0的Container就均可以在jsp網頁中直接使用elapp

EL現在已是一項成熟,標準的技術jsp

##2.EL語法:code

${sessionScope.user.sex}

意思:從session的範圍中,取得用戶的性別對象

全部EL都是以${爲起始、以}爲結尾的。get

##3.EL提供.和[]兩種運算符來存取數據。servlet

${sessionScope.user.sex} = ${sessionScope.user["sex"]}

.和[]能夠同時使用:%{sessionScope.shoppingCart[0].price}it

##4.EL隱含對象io

jsp中有9個隱含對象,EL有11個隱含對象

經常使用的El隱含對象:

  • pageScope 取得Page範圍的屬性名稱所對應的值

  • requestScope 取得request範圍的屬性名稱所對應的值

  • sessionScope 取得session範圍的屬性名稱所對應的值

  • applicationScope 取得application範圍的屬性名稱所對應的值

  • param 如同ServletRequest.getParameter(String name)、回傳String類型的值

  • cookie 如同HttpServletRequest.getCookies()

  • initParam 如同ServletContext.getInitParameter(String name)

不經常使用的EL對象:

  • pageContext 表示此jsp的PageContext
  • paramValue 如同ServletRequest.getParameterValues(String name),回傳String[]類型的值

##算術運算符

  • + 加 ${ 17 + 5 } 22
  • - 減 ${ 17 - 5 } 12
  • * 乘 ${ 17 * 5 } 85
  • /或div 除 ${ 17 / 5 } 3
  • %或mod 餘數 ${ 17 % 5 } 2

##關係運算符

  • ==或eq 等於 ${ 5 == 5 } true
  • !=或ne 不等於 ${ 5 != 5 } false
  • <或lt 小於 ${ 3 < 5 } true
  • &gh;或gt 大於 ${ 3 > 5 } false
  • <=或le 小於等於 ${ 3 <= 5 } true
  • >=或ge 大於等於 ${ 3 >= 5 } false

###注意:

在使用EL關係運算符時,不能寫成: ${param.p1} == ${param.p2} 或者${%{param.p1} == ${param.p2} } 而應寫成: ${param.p1 == param.p2}

##邏輯運算符

&&或and 交集 ${ A && B} true/false ||或or 並集 ${ A || B} true/false !或not 非 ${ !A } true/false

##注意:EL能夠和常量混用,可是要注意表達式是不行的

相關文章
相關標籤/搜索