Java-Web-程序設(shè)計模塊2_第1頁
Java-Web-程序設(shè)計模塊2_第2頁
Java-Web-程序設(shè)計模塊2_第3頁
Java-Web-程序設(shè)計模塊2_第4頁
Java-Web-程序設(shè)計模塊2_第5頁
已閱讀5頁,還剩24頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

模塊2制作簡單的javaWeb網(wǎng)站JavaWeb程序設(shè)計“十三五”職業(yè)教育國家規(guī)劃教材配套資源目錄項目4制作又包含文件的JSP頁面項目5制作簡單的展示網(wǎng)站小結(jié)習(xí)題項目4制作又包含文件的JSP頁面4.1項目描述與實現(xiàn)(1)描述實現(xiàn)靜態(tài)包含功能,編寫三個不同類型的文件,然后將這三個不同類型的文件靜態(tài)包含于某一JSP文件中,運行效果如下圖所示。4.1項目描述與實現(xiàn)(2)實現(xiàn)過程

(1)編寫三個不同類型的被包含文件,分別是exam4_1_inclu.html、

exam4_1_inclu.jsp和exam4_1_inclu.txt。代碼見程序2-1~程序2~3。程序2-1:exam4_1_inclu.html<h2> Includeexam4_1_inclu.html</h2>程序2-2:exam4_1_inclu.jsp<%@pagelanguage=”java”contentType=”text/html;charset=UTF-8”pageEncoding=”UTF-8”%><h2> <%=”exam4_1_inclu.jsp被包含了!”%> </h2>程序2-3:exam4_1_include.txt<h2>Includeexam4_1_inclu.txt</h2>項目4制作又包含文件的JSP頁面項目4制作又包含文件的JSP頁面4.1項目描述與實現(xiàn)(2)實現(xiàn)過程

(2)編寫JSP包含文件,包含上述三個文件。代碼見程序2-4。程序2-4:exam4_1_include.jsp<%@pagelanguage=”java”contentType=”text/html;charset=UTF-8”pageEncoding=”UTF-8”%><html><head><title>包含文件演示</title></head><body> <h1>包含文件操作:</h1> <%@includefile=”exam4_1_inclu.html”%> <%@includefile=”exam4_1_inclu.jsp”%> <%@includefile=”exam4_1_inclu.txt”%></body></html>代碼分析:使用<%@include%>包含了之前定義的三種類型的文件,分別是html、jsp和txt文件。被包含的文件內(nèi)容會在此頁面中輸出其內(nèi)容。<%@include%>為JSP頁面包含指令。項目4制作又包含文件的JSP頁面4.2新知識點-JSP指令:page指令、include指令JSP指令是為JSP引擎而設(shè)計的。它們并不直接產(chǎn)生任何可見的輸出,而只是告訴引擎如何處理其余的JSP頁面。JSP指令有三種,分別為頁面設(shè)置指令page、頁面包含指令include和標(biāo)記指令taglib。JSP指令一般語法形式為:<%@指令名稱屬性=“值”%>1、page指令:page指令就是通過設(shè)置內(nèi)部的多個屬性來定義JSP文件中的全局特性。需要注意的是,page指令只能對當(dāng)前自身頁面進行設(shè)置,即每個頁面都有自身的page指令。如果沒有對屬性進行設(shè)置,JSP將使用默認指令屬性值(Page指令的常用屬性表,可查看教材的P26頁)。項目4制作又包含文件的JSP頁面程序2-5

:exam4_2_page1.jsp程序2-5:exam4_2_page1.jsp<%@pagelanguage=”java”contentType=”text/html;charset=UTF-8”pageEncoding=”UTF-8”%><H2>測試contentType!</H2>代碼分析:本例中,設(shè)置了<%@page>指令的language屬性,指定了開發(fā)語言為Java;contentType屬性,指定MIME類型為text/html,頁面的字符編碼集charset為UTF-8;pageEncoding屬性,指定頁面的字符編碼為UTF-8。顯示效果如圖2-2所示。圖2-2項目4制作又包含文件的JSP頁面程序2-6

