版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
<JSP程序設(shè)計>(第2版)第2章
配合<JSP程序設(shè)計(第2版)代碼>一起使用Powerpoint制作:張躍平耿祥義普通高等教育“十一五”國家級規(guī)劃教材JSP頁面與JSP標記
主要內(nèi)容JSP頁面的基本結(jié)構(gòu)變量和方法的聲明Java程序片表達式JSP中的注釋JSP指令標記JSP動作標記難點Java程序片的運行原理include指令標記與include動作標記關(guān)鍵實踐編寫一個JSP頁面,讓該JSP頁面包含5種基本的元素編寫含有JSP指令標記的JSP頁面編寫含有JSP動作標記的JSP頁面第2章導(dǎo)讀2§2.1JSP頁面的基本結(jié)構(gòu)JSP頁面可由5種元素組合而成:①
普通的HTML標記符;②JSP標記,如指令標記、動作標記;③
變量和方法的聲明;④Java程序片;⑤Java表達式;JSP頁面的運行原理:把JSP頁面中普通的HTML標記符號,交給客戶的瀏覽器執(zhí)行顯示。
JSP標記、數(shù)據(jù)和方法聲明、Java程序片由Tomcat服務(wù)器負責(zé)執(zhí)行,將需要顯示的結(jié)果發(fā)送給客戶的瀏覽器。
Java表達式由Tomcat服務(wù)器負責(zé)計算,將結(jié)果轉(zhuǎn)化為字符串,交給客戶的瀏覽器負責(zé)顯示。
3例子1例子1中,example2_1.jsp頁面包含了5種元素,頁面效果如圖2.1。41.在JSP頁面的標記符
“<%!”和“%>”之間聲明的變量稱作JSP頁面的成員變量。
例2-22.在JSP頁面的標記符
“<%!”和“%>”之間聲明方法。該方法在整個JSP頁面有效。例2-3§2.2變量和方法的聲明5例子2例子2利用成員變量被所有用戶共享這一性質(zhì),實現(xiàn)了一個簡單的計數(shù)器,頁面效果如圖2.2。6例子3例子3中,example2_3.jsp在“<%!”和“%>”之間聲明定義了兩個方法:getArea(doublea)和getLength(doublea),在程序片中調(diào)用這兩個方法,分別計算園的面積和周長。example2_3.jsp頁面效果如圖2.3。7§2.3Java程序片
在“<%”和“%>”之間插入Java程序片。
程序片中聲明的變量稱為JSP頁面的局部變量。
多個客戶請求一個JSP頁面時,Java程序片將被執(zhí)行多次,分別在不同的線程中執(zhí)行
。例2-4,例2-58例子4例子4中,通過synchronized方法操作一個成員變量來實現(xiàn)一個簡單的計數(shù)器。example2_4.jsp<%@pagecontentType="text/html;Charset=GB2312"%><HTML><BODY><%!intcount=0;//被用戶共享的countsynchronizedvoidsetCount(){//synchronized修飾的方法count++;}%><%setCount();//程序片中調(diào)用同步方法
out.println("您是第"+count+"個訪問本站的用戶");%></BODY></HTML>9例子5例子5通過將程序片分割成幾部分,來驗證用戶輸入的E-mail地址中是否含有非法的字符,頁面效果如圖2.5。10§2.4
表達式“<%=”和“%>”之間可以是一個Java表達式。表達式的值由服務(wù)器負責(zé)計算,并將計算結(jié)果用字符串形式發(fā)送到客戶端顯示。例2-611例子6例子6計算表達式的值,頁面效果如圖2.6。example2_6.jsp<%@pagecontentType="text/html;charset=GB2312"%><HTML><BODYbgcolor=cyan><FONTsize=3><%doublex=0.9,y=3;%><P>Sin(<%=x%>)除以<%=y%>等于<%=Math.sin(x)/y%><p><%=y%>的平方是:<%=Math.pow(y,2)%><%x=19;y=32;%><P><%=x%>乘以<%=y%>等于<%=x*y%><P><%=y%>的平方根等于<%=Math.sqrt(y)%><P><%=y%>大于<%=x%>嗎?回答:<%=y>x%></FONT></BODY></HTML>12§2.5JSP中的注釋
1.HTML注釋格式:
<!--注釋內(nèi)容-->
2.JSP注釋格式:
<%--注釋內(nèi)容--%>
注:程序片中的注釋//例2-7例子7中的JSP頁面使用了HTML注釋和JSP注釋。
example2_7.jsp
13§2.6JSP指令標記2.6.1page指令page指令用來定義整個JSP頁面的一些屬性和這些屬性的值。page指令標記可以指定如下屬性的值contentType、import、language、session、buffer、auotFlush、isThreadSafe、pageEncoding。屬性值用單引號或雙引號括起來??梢杂靡粋€page指令指定多個屬性的值,也可以使用多個page指令分別為每個屬性指定值.page指令的作用對整個JSP頁面有效,與其書寫的位置無關(guān),習(xí)慣把page指令寫在JSP頁面的最前面。例如:
<%@page屬性1=“屬性1的值”屬性2=“屬性2的值”……%>或
<%@page屬性1="屬性1的值"%><%@page屬性2="屬性2的值"%>……<%@page屬性n=“屬性n的值”%>142.6.1page指令__language屬性
定義JSP頁面使用的腳本語言,該屬性的值目前只能取"java"。例如:<%@pagelanguage="java"%>注:JSP頁面默認有如上page指令。152.6.1page指令__import屬性
該屬性的作用是為JSP頁面引入Java運行環(huán)境提供的包中的類,這樣就可以在JSP頁面的程序片部分、變量及函數(shù)聲明部分、表達式部分使用包中的類。例如:<%@pageimport="java.io.*","java.util.Date"%>注:JSP頁面默認import屬性已經(jīng)有“java.lang.*”、“javax.servlet.*”等值。162.6.1page指令_contentType屬性
contentType屬性值確定JSP頁面響應(yīng)的MIME(MultipurposeInternetMailExtention)類型和JSP頁面字符的編碼。例如:<%@pagecontentType="text/html;charset=GB2312"%><%@pagecontentType="application/msword"%>注:不允許兩次使用page指令給contentType屬性指定不同的屬性值.例2-817例子8例子8中有兩個JSP頁面,其中的first.jsp頁面使用page指令設(shè)置contentType屬性的值是"text/html;charset=GB2312",當(dāng)用戶請求first.jsp頁面時,用戶的瀏覽器啟用HTML解析器來解析執(zhí)行收到的信息;second.jsp頁面使用page指令設(shè)置contentType屬性的值是"application/msword",當(dāng)用戶請求second.jsp頁面時,用戶的瀏覽器將啟動本地的MS-Word應(yīng)用程序來解析執(zhí)行收到的信息,頁面效果如圖2.7(a)、2.7(b)。182.6.1page指令_session屬性
用于設(shè)置是否需要使用內(nèi)置的session對象。session的屬性值可以是true或false。session屬性默認的屬性值是true。192.6.1page指令_buffer屬性
內(nèi)置輸出流對象out負責(zé)將服務(wù)器的某些信息或運行結(jié)果發(fā)送到客戶端顯示,buffer屬性用來指定out設(shè)置的緩沖區(qū)的大小或不使用緩沖區(qū)。例如:
<%@pagebuffer=“24kb”%>buffer屬性的默認值是8kb。buffer屬性可以取值“none”,設(shè)置out不使用緩沖區(qū)。參考§4.4詳細講解out對象202.6.1page指令_autoFlush屬性autoFlush屬性:指定out的緩沖區(qū)被填滿時,緩沖區(qū)是否自動刷新。注:autoFlush屬性的默認值是true。212.6.1page指令_isThreadSafe屬性
isThreadSafe屬性:用來設(shè)置JSP頁面是否可多線程訪問。
注:isThreadSafe屬性的默認值是true。
computer.jsp
<%@pagecontentType="text/html;charset=GB2312"%><%@pageisThreadSafe="false"%><HTML><BODY><%!inti=1;//被所有用戶共享%><%for(intk=1;k<=100;k++){out.println(i);i++;}%></BODY></HTML>222.6.1page指令_info屬性info屬性的屬性值是一個字符串,其目的是為JSP頁面準備一個常用且可能需要經(jīng)常修改的字符串。例如:
<%@pageinfo=“wearestudents”%>注:可以在JSP頁面中使用方法:
getServletInfo();獲取info屬性的屬性值。
232.6.2include指令標記include指令標記的作用是在JSP頁面出現(xiàn)該指令的位置處,靜態(tài)插入一個文件。其語法格式如下:
<%@includefile="文件的URL"%>
注:如果該文件和當(dāng)前JSP頁面在同一Web服務(wù)目錄中,那么“文件的URL”就是文件的名字;
如果該文件在JSP頁面所在的Web服務(wù)目錄的一個子目錄中,比如fileDir子目錄中,那么“文件的URL”就是“fileDir/文件的名字”。
注:靜態(tài)插入,就是當(dāng)前JSP頁面和插入的文件合并成一個新的
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024-2025學(xué)年新教材高中生物第1章遺傳因子的發(fā)現(xiàn)第2節(jié)第2課時孟德爾兩對性狀雜交實驗解釋的驗證和應(yīng)用課后習(xí)題含解析新人教版必修2
- 2024年拋棄式溫深計合作協(xié)議書
- 小學(xué)語文經(jīng)典美文現(xiàn)代朗誦會主持詞
- 2025版高考英語一輪復(fù)習(xí)選修8Unit5Meetingyourancestors學(xué)案含解析新人教版
- 密封鋼圈課程設(shè)計文檔
- 2024年厚膜工藝電源項目合作計劃書
- 拱橋施工組織課程設(shè)計
- c 課程設(shè)計服裝銷售
- 拼音游戲大班課程設(shè)計
- 河北省衡水十三中2024-2025學(xué)年高三3月高考模擬考試化學(xué)試題試卷含解析
- 中國通俗音樂發(fā)展
- 漢字的演變甲骨文PPT課件
- 材料加工中的數(shù)值模擬方法-微觀組織數(shù)值模擬(8)
- 旅行社等級評定申報材料完整版
- 公司財務(wù)流程之內(nèi)部審計崗工作流程
- 不銹鋼深拉伸工藝
- 小學(xué)入門數(shù)獨100題(簡單)
- 小學(xué)音樂《3唱得幸福落滿坡》PPT課件-(2)ppt課件
- 纖維混凝土PPT課件
- 輪式裝載機7噸總體說明書參考
- 商業(yè)銀行績效考核指標匯總
評論
0/150
提交評論