JSP EL表示式的詳細介紹
一 、JSP EL語言定義
E L(Expression Language) 目的:為了使JSP寫起來更加簡單。
表示式語言的靈感來自於 ECMAScript 和 XPath 表示式語言,它提供了在 JSP 中簡化表示式的方法。它是一種簡單的語言,基於可用的名稱空間(PageContext 屬性)、巢狀屬性和對集合、操作符(算術型、關係型和邏輯型)的訪問符、對映到 Java 類中靜態方法的可擴充套件函式以及一組隱式物件。
EL 提供了在 JSP 指令碼編制元素範圍外使用執行時表示式的功能。指令碼編制元素是指頁面中能夠用於在 JSP 檔案中嵌入 Java 程式碼的元素。它們通常用於物件操作以及執行那些影響所生成內容的計算。JSP 2.0 將 EL 表示式新增為一種指令碼編制元素。
二、JSP EL簡介
1、語法結構
${expression}
2、[ ]與.運算子
EL 提供“.“和“[ ]“兩種運算子來存取資料。
當要存取的屬性名稱中包含一些特殊字元,如.或?等並非字母或數字的符號,就一定要使用“[ ]“。例如:
${user.My-Name}應當改為${user["My-Name"] }
如果要動態取值時,就可以用“[ ]“來做,而“.“無法做到動態取值。例如:
${sessionScope.user[data]}中data 是一個變數
3、變數
EL存取變數資料的方法很簡單,例如:${username}。它的意思是取出某一範圍中名稱為username的變數。
因為我們並沒有指定哪一個範圍的username,所以它會依序從Page、Request、Session、Application範圍查詢。
假如途中找到username,就直接回傳,不再繼續找下去,但是假如全部的範圍都沒有找到時,就回傳null。
屬性範圍在EL中的名稱
Page PageScope
Request RequestScope
Session SessionScope
Application ApplicationScope
二、JSP EL 中的有效表示式
有效表示式可以包含文字、操作符、變數(物件引用)和函式呼叫。我們將分別瞭解這些有效表示式中的每一種:
1、文字
JSP 表示式語言定義可在表示式中使用的以下文字:
2、操作符
JSP 表示式語言提供以下操作符,其中大部分是 Java 中常用的操作符:
3、隱式物件
JSP 表示式語言定義了一組隱式物件,其中許多物件在 JSP scriplet 和表示式中可用:
此外,還提供幾個隱式物件,允許對以下物件進行簡易訪問:
除了上述兩種型別的隱式物件之外,還有些物件允許訪問多種範圍的變數,如 Web 上下文、會話、請求、頁面:
三、特別強調:
1、注意當表示式根據名稱引用這些物件之一時,返回的是相應的物件而不是相應的屬性。例如:即使現有的 pageContext 屬性包含某些其他值,${pageContext} 也返回 PageContext 物件。
2、 注意 <%@ page isELIgnored="true" %> 表示是否禁用EL語言,TRUE表示禁止.FALSE表示不禁止.JSP2.0中預設的啟用EL語言。
四、舉例說明
1、例如,
< %=request.getParameter(“username”)% > 等價於 ${ param.username }
2、例如,但是下面的那句EL語言可以完成如果得到一個username為空,則不顯示null,而是不顯示值。
<%=user.getAddr( ) %> 等價於 ${user.addr}。
3、例如:
<% =request.getAttribute(“userlist”) %> 等價於$ { requestScope.userlist }
4、例如,原理如上例3。
${ sessionScope.userlist } 1
${ sessionScope.userlist } 2
${ applicationScope.userlist } 3
${ pageScope.userlist } 4
${uselist} 含義:執行順序為4 1 2 3。
“.”後面的只是一個字串,並不是真正的內建物件,不能呼叫物件。
4、例如,
<%=user.getAddr( ) %> 等價於 ${user.addr}
第一句前面的user,為一個變數。
第二句後面user,必須為在某一個範圍裡的屬性。
相關推薦
JSP EL表示式詳細介紹
一、JSP EL語言定義 E L(Expression Language) 目的:為了使JSP寫起來更加簡單。 表示式語言的靈感來自於 ECMAScript 和 XPath 表示式語言,它提供了在 JSP 中簡化表示式的方法。它是一種簡單的語言,基於可用的名稱空間(Pa
JSP EL表示式的詳細介紹
一 、JSP EL語言定義 E L(Expression Language) 目的:為了使JSP寫起來更加簡單。 表示式語言的靈感來自於 ECMAScript 和 XPath 表示式語言,它提供了在 JSP 中簡化表示式的方法。它是一種簡單的語言,基於可用的名稱空間(P
jsp EL表示式和JSTL
課程內容 1.servlet—->jsp 2.EL表示式 3.JSTL 課堂筆記 一、Servlet—jsp 二、EL表示式 User rs = request.getAttribute(“rsNew”) <%=rs
javaweb jsp&el表示式&jstl 解析
JSP & EL & JSTL jsp Java Server Page 什麼是jsp 從使用者角度看待 ,就是是一個網頁 , 從程式設計師角度看待 , 其實是一個java類, 它繼承了servlet,所以可以直接說jsp 就是一個Se
java web javaEE ,jsp EL表示式和JSTL標籤if-else if-else四種用法
一.條件運算子${user.gender==1?'男':'女'}二.if()<c:if test="${2>1}">code..</c:if>code會在test屬性為true時執行三.if()-else{}<c:choose> &
JSP+EL表示式學習
jsp是可以在傳統 HTML頁面插入java程式碼 1.JSP原理 (1)當用戶訪問一個JSP頁面時,回想一個Servlet容器(Tomcat)發出請求; (2)如果是第一次請求頁面,或頁面有所改動,則servlet容器首先要把JSP頁面(假設為test.jsp)
JSP EL表示式獲取資料
EL表示式基本格式:${} EL表示式只能獲取4大域裡面的引數:(page,request,sission,applition) EL表示式要獲取資料的格式:${p} p是4大域裡獲取的引數 <jsp:useBean id="p" class="domain
jsp EL表示式 11個隱含物件
lEL表示式語言中定義了11個隱含物件,使用這些隱含物件可以很方便地獲取web開發中的一些常見物件,並讀取這些物件的資料。 l語法:${隱式物件名稱} :獲得物件的引用 隱含物件名稱 描 述 pageContext 對應於JSP頁面中的pag
[JSP]EL表示式和JSTL標籤遍歷取值物件和陣列與原來的對比
》》取出放進了request的key裡list,list含有物件 原: <%@page import="com.yiki.dbutil.*"%> <%@ page languag
JSP---EL表示式中文亂碼(Tomcat伺服器)解決方法
JSP和Servlet傳值時,使用EL表示式經常出現中文亂碼問題 解決方法如下: 1.找到apache-tomcat的資料夾所在處,例如E盤. 2.開啟E:\apache-tomcat-6.0.30\
JSP&&EL表示式
1EL表示式 2.1簡介 EL表示式替代jsp表示式,因為開發jsp頁面的時候遵守原則:在jsp頁面中儘量少寫甚至不寫java程式碼。 EL表示式作用: 向瀏覽器輸出域物件中的變數或表示式計算結果
jsp el表示式跳轉servlet空指標問題
今天在學el表示式的時候發現了個非常非常無語的問題,jsp跳轉到servlet的時候出現了空指標,結果我一行一行的找到一個字元一個字元的找,終於找到了問題,,,<input type="hidden" name="id" value="${contact.id } "/
菜鳥程式猿之JSP+EL表示式
一、JSP 1.jsp介紹 是SUN公司提供動態的web技術之一。Servlet顯示功能時,非常麻煩,編寫與程式碼維護非常麻煩; 通過檢視..\apache-tomcat-7.0.53\work\...\index_jsp.java發現該類繼承了org.apach
程式中JSP EL表示式沒有執行的可能原因
1. 應用程式伺服器不支援JSP2.0 2. web.xml中沒有宣告Servlet 2.4或更高 3. JSP頁面中使用<%@page %>設定了isELIgnored=true 4. web.xml中<jsp-config>中配置了<el-
JavaWeb基礎Day17 (JSP EL表示式 jstl標籤庫 beanutil工具類)
JSP jsp的實質就是指在html介面中嵌入Java程式碼 jsp指令碼 <% Java程式碼 %> 相當於寫在service方法中。 <%=java 變數或者表示式 %> 相當於在service 內部寫了 out.println
JSP第四篇【EL表示式介紹、獲取各類資料、11個內建物件、執行運算、回顯資料、自定義函式、fn方法庫】
什麼是EL表示式? 表示式語言(Expression Language,EL),EL表示式是用”${}”括起來的指令碼,用來更方便的讀取物件! EL表示式主要用來讀取資料,進行內容的顯示!
【Web篇05】JSP、JSP表示式、JSP四個域、EL表示式、EL四個域 之間的區別
一、JSP Java ServerPages,即java伺服器頁面,本質是Servelt,存放在伺服器中,用於頁面顯示; 它的主要構成有HTML網頁程式碼、Java程式碼片段、JSP標籤幾部分組成,字尾是.jsp。 (1)JSP指令碼元素:是嵌入到JSP中Java程式碼段,格式以**<
jsp、el表示式的隱式物件 + 作用域
jsp 隱式物件 config jsp的配置資訊 page jsp自身物件(this) exception 異常物件(isErrorPage=true) response
JSP、JavaBean以及EL表示式
1 JSP 1.1 JSP頁面註釋 HTML的註釋,不會消失,可以在瀏覽器中通過檢視原始碼看到 <!-- 註釋 --> JSP註釋:轉化階段就會消失,只能被開發人員看到 <%-- JSP註釋 --%> Java註釋:編譯階段會消
jsp頁面中el表示式不生效
問題描述: el表示式不進行解析,直接輸出${}在頁面上 解決方案: 第一種: Servlet2.3預設是不支援EL表示式的,Servlet2.4預設支援,可以修改web.xml中的web-app標籤下的version屬性為2.4即可解決 第二種: