第2章 JSP語法(JSP實(shí)用教程第3版).ppt

第2章 JSP語法(JSP實(shí)用教程第3版).ppt

ID:48726473

大?。?.62 MB

頁數(shù):51頁

時(shí)間:2020-01-26

第2章 JSP語法(JSP實(shí)用教程第3版).ppt_第1頁
第2章 JSP語法(JSP實(shí)用教程第3版).ppt_第2頁
第2章 JSP語法(JSP實(shí)用教程第3版).ppt_第3頁
第2章 JSP語法(JSP實(shí)用教程第3版).ppt_第4頁
第2章 JSP語法(JSP實(shí)用教程第3版).ppt_第5頁
資源描述:

《第2章 JSP語法(JSP實(shí)用教程第3版).ppt》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、JSP實(shí)用教程(第三版)配合《JSP實(shí)用教程(第三版)》例子源代碼一起使用PowerPoint制作張躍平耿祥義第2章JSP語法2021/7/172本章主要內(nèi)容2.1JSP頁面的基本結(jié)2.2變量和方法的聲明2.3Java程序片2.4Java表達(dá)式2.5JSP中的注釋2.6JSP指令標(biāo)記2.7JSP動(dòng)作標(biāo)記2021/7/173§2.1JSP頁面的基本結(jié)構(gòu)在傳統(tǒng)的HTML頁面文件中加入Java程序片和JSP標(biāo)簽,就構(gòu)成了一個(gè)JSP頁面。JSP頁面可由5種元素組合而成:①普通的HTML標(biāo)記符;②JSP標(biāo)記,如指令標(biāo)記、動(dòng)作標(biāo)記;③變量和方法的聲明;④Java程序片;⑤Java表達(dá)式2021/7/17

2、4當(dāng)服務(wù)器上的一個(gè)JSP頁面被第一次請(qǐng)求執(zhí)行時(shí),服務(wù)器上的JSP引擎首先將JSP頁面文件轉(zhuǎn)譯成一個(gè)Java文件,再將這個(gè)Java文件編譯生成字節(jié)碼文件,然后通過執(zhí)行字節(jié)碼文件響應(yīng)用戶的請(qǐng)求。當(dāng)多個(gè)用戶請(qǐng)求一個(gè)JSP頁面時(shí),JSP引擎為每個(gè)用戶啟動(dòng)一個(gè)線程,該線程負(fù)責(zé)執(zhí)行常駐內(nèi)存的字節(jié)碼文件來響應(yīng)相應(yīng)用戶的請(qǐng)求。這些線程由Tomcat服務(wù)器來管理,將CPU的使用權(quán)在各個(gè)線程之間快速切換,以保證每個(gè)線程都有機(jī)會(huì)執(zhí)行字節(jié)碼文件。2021/7/175例子2_1Tomcat服務(wù)器的webapps目錄的子目錄都可以作為一個(gè)Web服務(wù)目錄。本章在webapps目錄下新建一個(gè)Web服務(wù)目錄“ch2”,除非特

3、別約定,本章例子中的JSP頁面均保存在ch2中。例子2_1中,example2_1.jsp頁面包含了5種元素(效果如圖2.1所示),其中使用HTML語言的標(biāo)記讓網(wǎng)頁的背景是一幅圖像(需要將一幅圖像back.jpg保存在服務(wù)目錄ch2中).使用Java程序片顯示服務(wù)器端的時(shí)間,使用Java表達(dá)式顯示一些變量的值。2021/7/176§2.2變量和方法的聲明在“<%!”和“%>”標(biāo)記符號(hào)之間聲明變量和方法。2021/7/1772.2.1聲明變量在“<%!”和“%>”標(biāo)記符之間聲明變量,即在“<%!”和“%>”之間放置Java的變量聲明語句。變量的類型可以是Java語言允許的任何數(shù)據(jù)類

4、型,將這些變量稱為JSP頁面的成員變量。例如:<%!inta,b=10,c;Stringtom=null,jerry="loveJSP";Datedate;%>“<%!”和“%>”之間聲明的變量在整個(gè)JSP頁面內(nèi)都有效,與“<%!”、“%>”標(biāo)記符在JSP頁面中所在的書寫位置無關(guān)。JSP引擎將JSP頁面轉(zhuǎn)譯成Java文件時(shí),將“<%!”、“%>”標(biāo)記符之間聲明的變量作為類的成員變量,這些變量占有的內(nèi)存空間直到JSP引擎關(guān)閉才釋放。2021/7/178例子2_2當(dāng)多個(gè)用戶請(qǐng)求一個(gè)JSP頁面時(shí),JSP引擎為每個(gè)用戶啟動(dòng)一個(gè)線程,這些線程由JSP引擎來管理,這些線程共享JSP頁面的成員變量,因此任

5、何一個(gè)用戶對(duì)JSP頁面成員變量操作的結(jié)果,都會(huì)影響到其他用戶。例子2_2利用成員變量被所有用戶共享這一性質(zhì),實(shí)現(xiàn)了一個(gè)簡(jiǎn)單的計(jì)數(shù)器,example2_2.jsp效果如圖2.2所示。2021/7/1792.2.2定義方法在“<%!”和“%>”標(biāo)記符號(hào)之間定義方法,所定義的方法在整個(gè)JSP頁面有效,可以在Java程序片中被調(diào)用。方法內(nèi)聲明的變量只在該方法內(nèi)有效,當(dāng)方法被調(diào)用時(shí),方法內(nèi)聲明的變量被分配內(nèi)存,方法被調(diào)用完畢即可釋放這些變量所占的內(nèi)存。2021/7/1710例子2_3例子2_3中,在“<%!”和“%>”之間定義了兩個(gè)方法:multi(intx,inty)和div(intx,inty),

6、然后在程序片中調(diào)用這兩個(gè)方法。example2_3.jsp效果如圖2.3所示。2021/7/1711§2.3Java程序片在“<%”和“%>”之間插入Java程序片。一個(gè)JSP頁面可以有許多程序片,這些程序片將被JSP引擎按順序執(zhí)行。程序片中聲明的變量稱為JSP頁面的局部變量。多個(gè)客戶請(qǐng)求一個(gè)JSP頁面時(shí),Java程序片將被執(zhí)行多次,分別在不同的線程中執(zhí)行。Java程序片執(zhí)行特點(diǎn)如圖2.4所示。2021/7/1712例子2_4如果一個(gè)用戶在執(zhí)行Java程序片時(shí)調(diào)用JSP頁面的方法操作成員變量,可能不希望其他用戶也調(diào)用該方法操作成員變量,以免對(duì)其產(chǎn)生不利的影響,那么就應(yīng)該將操作成員變量的方法用

7、synchronized關(guān)鍵字修飾。例子2_4中,通過synchronized方法操作一個(gè)成員變量來實(shí)現(xiàn)一個(gè)簡(jiǎn)單的計(jì)數(shù)器。example2_4.jsp<%@pagecontentType="text/html;Charset=gb2312"%><%!intcount=0;//被用戶共享的countsynchronizedvoidsetCount()//synchronized修飾的方法

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無此問題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。