![課件intellect java網(wǎng)絡(luò)編程_第1頁(yè)](http://file4.renrendoc.com/view/2807779ec852d407b74d9064cf34266d/2807779ec852d407b74d9064cf34266d1.gif)
![課件intellect java網(wǎng)絡(luò)編程_第2頁(yè)](http://file4.renrendoc.com/view/2807779ec852d407b74d9064cf34266d/2807779ec852d407b74d9064cf34266d2.gif)
![課件intellect java網(wǎng)絡(luò)編程_第3頁(yè)](http://file4.renrendoc.com/view/2807779ec852d407b74d9064cf34266d/2807779ec852d407b74d9064cf34266d3.gif)
![課件intellect java網(wǎng)絡(luò)編程_第4頁(yè)](http://file4.renrendoc.com/view/2807779ec852d407b74d9064cf34266d/2807779ec852d407b74d9064cf34266d4.gif)
![課件intellect java網(wǎng)絡(luò)編程_第5頁(yè)](http://file4.renrendoc.com/view/2807779ec852d407b74d9064cf34266d/2807779ec852d407b74d9064cf34266d5.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1
5.1 JSP簡(jiǎn)介
5.2 JSP常用內(nèi)部對(duì)象
5.3 寵物分類展現(xiàn)網(wǎng)頁(yè)動(dòng)態(tài)版本開發(fā)準(zhǔn)備
5.4 用JSP實(shí)現(xiàn)主頁(yè)面Main.jsp
5.5 用JSP實(shí)現(xiàn)品種列表Category.jsp第5章–寵物分類展現(xiàn)模塊的第一個(gè)動(dòng)態(tài)版本的實(shí)現(xiàn)2學(xué)習(xí)目標(biāo)通過(guò)本章的學(xué)習(xí),你可以:掌握J(rèn)SP的基本語(yǔ)法
掌握J(rèn)SP的常用內(nèi)部對(duì)象的使用掌握如何使用JSP完成動(dòng)態(tài)頁(yè)面完成任務(wù)535.1JSP簡(jiǎn)介
5.1.1 什么是JSP
5.1.2 JSP頁(yè)面組成
5.1.3 JSP指令
5.1.4 JSP動(dòng)作
45.1.1 什么是JSP
Java服務(wù)器頁(yè)面(JavaServerPages,JSP)技術(shù)的簡(jiǎn)稱
,一種動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)
JSP頁(yè)面包含HTML標(biāo)記和Java腳本語(yǔ)言
由靜態(tài)內(nèi)容、指令、表達(dá)式、小腳本(Java代碼)、聲明、標(biāo)準(zhǔn)動(dòng)作、注釋等元素組成55.1.2JSP頁(yè)面組成
小腳本:
JSP通過(guò)代碼標(biāo)記<%%>在HTML文件中插入Java代碼<%CategoryDAOdao=newCategoryDAO();Categorycategory=dao.getCategory(“FISH”);%>以上為插入的Java腳本從數(shù)據(jù)庫(kù)中將FISH分類的信息加載到Category對(duì)象category中65.1.2JSP頁(yè)面組成(續(xù))表達(dá)式JSP通過(guò)<%=Java表達(dá)式%>在頁(yè)面上輸出Java表達(dá)式的值如<%=category.getName()%>輸出表達(dá)式category.getName()的值。75.1.2JSP頁(yè)面組成(續(xù))JSP通過(guò)使用聲明標(biāo)記“<%!”與“%>”聲明變量和方法,以便JSP頁(yè)面的其余部分可以訪問這些變量和方法。聲明變量和方法的語(yǔ)句放在聲明標(biāo)記“<%!”和“%>”之間。
<%!intctrl=0;%><p>現(xiàn)在聲明方法<%!publicStringinfo(){return"hello";}%><%=info()%><%=ctrl++%>其中<%=info()%>調(diào)用表達(dá)式標(biāo)記輸出方法info()的返回值,<%=ctrl++%>用表達(dá)式標(biāo)記輸變量ctrl的值,并將ctrl的值加1。85.1.2JSP頁(yè)面組成(續(xù))JSP文檔中有3類注釋標(biāo)記,HTML的注釋:即HTML的“<!--”標(biāo)記和“-->”標(biāo)記,對(duì)JSP文檔的HTML代碼加注釋Java代碼注釋:即使用“//”或“/*”與“*/”組合對(duì)嵌入到JSP的Java代碼加注釋JSP注釋:即使用JSP注釋標(biāo)記“<%--”和“--%>”也可以將放在它們中間的代碼部分標(biāo)記為注釋。在瀏覽器中瀏覽該頁(yè)面,并查看頁(yè)面源代碼,可以看到HTML的注釋,但Java代碼注釋和JSP注釋無(wú)法通過(guò)源代碼查看得到的95.1.3
JSP指令
設(shè)置JSP頁(yè)面的屬性,在JSP頁(yè)面引入其他的文件、導(dǎo)入標(biāo)記庫(kù)等的標(biāo)記指令標(biāo)記包括page指令、include指令和taglib指令指令標(biāo)記是通知JSP引擎的消息,它不直接生成輸出指令標(biāo)記都有默認(rèn)值,因此開發(fā)人員無(wú)須為每個(gè)指令標(biāo)記設(shè)置值105.1.3
JSP指令
(續(xù))page指令用于為頁(yè)面設(shè)置屬性page命令的語(yǔ)法為<%@page屬性="屬性值"%>
教材表5.1列出了常用的可用page指令設(shè)置的屬性教材5.4和5.5將會(huì)用到page指令115.1.3
JSP指令
(續(xù))include指令用來(lái)向當(dāng)前頁(yè)插入一個(gè)靜態(tài)文件,這個(gè)靜態(tài)文件可以是HTML文件、JSP文件和其他文件語(yǔ)法格式為<%@includefile=“文件URL”%>5.4.3節(jié)將會(huì)用到include指令125.1.3
JSP指令
(續(xù))taglib指令用于在JSP中導(dǎo)入擴(kuò)展的標(biāo)記庫(kù)(即非標(biāo)準(zhǔn)的JSP標(biāo)記,可以自己定義),給出擴(kuò)展的標(biāo)記庫(kù)的URL并分配標(biāo)記庫(kù)的處理程序taglib指令的語(yǔ)法格式為<%@tagliburl=“標(biāo)記庫(kù)的URL”prefix=“標(biāo)記庫(kù)的前綴”%>第6章將用到taglib指令引入JSTL標(biāo)記(或標(biāo)簽)第7章將用到taglib指令引入struts標(biāo)簽自定義標(biāo)記,需要用Java編寫標(biāo)簽實(shí)現(xiàn)文件,定義標(biāo)簽庫(kù)描述文件(通常是.tld文件)并在web.xml中進(jìn)行配置135.1.4JSP動(dòng)作JSP的動(dòng)作標(biāo)記使得JSP可與其他服務(wù)器端組件交互,如使用JavaBean、動(dòng)態(tài)加載Servlet或其他JSP、跳轉(zhuǎn)到Servlet或其他JSP和與Java插件相互作用
7個(gè)動(dòng)作標(biāo)記:使用JavaBean的動(dòng)作標(biāo)記jsp:useBean、jsp:setProperty和jsp:getProperty動(dòng)態(tài)加載動(dòng)作標(biāo)記jsp:include跳轉(zhuǎn)動(dòng)作標(biāo)記jsp:forward傳遞參數(shù)動(dòng)作標(biāo)記jsp:param與Java插件相互作用的標(biāo)記jsp:plugin145.2.JSP常用內(nèi)部對(duì)象
內(nèi)部對(duì)象是JSP頁(yè)面可直接使用的預(yù)定義變量
內(nèi)部對(duì)象包括request、out、session
、response、exception、pageContext、application、page和config其中常用內(nèi)部對(duì)象是
request、out、session
155.2.1
request與請(qǐng)求參數(shù)
request是類java.servlet.HttpServletRequest的一個(gè)對(duì)象當(dāng)客戶端請(qǐng)求一個(gè)JSP頁(yè)面時(shí),JSP容器會(huì)將請(qǐng)求信息的內(nèi)容包裝在request對(duì)象中通過(guò)調(diào)用request的方法可得到請(qǐng)求信息的內(nèi)容請(qǐng)求頭信息系統(tǒng)信息請(qǐng)求的方式請(qǐng)求的參數(shù)名和參數(shù)值等165.2.1
request與請(qǐng)求參數(shù)(續(xù))請(qǐng)求參數(shù)就是追加到URL上的一個(gè)名稱-值對(duì)。參數(shù)以問號(hào)(?)開始并采用name=value形式,參數(shù)之間用(&)符隔開
productid=FI-FW-01
請(qǐng)求頁(yè)面是Product.jsp,有2個(gè)參數(shù)catid和productid,值分別是FISH和FI-FW-01。175.2.1
request與請(qǐng)求參數(shù)(續(xù))傳遞請(qǐng)求參數(shù)主要采用以下2種方式在瀏覽器的地址欄中請(qǐng)求頁(yè)面的URL后直接追加通過(guò)表單域傳遞,參數(shù)值為用戶在對(duì)應(yīng)表單域中錄入的值<Formaction=><inputtype=textname=catid><!--名為catid的文本框--><inputtype=textname=productid><!--名為productid的文本框--><inputtype=submit><!--提交按鈕--></FORM>185.2.1
request與請(qǐng)求參數(shù)(續(xù))調(diào)用request的相關(guān)方法:getParameterNames()得到所有請(qǐng)求參數(shù)的名稱,如catid,productid通過(guò)getParameter()和getParameterValues()得到請(qǐng)求參數(shù)值,如“FISH”和“FW-FI-01”195.2.2
outout對(duì)象是類javax.servlet.jsp.jspWriter的一個(gè)對(duì)象jspWriter類提供方法print()和println(),用于產(chǎn)生到瀏覽器的輸出
205.2.3
sessionsession是類javax.servlet.http.HttpSession的一個(gè)對(duì)象session指的是客戶端與服務(wù)器端的一次會(huì)話,會(huì)話從客戶連接到服務(wù)器開始,直到與服務(wù)器斷開連接為止,在這個(gè)期間都可以使用對(duì)應(yīng)這次會(huì)話的session對(duì)象的屬性與方法經(jīng)常用來(lái)跟蹤用戶的信息調(diào)用方法setAttribute()將數(shù)據(jù)存儲(chǔ)到會(huì)話中調(diào)用方法getAttribute()方法來(lái)訪問會(huì)話中的數(shù)據(jù)
215.3寵物分類展現(xiàn)網(wǎng)頁(yè)動(dòng)態(tài)版本開發(fā)準(zhǔn)備
5.3.1 實(shí)現(xiàn)思路
5.3.2 在web.xml中設(shè)置歡迎頁(yè)面
225.3.1
實(shí)現(xiàn)思路
在靜態(tài)版本的基礎(chǔ)上進(jìn)行修改通過(guò)JSP標(biāo)記在靜態(tài)版本的基礎(chǔ)上增加動(dòng)態(tài)內(nèi)容實(shí)現(xiàn)各頁(yè)面的動(dòng)態(tài)版本使用include指令復(fù)用重復(fù)代碼主要是復(fù)用網(wǎng)頁(yè)公共頂部IncludeTop.jsp和公共底部IncludeBottom.jsp<%@pagelanguage="java"contentType="text/html;charset=GB2312"%><%@includefile="mon/IncludeTop.jsp"%>Main_body.jsp或Category_body.jsp或Product_body.jsp或Item_body.jsp代碼<%@includefile="mon/IncludeBottom.jsp"%>235.3.1
實(shí)現(xiàn)思路(續(xù))各頁(yè)面通過(guò)傳遞不同的請(qǐng)求參數(shù)顯示不同的內(nèi)容對(duì)于品種列表頁(yè)面來(lái)說(shuō),如果知道分類編號(hào)catid,則可以通過(guò)分類編號(hào)查詢數(shù)據(jù)庫(kù)獲得該分類品種列表頁(yè)面所需要的所有數(shù)據(jù)通過(guò)為品種列表頁(yè)面Category.jsp傳遞分類編號(hào),來(lái)顯示不同分類的品種列表,如Category.jsp?catid=FISH表示顯示魚類的品種信息,Category.jsp?catid=CATS表示顯示貓類的品種信息商品列表頁(yè)面和寵物詳細(xì)信息頁(yè)面類似處理245.3.2在web.xml中設(shè)置歡迎頁(yè)面
歡迎頁(yè)面,就是web應(yīng)用的默認(rèn)訪問頁(yè)面,在Web應(yīng)用項(xiàng)目的配置文件web.xml中設(shè)置<!--配置歡迎文件--> <e-file-list> <e-file>index.jsp<e-file> <e-file-list>
在mypetstore項(xiàng)目的web.xml文件中增加上述配置信息,可以將WebContent下的index.jsp設(shè)置為歡迎頁(yè)面。如果在瀏覽器的地址欄中只輸入就可打開該頁(yè)面255.3.2在web.xml中設(shè)置歡迎頁(yè)面(續(xù))index.jsp代碼如下:<%@pagecontentType="text/html;charset=GB2312"%><linkrel="StyleSheet"href="css/jpetstore.css"type="text/css"media="screen"/><divid="Content"><h2>歡迎來(lái)到寵物商城</h2><p><ahref="catalog/Main.jsp">進(jìn)入寵物商城</a></p><p><sub>源自開元項(xiàng)目JPetstore</sub></p><!--<sub></sub>標(biāo)記說(shuō)明內(nèi)含文本要以下標(biāo)的形式顯示,比當(dāng)前字體稍小--></div>265.4用JSP實(shí)現(xiàn)主頁(yè)面Main.jsp
5.4.1 由IncludeTop.html得到其動(dòng)態(tài)版本IncludeTop.jsp
5.4.2 由IncludeBottom.html得到其動(dòng)態(tài)版本IncludeBottom.jsp
5.4.3 由Main_body.html得到主頁(yè)面Main.jsp275.4.1 由IncludeTop.html得到其動(dòng)態(tài)版本IncludeTop.jsp在文件頭添加<%@pagelanguage=“java”contentType=“text/html;charset=GB2312”>language屬性設(shè)置頁(yè)面所用的語(yǔ)言是javacontentType屬性設(shè)置JSP頁(yè)面的MIME類型中文的JSP頁(yè)面該屬性都需要設(shè)置成“text/html;charset=GB2312”,才能正常顯示
將HTML文件更名為jsp文件修改logo層主頁(yè)面鏈接文件名為Main.jsp修改QuickLinks層各分類圖片鏈接的href屬性285.4.2 由IncludeBottom.html得到其動(dòng)態(tài)版本IncludeBottom.jsp直接將IncludeBottom.html的代碼復(fù)制給IncludeBottom.jsp295.4.3 由Main_body.html得到主頁(yè)面Main.jsp
文件頭增加<%@pagelanguage="java"contentType="text/html;charset=GB2312"%>使用JSP的include指令將IncludeTop.jsp、IncludeBottom.jsp包含進(jìn)來(lái)構(gòu)成完整的網(wǎng)頁(yè)品種列表的實(shí)現(xiàn)使用同一個(gè)文件Category.jsp,不同的分類,傳遞不同catid值305.5用JSP實(shí)現(xiàn)品種列表Category.jsp
通過(guò)page指令的import屬性導(dǎo)入類<%@pageimport="java.util.ArrayList"%><%@pageimport="com.sziit.petstore.
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年保密管理策劃合同
- 2025年出讓地塊安全生產(chǎn)監(jiān)管協(xié)議規(guī)范
- 2025年度實(shí)習(xí)生策劃管理與學(xué)習(xí)發(fā)展協(xié)議
- 2025年農(nóng)村土地流轉(zhuǎn)合同樣本資料
- 2025年公務(wù)員住房公積金貸款合同范例
- 2025年上海住宅項(xiàng)目開發(fā)合作協(xié)議書
- 2025年個(gè)體工商戶合資合作協(xié)議書范本
- 2025年注塑機(jī)訂購(gòu)合同示范
- 2025年債務(wù)抵押擔(dān)保協(xié)議樣本
- 2025年債務(wù)重構(gòu)與清償協(xié)議
- 教師培訓(xùn)校園安全工作課件校園安全管理培訓(xùn)課程教學(xué)
- 初中七 八年級(jí)生物思維導(dǎo)圖大全 張
- 婆媳關(guān)系證明
- 江蘇宿遷家鄉(xiāng)介紹旅游課件
- 莎士比亞十四行詩(shī)之十八課件
- 幼兒園中班語(yǔ)言《拼小人》課件
- 文化差異與跨文化交際課件(完整版)
- 臭和味檢測(cè)原始記錄表
- 變壓器檢修風(fēng)險(xiǎn)分析及管控措施
- 勞務(wù)派遣公司介紹ppt課件(PPT 35頁(yè))
- 紀(jì)檢監(jiān)察機(jī)關(guān)派駐機(jī)構(gòu)工作規(guī)則PPT
評(píng)論
0/150
提交評(píng)論