神奇的EL表示式
阿新 • • 發佈:2020-12-13
目錄
EL表示式簡介
EL(Expression Language) 是為了使JSP寫起來更加簡單。表示式語言的靈感來自於 ECMAScript 和 XPath 表示式語言,它提供了在 JSP 中簡化表示式的方法,讓Jsp的程式碼更加簡化。
EL語法
在JSP中訪問模型物件是通過EL表示式的語法來表達。所有EL表示式的格式都是以“ ” 表 示 。 例 如 , {}”表示。例如, ”表示。例如,{ userinfo}代表獲取變數userinfo的值。當EL表示式中的變數不給定範圍時,則預設在page範圍查詢,然後依次在request、session、application範圍查詢。也可以用範圍作為字首表示屬於哪個範圍的變數,例如:${ pageScope. userinfo}表示訪問page範圍中的userinfo變數。
具體用法
話不多說直接上程式碼
<form action="${pageContext.request.contextPath}/UpLoad" method="post" enctype="multipart/form-data">
上傳:<input type="file" name="uploadFile1" /> <br/><br/>
上傳:<input type="file" name="uploadFile2" /> <br/><br/>
上傳:<input type="file" name="uploadFile3" /> <br/><br/>
<input type="submit" />
</form>
在這段程式碼中 ==${pageContext.request.contextPath}==可以直接獲取當前專案的路徑,如果不用EL表示式就得用java程式碼
<%
request.getContextPath();
%>
雖然看上去程式碼量更少一點,但是會導致程式碼的結構更加難看,不容易閱讀使人噁心。這也是jsp的通病,無論怎麼排版都不會很整潔,優雅。
運算子
-
-
- / div 加減乘除
-
操作符 | 描述 | 操作符 | 描述 |
---|---|---|---|
+ | 加 | > gt | 測試是否大於 |
- | 減 | <= le | 測試是否小於等於 |
* | 乘 | >= ge | 測試是否大於等於 |
/ div | 除 | && and | 測試邏輯與 |
% mod | 取模 | || or | 測試邏輯或 |
== eq | 測試是否相等 | ! not | 測試取反 |
!= ne | 測試是否不等 | empty | 測試是否空值 |
< lt | 測試是否小於 | . [] | 取值 |
取引數中的值
可以訪問引數中取值(上一頁面的表單或查詢字串的引數)。用法如下:
${param . name} 相當於request.getParameter (name)
${paramValues. name} 相當於 request.getParamterValues(name)