:exam4_3_page2.jsp程序2-6:exam4_3_page2.jsp<%@pagelanguage=”java”contentType=”application/msword;charset=UTF-8”pageEncoding=”UTF-8”%><H2>測試contentType!</H2>代碼分析:使用<%@page>中的contentType=”application/msword”設(shè)置本頁面的MIME類型為Word,以Word文件進行顯示,運行效果見圖2-3所示。圖2-3項目4制作又包含文件的JSP頁面2、include指令:在JSP開發(fā)中,可以將一些重用的代碼寫入一個單獨的文件中,然后通過include指令引用該文件,從而緩解代碼的冗余問題,修改也比較方便。include指令語法格式為:<%@includefile=”被包含的文件路徑”%>inlcude也被稱為靜態(tài)包含指令,包含的文件可以是JSP文件、HTML文件、文本文件和Java程序段。靜態(tài)包含指令只是簡單的將內(nèi)容合在一起顯示,所以,在一個完整的頁面中,對于<html>、<head>、<title>、<body>等元素只能出現(xiàn)一次,如果重復(fù)出現(xiàn),則會造成HTML錯誤。在項目4任務(wù)中,其主要采用include指令完成不同類型文件的包含。項目4制作又包含文件的JSP頁面3、擴展——taglib指令:使用<%@taglib%>指令在JSP文件中導(dǎo)入標(biāo)簽,以便在JSP中使用標(biāo)簽方便地完成一些動作。taglib指令的語法為:<%@tagliburi=”tagLibraryURI”prefix=”tagPrefix”%>uri是一個URI標(biāo)識標(biāo)記庫描述器。一個標(biāo)記庫描述器用來唯一的命名一組定制的標(biāo)記,并且告訴包容器如何處理特殊的標(biāo)記。prefix定義一個prefix:tagname形式的字符串前綴,用于定義定制的標(biāo)記。項目5制作簡單的展示網(wǎng)站5.1項目描述與實現(xiàn)(1)描述制作一個簡單的JSP網(wǎng)站。網(wǎng)站主題為酒店網(wǎng)站,主要包括網(wǎng)站首頁、客房預(yù)訂和會議活動等頁面,效果如圖2-4~2-5所示。要求公共部分采用單獨文件,并被包含。開發(fā)過程采用Eclipse和Dreamweaver搭配開發(fā),設(shè)計顯示界面部分全部用Dreamweaver實現(xiàn),JSP程序部分在Eclipse中編寫,最后在Eclipse中測試運行。圖2-4酒店網(wǎng)站首頁圖2-5酒店訂房頁面項目5制作簡單的展示網(wǎng)站5.1項目描述與實現(xiàn)(2)實現(xiàn)過程:從任務(wù)需求可以分析出,此網(wǎng)站各頁面Top部分相同,Bottom部分也相同,因此在頁面制作時可將公共部分單獨創(chuàng)建,作為一個文件包含。實現(xiàn)過程為從設(shè)計圖首先實現(xiàn)出HTML頁面,然后將公共部分單獨提取,放入創(chuàng)建的新的文件中,以作為包含文件包含。1.制作首頁顯示效果。用Dreamweaver所見所得方式,從設(shè)計圖直接實現(xiàn)出exam5_index.html頁面。實現(xiàn)后,其代碼如程序2-7所示。項目5制作簡單的展示網(wǎng)站5.1項目描述與實現(xiàn)(2)實現(xiàn)過程:程序2-7

:exam5__index.html程序2-7:exam5_index.html/*詳細代碼在實驗指導(dǎo)書*/<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""/TR/xhtml1/DTD/xhtml1-transitional.dtd"><htmlxmlns="/1999/xhtml"><head><metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/><title>首頁--海南四季春天酒店</title>

……

省略 <divid="bottom_right"> <a>四季春天酒店管理有限公司版權(quán)所有

瓊ICP備78931000號</a></div></div><!--bottom部分結(jié)束--></div></body></html>代碼分析:該代碼為首頁的HTML界面,中間省略當(dāng)前顯示主題部分,完整代碼參見源碼。項目5制作簡單的展示網(wǎng)站5.1項目描述與實現(xiàn)(2)實現(xiàn)過程:2.提取公共部分,創(chuàng)建exam5_top.jsp文件,exam5_bottom文件通過分析,提取<!—top導(dǎo)航部分到<!—top導(dǎo)航部分結(jié)束的HTML內(nèi)容,創(chuàng)建導(dǎo)航的公共部分,即如程序2-8所示。提取<!—bottom部分到<!—bottom部分結(jié)束的HTML內(nèi)容,創(chuàng)建版權(quán)信息文件,如程序2-9所示。程序2-8:exam5_top.jsp<%@pagelanguage="java"contentType="text/html;charset=UTF-8“pageEncoding="UTF-8"%><divclass="top"> <divclass="top_right"><divclass="top_right_top"><divclass="top_right_time">當(dāng)?shù)貢r間:<scripttype="text/javascript"src="js/time.js"charset="UTF-8"></script></div><divclass="topnav"><ahref="#">關(guān)于四季春天</a>  <ahref="#">到達指引</a>  <ahref="#">English</a></div></div>……<divclass="clear"></div></div></div>項目5制作簡單的展示網(wǎng)站5.1項目描述與實現(xiàn)(2)實現(xiàn)過程:為了顯示代碼簡潔,將首頁主體部分單獨創(chuàng)建一個文件exam5_index_list.jsp,從exam5_index.html中提取<!—top導(dǎo)航部分結(jié)束到<!—bottom部分標(biāo)簽之間的HTML內(nèi)容,因為程序簡單,此處不再列出。程序2-9:exam5_bottom.jsp<%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%><divid="bottom"> <divid="bottom_left"> <ahref="#">隱私政策</a> | <ahref="#">細則及條款</a> | <ahref="#">安全與防護</a> | <ahref="#">網(wǎng)站地圖</a></div> <divid="bottom_right"> <a>四季春天酒店管理有限公司版權(quán)所有

