JAVA網(wǎng)絡(luò)編程:第2章 JSP基礎(chǔ)_第1頁
JAVA網(wǎng)絡(luò)編程:第2章 JSP基礎(chǔ)_第2頁
JAVA網(wǎng)絡(luò)編程:第2章 JSP基礎(chǔ)_第3頁
JAVA網(wǎng)絡(luò)編程:第2章 JSP基礎(chǔ)_第4頁
JAVA網(wǎng)絡(luò)編程:第2章 JSP基礎(chǔ)_第5頁
已閱讀5頁,還剩62頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、-第2章 JSP基礎(chǔ)-1表單標(biāo)記表單標(biāo)記FORM action= method=get|post INPUT type=maxlenth=y .actionaction屬性:屬性:E-MAILE-MAIL地址或網(wǎng)址。地址或網(wǎng)址。 methodmethod屬性:屬性:GET/POSTGET/POST標(biāo)記:表單中提供給用戶的輸入形式。標(biāo)記:表單中提供給用戶的輸入形式。第2章 JSP基礎(chǔ)2.1 JSP頁面的基本組成 2.2 JSP頁面中的注釋2.3 聲明2.4 代碼段2.5 表達(dá)式2.6 JSP指令 2.7 JSP動作 第2章 JSP基礎(chǔ)2.1 JSP頁面的基本組成 2.2 JSP頁面中的注釋2.3

2、 聲明2.4 代碼段2.5 表達(dá)式2.6 JSP指令 2.7 JSP動作 2.1 JSP頁面的基本組成 一個JSP頁面是由傳統(tǒng)的HTML頁面標(biāo)記加上JSP標(biāo)記和嵌入的Java代碼組成 由4種元素組成:HTML標(biāo)記JSP標(biāo)記JSP腳本JSP注釋2.1 JSP頁面的基本組成 JSP標(biāo)記:包括指令標(biāo)記和動作標(biāo)記。指令標(biāo)記:是為JSP引擎而設(shè)計(jì)的,它向JSP引擎發(fā)送消息,告訴引擎如何處理其余JSP頁面。動作標(biāo)記:是JSP頁面特有的標(biāo)記,它告訴Web容器去執(zhí)行某個“動作”。 JSP頁面的基本組成(續(xù)) JSP腳本:JSP頁面中插入的Java代碼聲明:用于定義特定于JSP頁面(Servlet類)的變量、方

3、法和類;代碼段:嵌入的Java語句;表達(dá)式:Java腳本中輸出語句的簡化表示形式。 例1:(1) (2) (3) (4) (5) (6) 訪問本網(wǎng)站的人有:(7) (8) 歡迎訪問本網(wǎng)站(9) (10) p(1) 是JSP指令標(biāo)記;p(4)、(5)、(7)是jsp腳本。u(4) 是JSP頁面中的聲明;u(5) 是JSP頁面的腳本,即嵌入JSP頁面中的Java語句;u(7)是JSP頁面 的表達(dá)式。JSP頁面的執(zhí)行過程 當(dāng)服務(wù)器上的一個JSP頁面第一次被請求時,Web服務(wù)器上的JSP引擎首先將JSP頁面編譯成Servlet, 然后執(zhí)行該Servlet。JSP頁面的執(zhí)行過程(續(xù)) Servlet主要

4、完成以下2項(xiàng)任務(wù):把JSP頁面中的HTML標(biāo)記交給客戶端的瀏覽器去解釋執(zhí)行。把JSP頁面中的JSP指令標(biāo)記、動作標(biāo)記、JSP聲明、代碼段和表達(dá)式交給服務(wù)器去執(zhí)行,然后將結(jié)果送給瀏覽器。JSP頁面的通用書寫規(guī)則 1. JSP頁面中HTML標(biāo)記不區(qū)分大小寫 ,但是JSP標(biāo)記和頁面中嵌入的Java代碼區(qū)分大小寫。2. 在JSP頁面中,雖然指令和腳本元素所擁有的語法不是基于XML的,但可以獲得一種可以替代的基于XML的語法。 3. 在標(biāo)記中出現(xiàn)的屬性值總是用引號括起來的:單引號或雙引號。 JSP頁面的通用書寫規(guī)則 (續(xù))4. JSP使用的URL地址要遵循 Servlet的慣例 以“/”開始表示上下文相

