1. 程式人生 > >EL表示式----JSP11個隱式物件----EL函式----JSTL核心標籤if,foreach

EL表示式----JSP11個隱式物件----EL函式----JSTL核心標籤if,foreach

一、EL表示式
語法:${EL表示式}
特點:永遠沒有空指標異常。如果物件是null,輸出空字串
      只適合顯示資料
原理:${p}
pageContext.findAttribute("p");
實際上EL表示式是從域中搜索該物件


1、作用:替換掉JSP中的java表示式,即替換掉<%=表示式%>
它屬於JSP技術
2、獲取資料
a.b:呼叫a物件的getB()方法
根據索引獲取陣列和List中的指定位置上的元素。索引從0開始
根據key的值,獲取Map中的value


不能夠獲取set中的元素,只能靠遍歷。


3、執行簡單的算術和邏輯運算
empty運算子:判斷物件是否為null,字串是否為"",集合中有沒有元素。
   集合物件本身不是null,但其中如果沒有任何元素,也是空。


EL不支援字串連線操作
三元運算子


.和[]運算子:有些情況下通用。
.能做到的,[]都能做到。[]能做到的,.不一定能做到


[]能做到名稱不符合java命名規範的取值

 比如:${user.name}或者${user['name']}單引號或雙引號

4、獲取web開發常用的物件
11個隱式物件
pageContext:作用和JSP中的內建物件一樣。代表javax.servlet.jsp.PageCOntext物件本身

pageScope:代表PageContext中的那個域Map
requestScope:代表ServletRequest中的那個域Map
sessionScope:代表HttpSession中的那個域Map
applicationScope:代表ServletContext中的那個域Map


param:儲存了所有請求引數的Map物件.key:引數名,value:引數值
paramValues:儲存了所有請求引數的Map物件。key:引數名,value:引數值陣列


header:儲存了所有請求訊息頭的Map物件。key:頭名稱,value:頭值
headerValues:儲存了所有請求訊息頭的Map物件。key:頭名稱,value:頭值陣列


cookie:儲存了所有cookie的Map物件:key:cookie物件的name,value:Cookie物件本身


initParam:儲存了所有全域性配置初始化引數的Map。key:引數名稱,value:引數值
 web.xml   context-param標籤


5、呼叫java靜態方法


編寫步驟:
1、編寫一個類,定義一個靜態方法
package com.itheima;


public class SomeClass {
public static String method(String value){
return value.toUpperCase();
}
}
2、在WEB-INF目錄下建立一個副檔名為tld的xml檔案。
(參考:C:\apache-tomcat-6.0.35\webapps\examples\WEB-INF\jsp2\jsp2-example-taglib.tld)
<taglib xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
version="2.0">
<tlib-version>1.0</tlib-version>
<short-name>myfn</short-name>
<uri>http://www.itheima.com/jsp/myfn</uri>
<function>
<description>To uppercase</description>
<name>method</name>
<function-class>com.itheima.SomeClass</function-class>
<!-- 方法簽名,出了基本型別,都要寫全名:包名+類名 -->
<function-signature>java.lang.String method( java.lang.String )</function-signature>
</function>
</taglib>
3、(如果把tld檔案放在了WEB-INF根目錄下,該步驟是可選的)
在web.xml中將tld的uri和實際的tld檔案進行配對
<jsp-config>
<taglib>
<taglib-uri>http://www.itheima.com/jsp/myfn</taglib-uri>
<taglib-location>/WEB-INF/myfn.tld</taglib-location>
</taglib>
</jsp-config>
4、在JSP中使用
<%@ taglib uri="http://www.itheima.com/jsp/myfn" prefix="myfn"%>
${myfn:method("abcdee") }
二、JSTL:Java Standard Tag Libary
1、Core:核心標籤 
c:if
作用:java中if語句
屬性:
test:必須的。支援表示式(EL和Java表示式),返回值必須是boolean
test值為true,則顯示標籤主體內容

var:存test運算結果的變數
scope:存變數的域。page|request|session|application
預設是page


c:forEach
作用:遍歷
屬性:
items:要遍歷的集合或陣列
var:指定引用當前元素的名稱
begin:開始索引
end:結束索引
step:步長
varStatus:取一個名稱引用一個物件
getIndex():索引
getCount():序號
isLast():是否是最後一個
isFirst():是否是第一個




2、Fmt:格式化,國際化有關
3、XML:操作XML有關
4、SQL:操作資料庫
5、function:EL函式


使用jstl,必須匯入響應的jar
jstl.jar standard.jar

相關推薦

EL表示式----JSP11物件----EL函式----JSTL核心標籤if,foreach

一、EL表示式 語法:${EL表示式} 特點:永遠沒有空指標異常。如果物件是null,輸出空字串       只適合顯示資料 原理:${p} pageContext.findAttribute("p"); 實際上EL表示式是從域中搜索該物件 1、作用:替換掉JSP中的jav

JSP基本功 pageContext物件page,request,session,application四物件的使用及區別JSP執行原理和九大物件及下載檔案、訪問次數的程式碼總結出el表示式簡單

pageContext物件     pageContext物件是JSP技術中最重要的一個物件,它代表JSP頁面的執行環境,這個物件不僅封裝了對其它8大隱式物件的引用,它自身還是一個域物件,可以用來儲存資料。並且,這個物件還封裝了web開發中經常涉及到的一些常用操作,例如引入和跳轉其它資源、檢索其