瓊ICP備78931000號</a></div></div>

程序2-9

:exam5__bottom.jsp項目5制作簡單的展示網(wǎng)站5.1項目描述與實現(xiàn)(2)實現(xiàn)過程:將exam5_index.html中被提取的部分刪除后剩余的部分COPY進exam5_index.jsp,并在被提出文件出用包含動作指令包含提取出的文件,詳細代碼見程序2-10所示。程序2-10:exam5_index.jsp<%@pagelanguage="java"contentType="text/html;charset=UTF-8“pageEncoding="UTF-8"%><!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""/TR/xhtml1/DTD/xhtml1-transitional.dtd"><htmlxmlns="/1999/xhtml"><head><metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/><title>首頁--海南四季春天酒店</title>

……

省略<jsp:includepage="exam5_index_list.jsp"></jsp:include><jsp:includepage="exam5_bottom.jsp"></jsp:include></div></body></html>

程序2-10:exam5__index.jsp代碼分析:程序中,采用JSP動作指令<jsp:include>包含了文件exam5_top.jsp,exam5_index_list.jsp和exam5_bottom.jsp。項目5制作簡單的展示網(wǎng)站5.2新知識點-JSP動作指令、<jsp:include>在JSP中,還存在另外一類標(biāo)記,其符合XML的語法格式。利用這些標(biāo)記可以達到控制

Servlet引擎的作用,如動態(tài)的插入文件,調(diào)用JavaBean,頁面重定向等,這類標(biāo)記稱為JSP動作標(biāo)記。JSP的常用動作標(biāo)記有<jsp:include>、<jsp:useBean>、<jsp:setProperty>、<jsp:getProperty>、<jsp:forward>、<jsp:plugin>、<jsp:params>等。常用的JSP動作如表2-2所示。項目5制作簡單的展示網(wǎng)站5.2新知識點-JSP動作指令、<jsp:include>動作名稱

動作說明

<jsp:include>包含一個靜態(tài)的或者動態(tài)的文件<jsp:useBean>用來在JSP頁面中創(chuàng)建一個bean實例并指定它的名字以及作用范圍<jsp:setProperty>用來設(shè)置bean的屬性值<jsp:getProperty>獲取bean的屬性的值并將之轉(zhuǎn)化為一個字符串,然后將其插入到輸出的頁面中<jsp:forward>重定向一個靜態(tài)html/jsp的文件,或者是一個程序段<jsp:params>用于傳遞參數(shù),必須與其他支持參數(shù)曲標(biāo)簽一起使用<jsp:plugin>用于下載JavaBean或Applet到客戶端執(zhí)行表2-2JSP常見動作指令表項目5制作簡單的展示網(wǎng)站5.2新知識點-JSP動作指令、<jsp:include><jsp

:include>指令可以完成JSP的動態(tài)包含操作,可以在當(dāng)前的JSP文件中包含TXT文件、JSP文件、HTML文件、Servlet文件等。<jsp

:include>動作指令在進行JSP網(wǎng)站開發(fā)時,是被廣泛使用的動作指令之一。其動作指令的語法格式為:<jsp:includepage=”被包含的文件路徑|<%=表達式%>”flush=”true|false”/>或<jsp:includepage=”被包含的文件路徑|<%=表達式%>”flush=”true|false”><jsp

:paramname=

"param1"value=

?value1

?/><jsp

:paramname="param2

"value=

?value2

?/></jsp

:include>在上述語法格式中,page屬性表示被包含文件的相對路徑或相對路徑的表達式。Flush=”true”表示不接收是否在包含目標(biāo)之前先刷新輸出緩沖區(qū),默認值為true。<jsp

:param>表示傳遞參數(shù),即需要傳遞給被包含文件的參數(shù)??梢詡鬟f多個參數(shù)。name屬性為參數(shù)名,value屬性為參數(shù)值。項目5制作簡單的展示網(wǎng)站5.2新知識點-JSP動作指令、<jsp:include><jsp