5、關(guān)路徑否則相當(dāng)于當(dāng)前JSP頁面所在路徑5. 在JSP文檔體中的文本中的空白符無關(guān)緊要,空白包括空格和空行。 6. 在標(biāo)記中可以使用字符” ”(反斜杠)來作為換碼字符 JSP頁面的通用書寫規(guī)則 (續(xù)) 在標(biāo)記中可以使用字符” ”(反斜杠)來作為換碼字符 原始替換%<%”第2章 JSP基礎(chǔ)2.1 JSP頁面的基本組成 2.2 JSP頁面中的注釋2.3 聲明2.4 代碼段2.5 表達(dá)式2.6 JSP指令 2.7 JSP動作 2.2 JSP頁面中的注釋 2.2.1 HTML注釋 2.2.2 隱藏注釋 2.2.3 腳本注釋 2.2.1 HTML注釋HTML注釋是使用標(biāo)簽“”創(chuàng)建的語法形式:

6、例!-This page was loaded on - JSPJSP中的中的HTMLHTML注釋不被改動地加入注釋不被改動地加入JSPJSP響應(yīng)響應(yīng)JSPJSP可執(zhí)行可執(zhí)行HTMLHTML注釋中的動態(tài)內(nèi)容注釋中的動態(tài)內(nèi)容瀏覽器會忽視瀏覽器會忽視HTMLHTML注釋注釋2.2.2 隱藏注釋 隱藏注釋也稱為JSP注釋,只能在原始JSP文件中看到。 語法形式: 例 2.2.3 腳本注釋 在JSP頁面的java腳本中使用的注釋。 其語法形式為: / 單行注釋 /* 注釋 */ 腳本注釋不僅能在原始JSP文件中看到,而且能在JSP編譯成的Servlet中看到。 例第2章 JSP基礎(chǔ)2.1 JSP頁面的

7、基本組成 2.2 JSP頁面中的注釋2.3 聲明2.4 代碼段2.5 表達(dá)式2.6 JSP指令 2.7 JSP動作 2.3 聲明2.3.1 變量聲明2.3.2 方法聲明2.3.3 聲明類聲明概述 JSP聲明:定義網(wǎng)頁范圍的變量、函數(shù)或類,讓頁面的其余部分能夠使用。 聲明的變量和方法是該頁面所對應(yīng)的Servlet類的成員變量和成員方法,聲明的類是Servlet類的內(nèi)部類。 聲明塊包含在中 。 包括變量聲明、方法聲明和類聲明三種。2.3.1 變量聲明 變量聲明:定義特定于 JSP 頁面的變量聲明的變量相應(yīng)的Servlet 類的成員變量聲明的變量可被該JSP頁面中其他任何部分使用。 聲明的變量相當(dāng)于

8、Java中的靜態(tài)變量聲明的變量類型:Java語言中允許的任何數(shù)據(jù)類型2.3.1 變量聲明變量聲明的語法形式為: 方法1: 方法2: 變量聲明注意:變量聲明后面加分號2.3.2 方法聲明 聲明的方法 Servlet 類的成員方法 聲明的方法可由頁面上所有腳本元素訪問 方法聲明方式跟Java中一樣,要給出方法返回類型方法名方法形參方法體2.3.2 方法聲明 其語法形式方法1: 方法2: 變量聲明 注意:方法中的變量不是客戶共享的 例exa2_7.jsp2.3.3 聲明類 聲明類 JSP頁面對應(yīng)Servlet類的內(nèi)部類 頁面上所有腳本元素都可創(chuàng)建該類的對象 其語法形式為: 第2章 JSP基礎(chǔ)2.1

9、JSP頁面的基本組成 2.2 JSP頁面中的注釋2.3 聲明2.4 代碼段2.5 表達(dá)式2.6 JSP指令 2.7 JSP動作 2.4 代碼段 代碼段是包含在之間的Java程序片段,包含一個或多個有效而完整的語句。 當(dāng)Web服務(wù)器接受客戶端請求時,Java程序代碼會被執(zhí)行并向客戶產(chǎn)生輸出。 其語法形式為: 變量聲明 第2章 JSP基礎(chǔ)2.1 JSP頁面的基本組成 2.2 JSP頁面中的注釋2.3 聲明2.4 代碼段2.5 表達(dá)式2.6 JSP指令 2.7 JSP動作 2.5 表達(dá)式 JSP頁面中可以在“”之間插入表達(dá)式,用于輸出表達(dá)式計(jì)算的結(jié)果。 在請求處理階段,JSP引擎計(jì)算表達(dá)式的值結(jié)果最