jsp、el表示式物件 + 作用域

jsp 隱式物件  config      jsp的配置資訊 page        jsp自身物件(this) exception   異常物件(isErrorPage=true) response

EL表示式EL物件

EL表示式 1、作用   在JSP中取得作用域、請求、標頭與Cookie裡的值,以及做一些簡單的運算或判斷。 2、環境   直接編寫。  可以使用page指示元素的isELIgnored屬性(預設是false),來設定JSP網頁是否使用EL。也可以在web.xml中設定<el-ignored&g

servlet三大作用域 jsp四大作用域 jsp九內建物件 el表示式11隱藏物件

Servlet三個作用域 *request -->表示一個請求,只要發出一個請求就會建立一個request,它的作用域:僅在當前請求中有效。 *session -->伺服器會為每個會話建立一個session物件,所以session中的資料可供當前會話中所有servlet共享。會話

說一下表達語言(EL)的物件及其作用。

答:EL的隱式物件包括:pageContext、initParam(訪問上下文引數)、param(訪問請求引數)、paramValues、header(訪問請求頭)、headerValues、cookie(訪問cookie)、applicationScope(訪問application作用域

jsp EL表示式 11隱含物件

lEL表示式語言中定義了11個隱含物件,使用這些隱含物件可以很方便地獲取web開發中的一些常見物件,並讀取這些物件的資料。 l語法:${隱式物件名稱}  :獲得物件的引用 隱含物件名稱 描       述 pageContext 對應於JSP頁面中的pag

為何使用EL表示式能夠訪問valueStack中物件的屬性、採用OGNL表示式建立List/Map集合物件

為何使用EL表示式能夠訪問valueStack中物件的屬性、採用OGNL表示式建立List/Map集合物件 原因是Struts2對HttpServletRequest作了進一步的封裝。簡略程式碼如下:  public class StrutsRequestWrapper extends HttpServ

EL表示式foreach巢狀迴圈

集合List中加List泛型的泛型 List<RiskEvaSuitQuestion> riskEvaSuitQuestionList = riskEvaSuitQuestionService.getQueList(1000036L);  model.add

物件

jsp 隱式物件(9個) config:jsp的配置資訊 page:jsp自身物件(this) exception:異常物件(isErrorPage=true) response:響應 out:響應字元流 pageContext:頁面作用域 request:請求作用域 變數型別 Http

Jsp物件

什麼是隱式物件?在——jspService()方法中我們可以找到一些區域性變數,這些區域性變數就叫隱式物件。是JSP容器為每個頁面提供的Java物件,開發者可以直接使用它們而不用顯式宣告。JSP隱式物件也被稱為預定義變數。 JSP所支援的九大隱式物件: 物件

建構函式建立物件作為引數 / 使用函式表示法的顯型別轉換

看個建構函式建立隱式物件作為引數的例子 #include<iostream> using namespace std; class A { int a; int b; public: A() { cout << "建構函式" << endl; };

18-撩課JavaWeb之JSP動作標籤物件

標籤動作 頁面包含 <jsp:include page="被包含的頁面"></jsp:include> 動態包含 各自翻譯自己的頁面,然後再引入 請求轉發 <jsp:forward page="要轉發的資源"></jsp:for

javaweb基礎第十課:jsp的9大物件

  這節課我們講jsp的九大隱式物件     重點是前五個,response物件用的都少,這節課主講out和request   jsp_teach02.jsp <%@ page contentType="text/html

重新學javaweb----九大物件

JSP九大隱式物件:在翻譯過來的Servlet中Service方法自動幫我們前置定義的九個物件,可以在jsp頁面中直接使用 page(代指該jsp翻譯過去的那個servlet) confing(ServletConfig)

Jsp語法和九大物件

一、什麼是JSP JSP全稱為Java Server Pages,它是一種用於開發動態web資源的技術。JSP允許在html頁面中巢狀java程式碼在,主要作用是為使用者提供動態資料。 二、JSP語法 JSP模板元素 jsp的模板元素就是指的是html,html為jsp頁

四大域物件和9大物件

1.四大作用域:一.ServletContext(ServletContext類)①在jsp中為 application②生命週期:1.開始:web應用啟動時建立整個web中的ServletContext物件.2.死亡:伺服器關閉或Web應用被移除時,ServletCont

jsp的九大物件及其作用域

  九大物件:   內建物件(又叫隱含物件,有9個內建物件):不需要預先宣告就可以在指令碼程式碼和表示式中隨意使用   1-out:   javax.servlet.jsp.JspWriter型別,代表輸出流的物件。作用域為page(頁面執行期)   request:jav

JSP四大作用域和九種物件

JSP 會被編譯為一個Servlet類 ,執行的時候是一個Servlet例項。 1.四大作用域 1.pageContext 當前頁面    通過pageContext.setAttribute(key,value)的資料,只能在當前頁面訪問,在其他頁面就不能訪問了。

JSTL核心標籤庫和EL表示式的聯合使用

10.2  使用EL表示式顯示String型別變數的示例 在Servlet檔案中使用以下程式碼:將String變數存入到request作用域中。 String simple_string_username = "gaohongyan";  request.setAttribute("simpl