:include>動作指令第一種語法格式在項目4任務(wù)實現(xiàn)時已經(jīng)使用。<jsp

:include>動作指令第二種語法格式,即帶參數(shù)的語法格式,使用方法如程序2-11。

程序2-11:exam5_2_index.jsp<?xmlversion=”1.0”encoding=”UTF-8”?><%@pagelanguage=”java”contentType=”text/html;charset=UTF-8”pageEncoding=”UTF-8”%><!DOCTYPEhtmlPUBLIC“-//W3C//DTDXHTML1.0Transitional//EN”“/TR/xhtml1/DTD/xhtml1-transitional.dtd”><htmlxmlns=”/1999/xhtml”><head><metahttp-equiv=”Content-Type”content=”text/html;charset=UTF-8”/><title>Inserttitlehere</title></head><body><jsp:includepage=”exam5_2_include.jsp”><jsp:paramvalue=”Tom”name=”stu”/></jsp:include></body></html>代碼分析:該程序中,采用<jsp

:include>動作指令包含了文件exam5_2_include.jsp,在包含后,exam5_2_include.jsp需要獲取stu變量并顯示,因此采用第二種包含形式。通過<jsp:param>動作指令傳遞了參數(shù)stu,其值為Tom。項目5制作簡單的展示網(wǎng)站

程序2-12:exam5_2_include.jsp程序2-12:exam5_2_include.jsp<?xmlversion=”1.0”encoding=”UTF-8”?><%@pagelanguage=”java”contentType=”text/html;charset=UTF-8”pageEncoding=”UTF-8”%><%Stringstu=request.getParameter(“stu”);out.println(“姓名:”+stu);%>代碼說明:該文件為被包含文件,因其需要顯示一個傳遞的參數(shù),因此需要從調(diào)用它的頁面獲取stu變量。代碼中request.getParameter()為JSP內(nèi)置對象request調(diào)用了其獲取變量的方法getParameter。out.println()為JSP內(nèi)置對象out調(diào)用了輸出的方法println。

運行exam5_2_index.jsp,顯示文件被包含后的效果,如圖2-7所示。圖2-7include動作指令顯示效果項目5制作簡單的展示網(wǎng)站5.3擴展-<jsp:forward>的使用<jsp:forward>動作指令表示把當(dāng)前的頁面控制權(quán)轉(zhuǎn)向另外一個對象,該對象可以是一個HTML文件、JSP文件或者一個Servlet文件。<jsp:forward>的語法格式:<jsp:forwardpage=”轉(zhuǎn)向的文件路徑|<%=表達式%>”/>或者<jsp:forwardpage=”轉(zhuǎn)向的文件路徑|<%=表達式%>”><jsp

:paramname=

?param1

?value=

?value1

?/> <jsp

:paramname=

?param2

?value=

?value2

?/></jsp:forward>在上述格式中,page屬性為一個字符串或者一個表達式,用來表示轉(zhuǎn)向文件的路徑;<jsp

:param>字句指令為傳遞參數(shù),name指定參數(shù)名,value指定參數(shù)值。項目5制作簡單的展示網(wǎng)站5.3擴展-<jsp:forward>的使用<jsp:forward>的使用示例如下。

程序2-13exam5_3_forward.jsp程序2-13:exam5_3_forward.jsp<%@pagelanguage=”java”contentType=”text/html;charset=UTF-8”pageEncoding=”UTF-8”%><html><head><title>跳轉(zhuǎn)指令應(yīng)用</title></head><body> <h1>跳轉(zhuǎn)指令應(yīng)用:</h1> <jsp:forwardpage=”exam5_3_forward2.jsp”/> </body></html>代碼說明:該程序采用<jsp:forward>動作指令,重定向到文件exam6_5_forward2.jsp。項目5制作簡單的展示網(wǎng)站5.3擴展-<jsp:forward>的使用

程序2-14exam5_3_forward2.jsp程序2-14:exam5_3_forward2.jsp<?xmlversion=”1.0”encoding=”UTF-8”?><%@pagelanguage=”java”contentType=”text/html;charset=UTF-8”pageEncoding=”UTF-8”%><!DOCTYPEhtmlPUBLIC“-//W3C//DTDXHTML1.0Transitional//EN”“/TR/xhtml1/DTD/xhtml1-transitional.dtd”><htmlxmlns=”/1999/xhtml”><head><metahttp-equiv=”Content-Type”content=”text/html;charset=UTF-8”/><title>Inserttitlehere</title></head><body>重定向后的文件</body></html>代碼說明:該頁面進行了簡單的顯示。項目5制作簡單的展示網(wǎng)站5.3擴展-<jsp:forward>的使用運行exam5_

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論