10、終轉(zhuǎn)換成一個相應(yīng)的字符串。 表達(dá)式的語法形式為: 表達(dá)式的組成表達(dá)式可以由以下組成部分構(gòu)成:數(shù)字和字符串的字母值數(shù)學(xué)運(yùn)算符,如+、-、*和基本數(shù)據(jù)類型的變量聲明類的對象實(shí)例在JSP中聲明方法的調(diào)用聲明類所創(chuàng)建的對象的方法調(diào)用表達(dá)式的注意事項(xiàng)(1)“%=”是一個完整的符號,“%”和“=”不能插入空格。(2)表達(dá)式可以包含任何Java表達(dá)式,只要表達(dá)式可以求值。(3) 表達(dá)式中不能插入語句,也不能以分號結(jié)束。表達(dá)式的注意事項(xiàng)(續(xù))(4)表達(dá)式是Java代碼段的一種簡單書寫方式,其功能和代碼段等效。例2: 相當(dāng)于 假如i 值為5,則: 打?。簄umber5 圖 表達(dá)式與Java 代碼段的功能等價(jià)示意

11、圖 這個數(shù)是:?% try a=Double.valueOf(string_a).doubleValue();a=a*a; /平方out.print(+平方為:+a);catch(NumberFormatException e)out.print(+請輸入數(shù)字字符); %p例2:求一個數(shù)的平方第2章 JSP基礎(chǔ)2.1 JSP頁面的基本組成 2.2 JSP頁面中的注釋2.3 聲明2.4 代碼段2.5 表達(dá)式2.6 JSP指令 2.7 JSP動作 2.6 JSP指令 JSP指令是針對JSP容器的,它將有關(guān)頁面的特殊處理信息傳送到JSP容器,告訴容器如何處理JSP網(wǎng)頁,它并不會直接產(chǎn)生任何看得見的輸

12、出。 指令的語法形式為: 2.6 JSP指令2.6.1 page指令2.6.2 include指令2.6.1 page指令 page指令用來定義和操作許多重要的依賴于頁面的屬性,這些屬性影響整個JSP文件 。 page指令可以在JSP頁面的任何地方、以任何順序出現(xiàn),而且一個頁面可以包含任意數(shù)量的page指令。 為了程序的可讀性以及好的編程習(xí)慣,最好還是把它放在JSP頁面的頂部。 page指令的語法 page指令的語法為: -第2章 JSP基礎(chǔ)-屬性描述缺省值language定義要使用的腳本語言,將來 JSP包容器支持多種語言時可使用它Javaimport定義以逗號分隔的類或包的列表,就像在通常

13、的 Java代碼中所使用的import語句那樣缺省情況下忽略buffer定義輸出流的緩沖區(qū)大小。如果值為none,則沒有緩沖與實(shí)現(xiàn)有關(guān);至少8KBautoFlush定義是否自動清除輸出流緩沖區(qū)。如為true,當(dāng)緩沖區(qū)滿時,自動把緩沖區(qū)內(nèi)容輸出給客戶;如果為false,當(dāng)緩沖區(qū)滿時,會有一個運(yùn)行時異常true-第2章 JSP基礎(chǔ)-屬性描述缺省值isThreadSafe定義頁面是否支持多個用戶的并發(fā)訪問。如果為true,則JSP引擎會同時處理多個客戶請求;如果為false,則JSP引擎會對客戶請求進(jìn)行排隊(duì),某個時刻只處理一個請求truecontentType定義JSP頁面的字符編碼方式和MIME類

14、型。它的形式可以為MIMETYPE或MIMETYPE;charset =CHARSET缺省值為text/html;ISO-8859-1info頁面中可取到的字符串無缺省extends定義頁面轉(zhuǎn)換成的Servlet類繼承的父類無缺省-第2章 JSP基礎(chǔ)-屬性描述缺省值session定義本頁是否使用session對象trueerrorPage定義頁面異常時轉(zhuǎn)向的頁面的URL地址無isErrorPage定義頁面是否為其它頁面的異常處理頁面。值為true的頁面會自動獲取Exception對象falsepageEncoding定義JSP頁面的字符編碼方式ISO-8859-1isElIgnored定義頁面

15、是否忽略EL表達(dá)式的計(jì)算與服務(wù)器種類有關(guān)page指令的注意事項(xiàng)(1)import屬性:如果不寫該屬性,JSP頁面自動引入以下4個包: java.servlet.*; java.lang.*; java.servlet.http.*; java.servlet.jsp.*。page指令的注意事項(xiàng)(2)contentType屬性: MIMETYPE的缺省值為”text/html”;CHARSET的缺省值為”ISO-8859-1”。經(jīng)常如下寫法,以支持頁面中的中文顯示:2.6.2 include指令 如果需要在一個JSP頁面中包括另一個文件,可以使用include指令。 指令的語法形式為: 2.6.

