版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、Java Web開發(fā)技術(shù)第3章 JSP隱含對象10/12/20221Java Web開發(fā)技術(shù)第3章 10/9/20221第3章 JSP隱含對象為簡化Web頁面的開發(fā)過程,JSP提供了一些由容器實(shí)現(xiàn)和管理的隱含對象,這些對象在JSP頁面中可以直接使用,不需要JSP頁面編寫者實(shí)例化。在JSP頁面中,可以通過存取這些隱含對象實(shí)現(xiàn)與JSP頁面和Servlet環(huán)境的相互訪問。本章主要內(nèi)容包括:JSP隱含對象概述和各類隱含對象的具體說明。10/12/20222Java Web開發(fā)技術(shù)第3章 JSP隱含對象為簡化Web頁面的開發(fā)過程,JSP提3.1 JSP隱含對象概述JSP頁面的隱含對象就是在JSP頁面中不
2、用聲明就可以使用的對象。隱含對象是JSP引擎自動創(chuàng)建的Java類實(shí)例,它們能與Servlet環(huán)境交互。隱含對象可以實(shí)現(xiàn)很多功能,如從客戶端獲得數(shù)據(jù)、向客戶端發(fā)回數(shù)據(jù)、控制傳輸數(shù)據(jù)的有效域和異常處理等。如:10/12/20223Java Web開發(fā)技術(shù)3.1 JSP隱含對象概述JSP頁面的隱含對象就是在JSP頁隱含對象功能不必使用表達(dá)式,直接存取out對象來打印一些東西到客戶端: 不必直接傳送參數(shù),可以借助請求對象來取得客戶端輸入的參數(shù)值: 完成頁面的重定向: 在錯誤頁面中顯示出錯信息: 等等10/12/20224Java Web開發(fā)技術(shù)隱含對象功能不必使用表達(dá)式,直接存取out對象來打印一些東
3、西JSP中的9種隱含對象與輸入/輸出有關(guān) 與屬性作用域有關(guān) 與Servlet 相關(guān) 與錯誤處理有關(guān) 10/12/20225Java Web開發(fā)技術(shù)JSP中的9種隱含對象與輸入/輸出有關(guān) 與屬性作用域有關(guān) 與3.2與輸入/輸出有關(guān)的隱含對象 3.2.1 request對象 3.2.2 response對象 3.2.3 out對象10/12/20226Java Web開發(fā)技術(shù)3.2與輸入/輸出有關(guān)的隱含對象 3.2.1 reques3.2.1 request對象在JSP頁面中,隱含對象request代表的是來自客戶端的請求,通過它可以查看請求參數(shù)、請求類型(GET,POST,HEAD等)以及請求的
4、HTTP頭(Cookie,Referer等)客戶端信息 ,它是實(shí)現(xiàn) javax.servlet.HttpServletRequest 接口的類的一個實(shí)例。 request 對象的方法有很多 ,從功能角度可以將這些方法分為4類: 10/12/20227Java Web開發(fā)技術(shù)3.2.1 request對象在JSP頁面中,隱含對象req1取得請求參數(shù)的方法 10/12/20228Java Web開發(fā)技術(shù)1取得請求參數(shù)的方法 10/9/20228Java Web2.取得請求HTTP 頭的方法 10/12/20229Java Web開發(fā)技術(shù)2.取得請求HTTP 頭的方法 10/9/20229Java3
5、儲存和取得屬性方法 10/12/202210Java Web開發(fā)技術(shù)3儲存和取得屬性方法 10/9/202210Java We4其他的方法 10/12/202211Java Web開發(fā)技術(shù)4其他的方法 10/9/202211Java Web開發(fā)技4其他的方法(續(xù))10/12/202212Java Web開發(fā)技術(shù)4其他的方法(續(xù))10/9/202212Java Web開request比較重要的方法 getParameter() getParameterNames() getParameterValues() getHeader() 記住噢10/12/202213Java Web開發(fā)技術(shù)reque
6、st比較重要的方法 getParameter(). 獲得客戶端提交的信息例exa3_1.jsp : 一個html文檔exa3_1.jsp提交一個表單給tree.jsp頁面,tree.jsp通過request.getParameter()接收表單中的客戶輸入,并將有關(guān)信息送回客戶端。10/12/202214Java Web開發(fā)技術(shù). 獲得客戶端提交的信息例exa3_1.jsp獲得客戶端提交的信息(續(xù)) 文本框提交的用戶名為: 客戶端提交的按鈕的名字為: exa3_1.jsp tree.jsp 1.運(yùn)行2.調(diào)用3.結(jié)果10/12/202215Java Web開發(fā)技術(shù)獲得客戶端提交的信息(續(xù))% p
7、age contentT. 處理中文信息在例exa3_1.jsp中輸入中文時將不能正確顯示, 如圖所示:這就引發(fā)如何處理客戶端提交的中文問題。JSP頁面的漢字問題主要指兩方面:JSP頁面中的漢字問題和表單提交的漢字問題。 10/12/202216Java Web開發(fā)技術(shù). 處理中文信息在例exa3_1.jsp中輸入(1)JSP頁面的漢字問題對于JSP頁面的漢字問題,需要在JSP中使用page指令告訴客戶端漢字的編碼方式:。在沒有特別指示下,瀏覽器無法正確顯示漢字,每個要顯示漢字的JSP頁面都應(yīng)該包含該語句。 10/12/202217Java Web開發(fā)技術(shù)(1)JSP頁面的漢字問題對于JSP頁
8、面的漢字問題,需要在J(2)表單提交的漢字問題客戶端和服務(wù)器交互過程中,在客戶端和服務(wù)器用的是GB2312對漢字編碼,而HTTP傳輸用ISO_8859_1編碼,因此,不僅服務(wù)器端必須用指令指示客戶端漢字的顯示編碼,同時在服務(wù)器端接收到客戶端數(shù)據(jù)時需要將編碼轉(zhuǎn)換為GB2312后進(jìn)行處理,方法是: 或 其中tt為表單提交的含有中文的變量10/12/202218Java Web開發(fā)技術(shù)(2)表單提交的漢字問題客戶端和服務(wù)器交互過程中,在客戶端和改進(jìn)后的tree.jsp 我們只須在tree.jsp中加入中文處理的相關(guān)語句,中文就能正確顯示了 ,代碼如下: 文本框提交的用戶名為: %String ext
9、Content=request.getParameter(boy); 10/12/202219Java Web開發(fā)技術(shù)改進(jìn)后的tree.jsp 我們只須在tree.jsp中加入中. 避免空指針異常例如一表單向JSP頁面提交一個正數(shù),然后計算這個正數(shù)的平方根,JSP中有這么一個語句:String textContent=request.getParameter(“num”),其中num代表表單提交的正數(shù),要注意由于JSP引擎在運(yùn)行這個JSP頁面時,客戶端還沒有提交數(shù)據(jù),textContent也還沒有創(chuàng)建,而JSP頁面中的number=Double.parseDouble(textContent)
10、語句需要使用textContent,此時textContent對象為null,Java解釋器會提示出現(xiàn)空指針異常NullPointerException。為了避免使用空對象,在JSP頁面中使用了如下代碼: if ( textContent=null ) textContent=100; 10/12/202220Java Web開發(fā)技術(shù). 避免空指針異常例如一表單向JSP頁面提交一. 其它常用方法getServletPath() getContentLength() getMethod() getHeader( )getProtocol() 10/12/202221Java Web開發(fā)技術(shù). 其
11、它常用方法getServletPath. 獲取HTML表單中的各種數(shù)據(jù)由于客戶端經(jīng)常使用表單提交數(shù)據(jù),本節(jié)通過例子來說明表單中各種提交手段的用法。 表單的一般格式為: 表單中的標(biāo)記(數(shù)據(jù)提交的手段) 10/12/202222Java Web開發(fā)技術(shù). 獲取HTML表單中的各種數(shù)據(jù)由于客戶端表單中各種提交手段 (1)下面例text.jsp表單的輸入方式是文本框和口令,,運(yùn)行結(jié)果如圖3-8所示。text.jsp關(guān)鍵代碼:表單 用戶登錄 用戶名: 圖3-8密碼:10/12/202223Java Web開發(fā)技術(shù)表單中各種提交手段 (1)下面例text.jsp表單的輸入方表單中各種提交手段 (2)下面例
12、子用單選按鈕實(shí)現(xiàn)網(wǎng)上測試 radio.jsp關(guān)鍵代碼: answer.jsp關(guān)鍵代碼:p詩人李清照是中國歷史上哪個朝代的人?宋朝唐朝明朝清朝史記的作者是誰?曹雪芹羅貫中李白司馬遷您的了分圖3-9 radio.jsp的輸出結(jié)果10/12/202224Java Web開發(fā)技術(shù)表單中各種提交手段 (2)下面例子用單選按鈕實(shí)現(xiàn)網(wǎng)上測試 p表單中各種提交手段 (3)下面例子說明滾動列表使用方式 :select.jsp關(guān)鍵代碼:選擇計算和的方式 計算1到n的和 計算1到n的平方和 計算1到n的立方和請選擇n的值 n=10 n=20 n=30 n=40 n=50 n=100sum.jsp關(guān)鍵代碼:% int
13、 sum=0; String s1=request.getParameter(girl); String s2=request.getParameter(boy); int n=Integer.parseInt(s2); if(s1.equals(1) for(int i=1;i=n;i+) sum+=i; else if(s1.equals(2) for(int i=1;i=n;i+) sum+=i*i; else for(int i=1;i您的求和結(jié)果是10/12/202225Java Web開發(fā)技術(shù)表單中各種提交手段 (3)下面例子說明滾動列表使用方式 :s. 表格表格由和標(biāo)記定義。一般
14、格式為: 單元格中的數(shù)據(jù) 單元格中的數(shù)據(jù) 10/12/202226Java Web開發(fā)技術(shù). 表格表格由和表格應(yīng)用舉例下面例tableform.jsp是表單使用,運(yùn)行結(jié)果如圖所示。tableform.jsp關(guān)鍵代碼: 杜甫是哪個朝代的人?: 宋朝 唐朝 請在右邊表格中輸入數(shù)據(jù): 10/12/202227Java Web開發(fā)技術(shù)表格應(yīng)用舉例下面例tableform.jsp是表單使用,運(yùn)行3.2.2 response對象當(dāng)客戶訪問一個服務(wù)器的頁面時,會提交一個HTTP請求,服務(wù)器接到請求時會返回HTTP響應(yīng)。響應(yīng)是實(shí)現(xiàn) javax.servlet.HttpServletResponse接口的類的一
15、個實(shí)例。response對象代表的是對客戶端的響應(yīng),可以通過response對象來組織發(fā)送到客戶端的數(shù)據(jù)。response對象的方法也有很多, 下面的幾個表列出了response對象的主要方法 :10/12/202228Java Web開發(fā)技術(shù)3.2.2 response對象當(dāng)客戶訪問一個服務(wù)器的頁面時設(shè)定表頭的方法 10/12/202229Java Web開發(fā)技術(shù)設(shè)定表頭的方法 10/9/202229Java Web開發(fā)技設(shè)定響應(yīng)狀態(tài)碼的方法 10/12/202230Java Web開發(fā)技術(shù)設(shè)定響應(yīng)狀態(tài)碼的方法 10/9/202230Java Web用來URL 重寫的方法 10/12/202
16、231Java Web開發(fā)技術(shù)用來URL 重寫的方法 10/9/202231Java We其它方法 10/12/202232Java Web開發(fā)技術(shù)其它方法 10/9/202232Java Web開發(fā)技術(shù)重要!response對象中使用較多的方法是:setContentType()sendRedirect()setHeader() 記住噢10/12/202233Java Web開發(fā)技術(shù)重要!response對象中使用較多的方法是:記住噢10/9. 動態(tài)設(shè)置MIME類型在page指令中的contentType屬性用來指定response對象響應(yīng)客戶端請求的MIME(Multipurpose In
17、ternet Mail Extension protocol,多用途網(wǎng)際郵件擴(kuò)充協(xié)議)類型。 ContentType屬性值和MIME類型的主要對應(yīng)關(guān)系如下表所示: 10/12/202234Java Web開發(fā)技術(shù). 動態(tài)設(shè)置MIME類型在page指令中的cocontentType屬性和MIME類型的對應(yīng)關(guān)系 page指令只能為contentType指定一個值,如果想動態(tài)地改變這個屬性的值來以各種不同的方式做出響應(yīng),就要使用response對象的setContentType()方法改變contentType的值。一旦這個屬性值被改變,服務(wù)器就將按照新的MIME類型做出響應(yīng) 。參考example3
18、-11.jsp 。10/12/202235Java Web開發(fā)技術(shù)contentType屬性和MIME類型的對應(yīng)關(guān)系 . response對象的http頭response對象可以使用addHeader()和setHeader()方法動態(tài)添加和修改相應(yīng)頭的值,并將這些頭發(fā)送給客戶端。下面例example3_12.jsp中,response對象添加一個頭refresh,使客戶端在顯示該頁面時,每5秒鐘刷新一次。運(yùn)行結(jié)果如圖 : example3_12.jsp關(guān)鍵代碼:現(xiàn)在的時間是:10/12/202236Java Web開發(fā)技術(shù). response對象的http頭resp. response重定向
19、下面例中,客戶填寫表單,并提交給tree4.jsp頁面。如果表單填寫不完整,tree4.jsp會重新定向到填寫頁面,否則顯示歡迎字樣,運(yùn)行結(jié)果如圖 : tree4.jsp關(guān)鍵代碼:10/12/202237Java Web開發(fā)技術(shù). response重定向下面例中,客戶填寫表. response的狀態(tài)行當(dāng)服務(wù)器響應(yīng)客戶端請求時,它發(fā)送的首行被稱為狀態(tài)行。狀態(tài)行包括3位數(shù)字的狀態(tài)碼和對狀態(tài)碼的簡單描述。其中,1xx主要是試驗性質(zhì)的;2xx表示請求成功;3xx表示在請求在滿足之前應(yīng)進(jìn)一步采取的行動;4xx表示服務(wù)器無法滿足要求;5xx服務(wù)器出現(xiàn)錯誤。具體可參考書中表3-11狀態(tài)碼表 。10/12/2
20、02238Java Web開發(fā)技術(shù). response的狀態(tài)行當(dāng)服務(wù)器響應(yīng)客戶端3.2.3 out對象out對象代表了向客戶端發(fā)送數(shù)據(jù)的對象,通過out對象發(fā)送的內(nèi)容將是瀏覽器需要顯示的內(nèi)容,是文本一級的??梢酝ㄟ^out對象直接向客戶端寫一個由程序動態(tài)生成HTML文件。它是javax.servlet.jsp.JspWriter類的一個實(shí)例。 JSP允許通過page指令的buffer屬性調(diào)整out對象緩存的大小,甚至允許關(guān)閉緩存。 10/12/202239Java Web開發(fā)技術(shù)3.2.3 out對象out對象代表了向客戶端發(fā)送數(shù)據(jù)的對象out對象重要方法 10/12/202240Java We
21、b開發(fā)技術(shù)out對象重要方法 10/9/202240Java Web開Out對象舉例 Out.jsp關(guān)鍵代碼:BufferSize : Available : Used : 因為在每個頁面中都用到out對象,因此在這兒僅舉一個例子再展示一下out對象的主要方法。Out.jsp顯示目前緩沖區(qū)的大小 。運(yùn)行結(jié)果如圖所示 10/12/202241Java Web開發(fā)技術(shù)Out對象舉例 Out.jsp3.3與屬性作用域有關(guān)的對象3.3.1 session對象3.3.2 application對象3.3.3 pageContext對象 10/12/202242Java Web開發(fā)技術(shù)3.3與屬性作用域有
22、關(guān)的對象3.3.1 session對象13.3.1 session對象HTTP是無狀態(tài)(stateless)協(xié)議??蛻舳讼蚍?wù)器發(fā)送一次請求(request),服務(wù)器給與響應(yīng)(response)后連接就關(guān)閉了。因此,當(dāng)下一次連接時,服務(wù)器已經(jīng)沒有以前的連接信息了。服務(wù)器對每一個客戶端請求都沒有歷史記憶的特點(diǎn)帶來了一系列的問題。如在線商店購物時 ,當(dāng)我們把商品加入購物車時,服務(wù)器如何才能知道車?yán)镌扔行┦裁???dāng)用戶從選擇商品的頁面轉(zhuǎn)到輸入信用卡號和送達(dá)地址的頁面,服務(wù)器如何才能記住用戶買了些什么?這個問題一般有三種解決方法: 10/12/202243Java Web開發(fā)技術(shù)3.3.1 sessi
23、on對象HTTP是無狀態(tài)(statel解決方法:Cookie :利用Cookie對象來存儲有關(guān)購物會話的信息,后繼的各個連接可以查看當(dāng)前Cookie,提取有關(guān)該會話的完整信息。 重寫URL :把一些標(biāo)識會話的數(shù)據(jù)附加到每個URL的后面,服務(wù)器能夠把該會話標(biāo)識和它所保存的會話數(shù)據(jù)關(guān)聯(lián)起來。 隱藏表單域 :通過表單的隱藏域維持會話HttpSession API :Servlet提供的一種與眾不同的方案 。10/12/202244Java Web開發(fā)技術(shù)解決方法:Cookie :利用Cookie對象來存儲有關(guān)購物HttpSession API HttpSession API是一個基于Cookie或者
24、URL重寫機(jī)制的高級會話狀態(tài)跟蹤接口。如果瀏覽器支持Cookie,則使用Cookie;如果瀏覽器不支持Cookie或者Cookie功能被關(guān)閉,則自動使用URL重寫方法。Servlet開發(fā)者無需關(guān)心細(xì)節(jié)問題,也無需直接處理Cookie或附加到URL后面的信息 。10/12/202245Java Web開發(fā)技術(shù)HttpSession API HttpSession AP什么是會話(session)session對象是javax.servlet.http.HttpSession類的一個實(shí)例 ,session對象使同一用戶在訪問Web站點(diǎn)時多個頁面間共享信息。一個客戶訪問服務(wù)器時,可能會在這個服務(wù)器的
25、幾個頁面之間反復(fù)連接,反復(fù)刷新一個頁面或不斷向一個頁面提交信息等。服務(wù)器完全可以通過session對象知道這是同一個客戶。從一個客戶打開瀏覽器連接到服務(wù)器開始,到客戶關(guān)閉瀏覽器離開這個服務(wù)器結(jié)束,被稱為一個會話。 10/12/202246Java Web開發(fā)技術(shù)什么是會話(session)session對象是javax.session對象的主要方法 10/12/202247Java Web開發(fā)技術(shù)session對象的主要方法 10/9/202247Java. session對象的ID標(biāo)識客戶首次訪問服務(wù)器上的JSP頁面時,JSP引擎產(chǎn)生session對象,并分配給它一個String類型的ID,
26、并將其發(fā)送到客戶端存入Cookie中,這樣session對象和客戶端之間建立了一一對應(yīng)關(guān)系,客戶在該服務(wù)器不同網(wǎng)頁間轉(zhuǎn)換或從其他服務(wù)器回到該服務(wù)器時,不分配給客戶新的session,直到客戶關(guān)閉瀏覽器,分配給客戶的session對象被取消。 10/12/202248Java Web開發(fā)技術(shù). session對象的ID標(biāo)識客戶首次訪問服Session與ID的一一對應(yīng)關(guān)系下面例中,客戶在三個頁面id1.jsp、id2.jsp和id3.jsp之間進(jìn)行鏈接,只要不關(guān)閉瀏覽器,三個頁面的session對象完全相同,這可以從三個頁面中得到的session ID看到。代碼如下,運(yùn)行結(jié)果單擊如圖 id1.js
27、p關(guān)鍵代碼: 您在id1頁面的session對象的ID是:單擊超連接,可到id2頁面歡迎到id2頁面來。 id2.jsp關(guān)鍵代碼:您在id2頁面中的id號為:單擊超連接,可到id3頁面歡迎到id3頁面來。id3.jsp關(guān)鍵代碼: 您在id3頁面中的session對象的ID是: 點(diǎn)擊超鏈接,連接到id1頁面。 歡迎到id1頁面來。 10/12/202249Java Web開發(fā)技術(shù)Session與ID的一一對應(yīng)關(guān)系下面例中,客戶在三個頁面i. session對象和URL重寫上面例子是在客戶端支持Cookie基礎(chǔ)上的。如果客戶端不支持Cookie,服務(wù)器無法將session ID寫到客戶端。服務(wù)器無
28、法識別同一個客戶端。解決該問題的有效方法是URL重寫技術(shù)。 改進(jìn)后id1_1.jsp關(guān)鍵代碼:在id1頁面中的id號為:單擊超連接,可到id2頁面a href=歡迎到id2_1頁面來。id2_1.jsp 和id3_1.jsp在相同位置做相應(yīng)更改即可 。10/12/202250Java Web開發(fā)技術(shù). session對象和URL重寫上面例子是在. 在會話對象中保存數(shù)據(jù)保存和獲得session對象中的數(shù)據(jù)是JSP頁面常做的工作,需要使用getAttribute()和setAttribute()方法。例子simplesession.jsp在session對象中保存數(shù)據(jù)numVisits,這樣服務(wù)器
29、可以告訴客戶他訪問該頁面一共多少次,只要客戶不關(guān)閉瀏覽器。刷新6次后運(yùn)行結(jié)果如圖3-20所示。圖3-20例:example3_17.jsp , Login.jsp , Member.jsp 10/12/202251Java Web開發(fā)技術(shù). 在會話對象中保存數(shù)據(jù)保存和獲得sessio. session對象的生存時間例example3_18.jsp是一個猜數(shù)字游戲 10/12/202252Java Web開發(fā)技術(shù). session對象的生存時間例exampl. session對象的新與舊前面已經(jīng)講到,會話有生存期 ,一般來說,下列情況會使會話結(jié)束:由于網(wǎng)絡(luò)故障套接字刪除、關(guān)閉瀏覽器、服務(wù)器關(guān)閉重
30、起、會話超時和主動撤銷會話。 在第二章已經(jīng)實(shí)現(xiàn)了計數(shù)器功能,顯示客戶是訪問本網(wǎng)站的第多少位客戶。但那時客戶不斷刷新頁面時,計數(shù)器的數(shù)目在增加,這是不正確的。下面的例example3_19.jsp解決了這個問題,對第二章的例子進(jìn)行改進(jìn) 。10/12/202253Java Web開發(fā)技術(shù). session對象的新與舊前面已經(jīng)講到,會3.3.2 application對象pplication對象負(fù)責(zé)提供應(yīng)用程序在服務(wù)器中運(yùn)行時的一些全局信息。服務(wù)器啟動時就創(chuàng)建一個application對象,客戶在該服務(wù)器的各個頁面之間鏈接時,application對象都是同一個,直到服務(wù)器關(guān)閉。 表3-14 列出了
31、application對象的主要方法10/12/202254Java Web開發(fā)技術(shù)3.3.2 application對象pplication. application對象的常用方法例:application.jsp ,setAttribute.jsp ,getAttribute.jsp ,example3_20.jsp 10/12/202255Java Web開發(fā)技術(shù). application對象的常用方法例:a. 用application對象制作留言板在下例中,客戶在submit.jsp中輸入姓名、留言標(biāo)題和留言內(nèi)容。這些信息提交給messagePane.jsp。該頁面將客戶信息存入向量,
32、并將向量存放在application對象中。當(dāng)查看留言板時,showMessage.jsp負(fù)責(zé)從application對象中取出向量,并遍歷向量顯示其中的所有留言。代碼詳見:submit.jsp ,messagePane.jsp ,showMessage.jsp 10/12/202256Java Web開發(fā)技術(shù). 用application對象制作留言板在下3.3.3 pageContext對象pageContext對象主要用來管理頁面的屬性,描述JSP文檔的運(yùn)行環(huán)境。它是頁面中對象功能的最大集成者,提供對所有其他隱含對象及其屬性的訪問。 pageContext對象的方法詳見表3-15 和表3-
33、16 例scopeexample1.jsp 和scopeexample2.jsp 10/12/202257Java Web開發(fā)技術(shù)3.3.3 pageContext對象pageContex3.4 與Servlet 有關(guān)的隱含對象與Servlet 有關(guān)的隱含對象有兩個: page和config。page對象表示Servlet本身;config對象則是存放Servlet的初始參數(shù)值。10/12/202258Java Web開發(fā)技術(shù)3.4 與Servlet 有關(guān)的隱含對象與Servlet 有3.4.1 page 對象它是this的同義詞,表示JSP頁面本身,是Servlet類的一個實(shí)例,就是轉(zhuǎn)換后的
34、Servlet類,可以調(diào)用Servlet中的任何方法。它實(shí)現(xiàn)了javax.servlet.jsp.HttpJspPage接口。當(dāng)前page對象用處不大。下面舉一個簡單例子PageInfo.jsp,運(yùn)行結(jié)果如圖3-29所示。 圖3-29 PageInfo.jsp運(yùn)行結(jié)果 10/12/202259Java Web開發(fā)技術(shù)3.4.1 page 對象它是this的同義詞,表示JSP3.4.2 config 對象config對象是 javax.servlet.servletConfig 接口的實(shí)例,存儲Servlet配置對象。其重要方法如下表所示。10/12/202260Java Web開發(fā)技術(shù)3.4.
35、2 config 對象config對象是 java3.5 與Error 有關(guān)的隱含對象這類的隱含對象只有一個成員:exception 對象。 exception對象代表了JSP文件運(yùn)行時所產(chǎn)生的異常對象,目的是在JSP內(nèi)處理錯誤。此對象不能在一般JSP文件中直接使用,而只能在使用了的JSP文件中使用。 例:dividedexample.jsp 10/12/202261Java Web開發(fā)技術(shù)3.5 與Error 有關(guān)的隱含對象這類的隱含對象只有一個成3.6 小 結(jié)本章介紹了JSP頁面中使用的主要隱含對象。它們是:request、response、out、session、application、
36、pageContext、config、page、exception。正是由于這些隱含對象,你可以進(jìn)入JSP頁面的代碼段,用不著深入了解太多的Servlet API細(xì)節(jié)。 從本質(zhì)上講,JSP的這些隱含對象其實(shí)都是由特定的Java類所產(chǎn)生的,在服務(wù)器運(yùn)行時根據(jù)情況自動生成,所以如果你有較好的Java基礎(chǔ),可以參考相應(yīng)的類說明。 10/12/202262Java Web開發(fā)技術(shù)3.6 小 結(jié)本章介紹了JSP頁面中使用的主要隱含對象。它習(xí) 題1編寫JSP頁面,完成下圖功能:10/12/202263Java Web開發(fā)技術(shù)習(xí) 題1編寫JSP頁面,完成下圖功能:10/9/2022習(xí)題2編寫JSP頁面,完成
37、下圖功能,提交請求后顯示相應(yīng)的選中項標(biāo)簽:10/12/202264Java Web開發(fā)技術(shù)習(xí)題2編寫JSP頁面,完成下圖功能,提交請求后顯示相應(yīng)的選習(xí)題3在aa.jsp中有行代碼:在bb.jsp中有行代碼 :為了使得在bb.jsp中的如上代碼可以顯示”jb-aptech”,可以使用()發(fā)送。A)在aa.jsp中使用把請求提交到bb.jspB)在aa.jsp中使用把頁面重定向到bb.jspC)在aa.jsp中使用把頁面重定向到bb.jspD)在aa.jsp中使用包含頁面bb.jspE)在aa.jsp中使用把頁面重定向到bb.jsp10/12/202265Java Web開發(fā)技術(shù)習(xí)題3在aa.jsp中有行代碼:10/9/202265Ja習(xí)題4如果在JSP腳本中有如下代碼: int I=10; /1 String str=”jb-aptech”; /2 Vector v=new Vector(); /3 v.add(“jb”); /4 v.add(“aptech”); /5 session.s
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度高爾夫球場草坪除草與養(yǎng)護(hù)承包合同
- 二零二五年度企業(yè)法律咨詢法律顧問聘用合同
- 2025年度旅游景區(qū)資源管理與保護(hù)合同示范
- 2025年度火鍋店供應(yīng)鏈金融支持服務(wù)合同
- 2025年度家庭裝修合同書
- 2025年度餐飲企業(yè)食品安全風(fēng)險控制合作協(xié)議
- 二零二五年度勞動合同范本-試用期廣告?zhèn)髅叫袠I(yè)
- 2025年度船舶工程技術(shù)研究與成果轉(zhuǎn)化合同
- 2025年度物流行業(yè)競業(yè)限制協(xié)議模板
- 二零二五年度電子設(shè)備維修工雇傭責(zé)任免除合同
- 教師招聘(教育理論基礎(chǔ))考試題庫(含答案)
- 2024年秋季學(xué)期學(xué)校辦公室工作總結(jié)
- 鋪大棚膜合同模板
- 長亭送別完整版本
- 智能養(yǎng)老院視頻監(jiān)控技術(shù)方案
- 你比我猜題庫課件
- 無人駕駛航空器安全操作理論復(fù)習(xí)測試附答案
- 建筑工地春節(jié)留守人員安全技術(shù)交底
- 默納克-NICE1000技術(shù)交流-V1.0
- 蝴蝶蘭的簡介
- 老年人心理健康量表(含評分)
評論
0/150
提交評論