16、2 include指令 include指令的作用在JSP頁面中該指令出現(xiàn)的位置靜態(tài)插入一個文件。include指令能讓頁面內(nèi)容分成幾個組成部分分別管理。include指令的注意事項(xiàng)(1)出現(xiàn)在一個JSP頁面中的include指令的數(shù)量不受限制。 (2)被包含文件的URL路徑一定是和發(fā)出指令的JSP頁面相對的路徑。 (3)該指令采取的是靜態(tài)插入方式 靜態(tài)插入,是指當(dāng)前的JSP頁面和被嵌入的文件合并成一個新的JSP頁面,然后JSP引擎再將這個新頁面轉(zhuǎn)換成Servlet。 例3exa2_3.jsp分為三部分:head(頁頭)、body(頁體)、tail(頁尾),分別對應(yīng)三個JSP頁面head.jsp

17、、body.jsp、tail.jsp。在exa2_3.jsp中利用include指令包含這三個文件.head.jsp include指令示例 JSP網(wǎng)絡(luò)編程學(xué)習(xí)網(wǎng)站 body.jsp 本網(wǎng)站有好多JSP學(xué)習(xí)資料等著你,趕快進(jìn)入吧! tail.jsp 制作單位:北京大學(xué)醫(yī)學(xué)部計(jì)算機(jī)教研室ex2_3.jsp include指令示例 第2章 JSP基礎(chǔ)2.1 JSP頁面的基本組成 2.2 JSP頁面中的注釋2.3 聲明2.4 代碼段2.5 表達(dá)式2.6 JSP指令 2.7 JSP動作 2.7 JSP動作 JSP動作標(biāo)記是JSP頁面中使用的一種特殊的標(biāo)記,它利用XML語法格式的標(biāo)記來控制JSP引擎完成

18、某種功能。 JSP動作標(biāo)記可以完成很多功能,如實(shí)例化對象、與服務(wù)器端資源進(jìn)行通信、提高組件的可重用性和可維護(hù)性、在JSP頁面中包括一個外部的資源、把用戶重定向到另外的頁面等。 2.7 JSP動作1. :在頁面被請求的時候引入一個文件2. :把請求轉(zhuǎn)到一個新的頁3. :根據(jù)瀏覽器類型為Java插件生成OBJECT或EMBED標(biāo)記2.7 JSP動作4. :尋找或者實(shí)例化一個JavaBean 5. :設(shè)置JavaBean的屬性6. :輸出某個JavaBean的屬性 2.7.1 動作標(biāo)記 用來在JSP頁面中動態(tài)包含一個文件,包含頁面與被包含文件是彼此獨(dú)立的,互不影響。 動作如果包含的是一個靜態(tài)文件就直

19、接輸出給客戶端,由客戶端的瀏覽器負(fù)責(zé)顯示如果包含的是一個動態(tài)文件則由服務(wù)器的JSP引擎負(fù)責(zé)執(zhí)行,把運(yùn)行結(jié)果返回給客戶端顯示出來。 動作語法jsp:include page=relativeURL| flush=true|false / page屬性表示要包含的文件的相對地址(字符串或JSP表達(dá)式) flush屬性默認(rèn)為false,若為true則表示當(dāng)緩沖區(qū)滿時,緩沖區(qū)將被清空。 include指令和include 動作區(qū)別 (1)嵌入的內(nèi)容。include指令嵌入的是靜態(tài)的文本或頁面,而include動作包含的可以是靜態(tài)或動態(tài)內(nèi)容。(2)嵌入被包含頁面的時間。include動作在處理請求時才將

20、被包含頁面嵌入進(jìn)來,而include指令是在JSP文件被轉(zhuǎn)換成Servlet的時候引入文件。include指令和include 動作區(qū)別 (3)共享局部變量。用include動作時,在頁面中聲明的變量不可用于另一文件;而在用include指令時,當(dāng)前頁面和被包含頁面可以共享變量。(4)修改的生效時間。用include指令時,修改的生效需刷新頁面或去掉已經(jīng)編譯成的Servlet;而用include動作時,被包含頁面的修改會隨時生效。include指令和include 動作區(qū)別(5)變量名沖突。用include指令時注意新生成的JSP頁面要符合JSP語法要求,應(yīng)該避免變量名的沖突。而用include動作不存在變量名沖突問題。 例4 : ex2_4.jsp include動作示例 2.7.2 動作標(biāo)記 標(biāo)記提供了“名稱值”信息,用于將附加在request中的參數(shù)發(fā)送至轉(zhuǎn)發(fā)的頁面,可與 、和標(biāo)記一起使用。2.7.3 動作標(biāo)記 動作將當(dāng)前頁面的執(zhí)行過程終止忽略它的輸出并且把請求轉(zhuǎn)向一個新的頁。 語法格式一:jsp:f

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論