版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
模塊1
基于JSP指令和標(biāo)簽的
Web應(yīng)用程序開(kāi)發(fā)
章節(jié)導(dǎo)讀JSP(JavaServerPages,Java服務(wù)器頁(yè)面)是使用Java開(kāi)發(fā)Web應(yīng)用程序的基礎(chǔ),屬于JavaEE技術(shù)范疇。本模塊我們一起走進(jìn)JSP開(kāi)發(fā)領(lǐng)域,學(xué)習(xí)基于Java的Web開(kāi)發(fā)技術(shù),通過(guò)幾個(gè)簡(jiǎn)單的Web應(yīng)用程序?qū)W會(huì)JavaWeb開(kāi)發(fā)環(huán)境的搭建、了解JSP程序的開(kāi)發(fā)過(guò)程。本模塊需重點(diǎn)熟悉JSP程序的基本構(gòu)成、JSP標(biāo)簽和指令的應(yīng)用、Java代碼片段的嵌入及注釋的使用。
釋疑解惑【問(wèn)題1-1】HTML靜態(tài)網(wǎng)頁(yè)的訪問(wèn)過(guò)程是怎樣的?【問(wèn)題1-2】JSP動(dòng)態(tài)網(wǎng)頁(yè)的訪問(wèn)過(guò)程是怎樣的?【問(wèn)題1-3】網(wǎng)頁(yè)中的漢字亂碼如何解決?【問(wèn)題1-4】啟動(dòng)Tomcat服務(wù)器時(shí)發(fā)生問(wèn)題如何解決?【問(wèn)題1-5】在JSP程序中更換圖片后,在服務(wù)器上運(yùn)行JSP程序還是顯示原來(lái)的圖片如何解決?
前導(dǎo)知識(shí)【知識(shí)1-1】JavaWeb應(yīng)用程序開(kāi)發(fā)的基本概念1.Server與BrowserServer即服務(wù)器,Browser即瀏覽器。用戶(hù)必須通過(guò)瀏覽器訪問(wèn)Web服務(wù)器,才能閱讀Web服務(wù)器上的文件。信息的提供者建立好Web服務(wù)器,用戶(hù)使用瀏覽器可以取得該服務(wù)器中的文件及其他信息。2.HTTPHTTP(HyperTextTransferProtocol,超文本傳送協(xié)議)是一種網(wǎng)絡(luò)上傳輸數(shù)據(jù)的協(xié)議,專(zhuān)門(mén)用于傳輸萬(wàn)維網(wǎng)中的信息資源。3.HTMLHTML(HyperTextMarkupLanguage,超文本標(biāo)記語(yǔ)言)是Internet中編寫(xiě)網(wǎng)頁(yè)的主要標(biāo)識(shí)語(yǔ)言。網(wǎng)頁(yè)文件也可以稱(chēng)為HTML文件,其擴(kuò)展名為“.html”或“.htm”。HTML文件是純文本文件,一個(gè)HTML網(wǎng)頁(yè)文件包含許多HTML標(biāo)簽,可以使用記事本之類(lèi)的文本編輯工具查看網(wǎng)頁(yè)文件的HTML源代碼。4.HTML5HTML5是萬(wàn)維網(wǎng)的核心語(yǔ)言,是標(biāo)準(zhǔn)通用標(biāo)記語(yǔ)言中HTML的第5次重大修改。HTML5的第一份正式草案于2008年1月22日公布。2013年5月6日,HTML5.1正式草案公布,該規(guī)范定義了第5次重大版本。在這個(gè)版本中,新功能不斷推出,幫助Web應(yīng)用程序的開(kāi)發(fā)者努力提高新元素的互操作性。大部分現(xiàn)代瀏覽器已經(jīng)提供了某些HTML5支持。
前導(dǎo)知識(shí)【知識(shí)1-1】JavaWeb應(yīng)用程序開(kāi)發(fā)的基本概念5.CSSCSS(CascadingStyleSheet,串聯(lián)樣式表)用于對(duì)網(wǎng)頁(yè)布局、字體、顏色、背景和其他圖文效果實(shí)現(xiàn)更加精確的控制。CSS的主要作用是控制網(wǎng)頁(yè)的布局和美化網(wǎng)頁(yè)元素,可以控制許多僅使用HTML無(wú)法控制的屬性。除了文本格式,CSS還可以控制網(wǎng)頁(yè)中“塊”級(jí)別元素的格式和定位。同時(shí),CSS彌補(bǔ)了HTML對(duì)網(wǎng)頁(yè)格式化功能的不足,例如,CSS可以控制段落間距、行距等。6.CSS3CSS3是CSS技術(shù)的升級(jí)版本,其開(kāi)發(fā)是朝著模塊化的方向發(fā)展的。CSS3完全向后兼容。CSS3帶來(lái)的主要變化是可以使用新的選擇器和屬性,從而實(shí)現(xiàn)新的設(shè)計(jì)效果(如動(dòng)態(tài)效果和漸變效果),而且可以很簡(jiǎn)單地設(shè)計(jì)出較復(fù)雜的設(shè)計(jì)效果(如分欄)。7.JavaScriptJavaScript是一種腳本語(yǔ)言,可以和HTML混合使用,用來(lái)實(shí)現(xiàn)在Web頁(yè)面中與用戶(hù)交互。8.JSPJSP是由SunMicrosystems公司倡導(dǎo)、眾多公司一起參與建立的動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)標(biāo)準(zhǔn),該技術(shù)為創(chuàng)建顯示動(dòng)態(tài)生成內(nèi)容的Web頁(yè)面提供了一個(gè)簡(jiǎn)捷的方法。在HTML文件中嵌入Java代碼片段(Scriptlet)和JSP標(biāo)簽,構(gòu)成JSP網(wǎng)頁(yè)。在接收到客戶(hù)端的用戶(hù)請(qǐng)求時(shí),服務(wù)器會(huì)處理Java代碼片段,然后將生成處理結(jié)果的HTML頁(yè)面返回給客戶(hù)端的瀏覽器,瀏覽器將呈現(xiàn)最終的頁(yè)面效果。
前導(dǎo)知識(shí)【知識(shí)1-2】靜態(tài)網(wǎng)頁(yè)與HTML文件靜態(tài)網(wǎng)頁(yè)是使用HTML編寫(xiě)的超文本文檔,也稱(chēng)為HTML文件。一個(gè)HTML靜態(tài)網(wǎng)頁(yè)包含許多HTML標(biāo)簽。HTML是一種純文本的標(biāo)記語(yǔ)言,定義了網(wǎng)頁(yè)結(jié)構(gòu)和網(wǎng)頁(yè)元素,能夠滿(mǎn)足網(wǎng)頁(yè)普通格式要求。制作網(wǎng)頁(yè)時(shí),不管采用哪一種方法,最后得到的都是一個(gè)HTML文件,它可以在Web服務(wù)器上發(fā)布。一個(gè)HTML文件包含出現(xiàn)在網(wǎng)頁(yè)中的文字和一些HTML標(biāo)簽。這些HTML標(biāo)簽是HTML文件中特定的代碼,它告訴瀏覽器應(yīng)該做什么事情。例如,HTML文件中出現(xiàn)了一段這樣的代碼:<strong>歡迎你光臨本網(wǎng)站</strong>。這段代碼表示:在瀏覽器中顯示文字“歡迎你光臨本網(wǎng)站”,并且這些文字以粗體顯示。
前導(dǎo)操作【操作1-1】創(chuàng)建Web應(yīng)用程序的基本操作【操作1-2】在Dreamweaver中創(chuàng)建3個(gè)CSS樣式文件
實(shí)例探析【實(shí)例1-1】使用EclipseIDE創(chuàng)建靜態(tài)Web項(xiàng)目【操作要求】(1)搭建HTML靜態(tài)頁(yè)面的開(kāi)發(fā)環(huán)境。(2)在工作空間“D:\JavaWebProject\Unit01”中創(chuàng)建靜態(tài)Web項(xiàng)目demo1-1。(3)復(fù)制并應(yīng)用3個(gè)CSS樣式文件common.css、header.css、footer.css,分別作為網(wǎng)頁(yè)的通用樣式、網(wǎng)頁(yè)頂部導(dǎo)航欄的樣式和網(wǎng)頁(yè)底部導(dǎo)航欄的樣式。(4)創(chuàng)建靜態(tài)網(wǎng)頁(yè)common.html,該網(wǎng)頁(yè)為上、中、下三段式結(jié)構(gòu)。頂部為導(dǎo)航欄,該頂部導(dǎo)航欄左側(cè)依次為歡迎信息、【登錄】和【注冊(cè)】超鏈接,右側(cè)依次為【我的訂單】【資訊中心】【幫助中心】【快遞查詢(xún)】超鏈接;中間暫為空,用于插入網(wǎng)頁(yè)的主體內(nèi)容;底部為導(dǎo)航欄,該底部導(dǎo)航欄包含多個(gè)超鏈接。該網(wǎng)頁(yè)的瀏覽效果如圖1-8所示。靜態(tài)網(wǎng)頁(yè)common.html將作為創(chuàng)建動(dòng)態(tài)網(wǎng)頁(yè)的基礎(chǔ)網(wǎng)頁(yè)。圖1-8
靜態(tài)網(wǎng)頁(yè)common.html的瀏覽效果
實(shí)例探析【實(shí)例1-1】使用EclipseIDE創(chuàng)建靜態(tài)Web項(xiàng)目【實(shí)現(xiàn)過(guò)程】1.在Windows操作系統(tǒng)的文件資源管理器中創(chuàng)建必要的文件夾2.啟動(dòng)EclipseIDE進(jìn)入EclipseIDE主界面3.切換工作空間4.新建靜態(tài)Web項(xiàng)目demo1-15.在EclipseIDE的項(xiàng)目資源管理器中創(chuàng)建文件夾6.在EclipseIDE的項(xiàng)目資源管理器中創(chuàng)建CSS文件7.在EclipseIDE的項(xiàng)目資源管理器中創(chuàng)建靜態(tài)網(wǎng)頁(yè)8.瀏覽靜態(tài)網(wǎng)頁(yè)common.html
實(shí)例探析【實(shí)例1-2】創(chuàng)建顯示歡迎信息的JSP應(yīng)用程序【操作要求】(1)搭建JSP應(yīng)用程序開(kāi)發(fā)環(huán)境。為了提高Web應(yīng)用程序的開(kāi)發(fā)效率,將Tomcat服務(wù)器配置到EclipseIDE中,為Web項(xiàng)目指定一個(gè)Web應(yīng)用服務(wù)器,然后在EclipseIDE中操作Tomcat并部署和運(yùn)行Web項(xiàng)目。同時(shí),指定Web瀏覽器和JSP程序的編碼格式。(2)在工作空間“D:\JavaWebProject\Unit01”中新建動(dòng)態(tài)Web項(xiàng)目demo1-2。(3)使用EclipseIDE在動(dòng)態(tài)Web項(xiàng)目demo1-2中創(chuàng)建一個(gè)JSP應(yīng)用程序demo1-2.jsp,該JSP應(yīng)用程序在瀏覽器中輸出“您好,歡迎來(lái)到蝴蝶E購(gòu)網(wǎng)!”的歡迎信息。(4)在動(dòng)態(tài)Web項(xiàng)目demo1-2中創(chuàng)建另一個(gè)JSP應(yīng)用程序welcome.jsp,在該JSP應(yīng)用程序中添加必要的HTML標(biāo)簽和應(yīng)用所定義的樣式。
實(shí)例探析【實(shí)例1-2】創(chuàng)建顯示歡迎信息的JSP應(yīng)用程序【實(shí)現(xiàn)過(guò)程】1.啟動(dòng)EclipseIDE進(jìn)入EclipseIDE主界面2.在EclipseIDE中配置與啟動(dòng)Tomcat服務(wù)器3.新建動(dòng)態(tài)Web項(xiàng)目demo1-24.設(shè)置動(dòng)態(tài)Web項(xiàng)目的文本文件編碼5.在項(xiàng)目文件夾中創(chuàng)建必要的子文件夾6.復(fù)制CSS樣式文件和圖片文件7.創(chuàng)建JSP程序demo1-2.jsp8.配置構(gòu)建路徑9.啟動(dòng)Tomcat服務(wù)器10.運(yùn)行JSP程序demo1-2.jsp11.創(chuàng)建JSP程序welcome.jsp12.運(yùn)行JSP程序welcome.jsp
實(shí)例探析【實(shí)例1-2】創(chuàng)建顯示歡迎信息的JSP應(yīng)用程序【知識(shí)1-3】page指令在項(xiàng)目demo1-2中創(chuàng)建了兩個(gè)JSP程序demo1-2.jsp和welcome.jsp,這兩個(gè)JSP程序?qū)儆趧?dòng)態(tài)網(wǎng)頁(yè)。在沒(méi)有添加功能代碼的前提下,其基本代碼與【實(shí)例1-1】所創(chuàng)建的靜態(tài)網(wǎng)頁(yè)common.html相比,主要區(qū)別是使用了頁(yè)面指令page,對(duì)應(yīng)的代碼如下所示。<%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%>以下代碼增加了使用page指令指定頁(yè)面出現(xiàn)錯(cuò)誤時(shí)對(duì)應(yīng)的錯(cuò)誤處理頁(yè)面和導(dǎo)入相關(guān)包的代碼。<%@pagelanguage="java"import="java.util.*"errorPage="error.jsp"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%>page指令作用于整個(gè)JSP頁(yè)面,定義了許多與頁(yè)面相關(guān)的屬性,這些屬性在JSP被服務(wù)器解析成Servlet時(shí)會(huì)轉(zhuǎn)換成相應(yīng)的Java程序代碼。page指令常用的屬性如表1-4所示,這些屬性被用于和JSP容器通信,描述了和頁(yè)面相關(guān)的指令信息。在一個(gè)JSP頁(yè)面中,page指令可以出現(xiàn)多次,但是該指令中的屬性只能出現(xiàn)一次,重復(fù)的屬性設(shè)置將覆蓋前面的屬性設(shè)置。序號(hào)屬性名稱(chēng)使用樣例使用說(shuō)明1languagelanguage="java"用于設(shè)置JSP頁(yè)面使用的語(yǔ)言,其默認(rèn)值是java2contentTypecontentType="text/html;
charset=UTF-8"用于設(shè)置JSP頁(yè)面發(fā)送到客戶(hù)端的文檔的響應(yīng)報(bào)頭的MIME類(lèi)型和字符編碼,瀏覽器據(jù)此顯示網(wǎng)頁(yè)內(nèi)容3pageEncodingpageEncoding="UTF-8"用于定義JSP頁(yè)面的編碼格式,也就是指定文件編碼。如果沒(méi)有設(shè)置該屬性,JSP頁(yè)面使用contentType屬性指定的字符編碼。如果兩個(gè)屬性都沒(méi)有設(shè)置,則JSP頁(yè)面使用“ISO-8859-1”字符編碼4importimport="java.util.*"用于設(shè)置JSP導(dǎo)入的包,如果需要導(dǎo)入多個(gè)包,則使用半角逗號(hào)“,”分隔。JSP頁(yè)面可以嵌入Java代碼片段,這些Java代碼在調(diào)用API時(shí)需要導(dǎo)入相應(yīng)的包。5errorPageerrorPage="error.jsp"用于指定處理當(dāng)前JSP頁(yè)面異常錯(cuò)誤的另一個(gè)JSP頁(yè)面,指定的JSP錯(cuò)誤處理頁(yè)面必須設(shè)置isErrorPage屬性的值為true。errorPage屬性的值是一個(gè)URL字符串。如果該屬性在page指令中已經(jīng)設(shè)置,那么在web.xml文件中定義的任何錯(cuò)誤處理頁(yè)面都將被忽略,而優(yōu)先使用該屬性定義的錯(cuò)誤處理頁(yè)面6isErrorPageisErrorPage="true"該屬性可以將當(dāng)前JSP頁(yè)面設(shè)置成錯(cuò)誤處理頁(yè)面來(lái)處理另一個(gè)JSP頁(yè)面的錯(cuò)誤,也就是異常處理7sessionsession="false"用于指定JSP頁(yè)面是否使用HTTP的session對(duì)象。其屬性值是boolean類(lèi)型,可選值為true和false。默認(rèn)值是true,表示可以使用session對(duì)象。如果設(shè)置為false,則當(dāng)前JSP頁(yè)面將無(wú)法使用session對(duì)象8infoinfo="提示信息"用于設(shè)置JSP頁(yè)面的相關(guān)信息,該信息可以通過(guò)調(diào)用Servlet接口的getServletInfo()方法獲取表1-4
page指令常用的屬性
實(shí)例探析【實(shí)例1-2】創(chuàng)建顯示歡迎信息的JSP應(yīng)用程序【知識(shí)1-4】JavaWeb應(yīng)用程序的部署與運(yùn)行1.對(duì)JavaWeb應(yīng)用程序進(jìn)行部署將JavaWeb應(yīng)用程序所在文件夾(這里為demo1-2)及其子文件夾和JSP文件復(fù)制到Tomcat安裝文件夾下的webapp文件夾中,然后重新啟動(dòng)Tomcat服務(wù)器。2.運(yùn)行JavaWeb應(yīng)用程序打開(kāi)Edge瀏覽器,在地址欄中輸入“http://服務(wù)器IP:端口號(hào)/路徑/應(yīng)用程序名稱(chēng)”形式的URL地址,這里在地址欄中輸入“http://localhost:8080/demo1-2/demo1-2.jsp”,就可以運(yùn)行JavaWeb應(yīng)用程序了。
實(shí)例探析【實(shí)例1-3】在JSP頁(yè)面中顯示當(dāng)前系統(tǒng)日期【操作要求】(1)在工作空間“D:\JavaWebProject\Unit01”中新建動(dòng)態(tài)Web項(xiàng)目demo1-3。(2)在動(dòng)態(tài)Web項(xiàng)目demo1-3中分別創(chuàng)建JSP文件demo1-3.jsp、getDate.jsp、printDate1.jsp和printDate2.jsp,實(shí)現(xiàn)在JSP頁(yè)面顯示當(dāng)前系統(tǒng)日期的功能,各個(gè)JSP文件的要求如下。①demo1-3.jsp文件中使用Java代碼片段獲取當(dāng)前系統(tǒng)日期,使用JSP表達(dá)式在JSP頁(yè)面中輸出當(dāng)前系統(tǒng)日期。該文件的運(yùn)行結(jié)果如圖1-41所示。②getDate.jsp文件中只包含Java代碼片段,其功能是獲取并輸出當(dāng)前系統(tǒng)日期。③printDate1.jsp文件中使用include指令將getDate.jsp文件的內(nèi)容包含到當(dāng)前JSP頁(yè)面中。④printDate2.jsp文件中使用jsp:include動(dòng)作標(biāo)簽將getDate.jsp文件的內(nèi)容包含到當(dāng)前JSP頁(yè)面中。圖1-41demo1-3.jsp文件的運(yùn)行結(jié)果
實(shí)例探析【實(shí)例1-3】在JSP頁(yè)面中顯示當(dāng)前系統(tǒng)日期【實(shí)現(xiàn)過(guò)程】1.新建動(dòng)態(tài)Web項(xiàng)目demo1-32.創(chuàng)建JSP程序demo1-3.jsp3.在demo1-3.jsp文件中編寫(xiě)程序,實(shí)現(xiàn)所需的功能4.創(chuàng)建JSP程序getDate.jsp5.在getDate.jsp文件中編寫(xiě)程序,實(shí)現(xiàn)所需的功能6.創(chuàng)建JSP程序printDate1.jsp并編寫(xiě)代碼7.創(chuàng)建JSP程序printDate2.jsp與編寫(xiě)代碼
實(shí)例探析【實(shí)例1-3】在JSP頁(yè)面中顯示當(dāng)前系統(tǒng)日期【知識(shí)1-5】Java代碼片段在JSP頁(yè)面中可以嵌入Java代碼片段來(lái)完成業(yè)務(wù)處理,例如,demo1-3.jsp文件中在頁(yè)面中輸出當(dāng)前系統(tǒng)日期的功能就是通過(guò)嵌入Java代碼片段實(shí)現(xiàn)的。Java代碼片段是指在JSP頁(yè)面中嵌入的Java代碼,代碼片段將在頁(yè)面請(qǐng)求的處理期間被執(zhí)行。Java代碼片段被包含在“<%”和“%>”標(biāo)記之間??梢跃帉?xiě)單行或多行Java代碼,語(yǔ)句以“;”結(jié)尾,其格式與Java程序中的代碼格式相同。【知識(shí)1-6】JSP表達(dá)式JSP表達(dá)式可以直接把Java的表達(dá)式結(jié)果輸出到JSP頁(yè)面中。表達(dá)式的最終運(yùn)算結(jié)果將被轉(zhuǎn)換為字符串類(lèi)型,因?yàn)樵诰W(wǎng)頁(yè)中顯示的文字都是字符串。JSP表達(dá)式的語(yǔ)法格式如下。<%=表達(dá)式%>其中,表達(dá)式可以是任何Java的完整表達(dá)式。例如<%=strDate%>表示在JSP頁(yè)面輸出變量的值。
實(shí)例探析【實(shí)例1-3】在JSP頁(yè)面中顯示當(dāng)前系統(tǒng)日期【知識(shí)1-7】include指令include指令用于文件包含,該指令可以在JSP頁(yè)面中包含另一個(gè)文件的內(nèi)容,但是它僅支持靜態(tài)包含,也就是說(shuō)被包含文件中的所有內(nèi)容會(huì)原樣包含到該JSP頁(yè)面中。被包含文件的內(nèi)容可以是一段Java代碼、HTML代碼或者是另一個(gè)JSP頁(yè)面。如果將JSP的動(dòng)態(tài)內(nèi)容使用include指令包含的話(huà),也會(huì)被當(dāng)作靜態(tài)內(nèi)容包含到當(dāng)前JSP頁(yè)面中。被包含的文件內(nèi)容與當(dāng)前JSP頁(yè)面是一個(gè)整體。例如,以下代碼表示將與當(dāng)前文件位置相同的getDate.jsp文件包含進(jìn)來(lái),其中file屬性用于指定被包含的文件,其值是當(dāng)前JSP頁(yè)面文件的相對(duì)URL路徑。被包含的getDate.jsp文件中的Java代碼以靜態(tài)方式導(dǎo)入printDate1.jsp文件中,然后才被服務(wù)器編譯、執(zhí)行。<%@includefile="getDate.jsp"%>由于getDate.jsp文件被包含在printDate1.jsp文件中,因此getDate.jsp文件中的page指令代碼可以省略不寫(xiě),在被包含到printDate1.jsp文件后會(huì)直接使用printDate1.jsp文件的設(shè)置。
實(shí)例探析【實(shí)例1-3】在JSP頁(yè)面中顯示當(dāng)前系統(tǒng)日期【知識(shí)1-8】jsp:include動(dòng)作標(biāo)簽jsp:include動(dòng)作標(biāo)簽用于將另一個(gè)文件的內(nèi)容包含到當(dāng)前JSP頁(yè)面中,被包含的文件內(nèi)容可以是靜態(tài)文本,也可以是動(dòng)態(tài)代碼。當(dāng)前JSP頁(yè)面和被包含的頁(yè)面是兩個(gè)獨(dú)立的實(shí)體,被包含的頁(yè)面會(huì)對(duì)包含它的JSP頁(yè)面中的請(qǐng)求對(duì)象進(jìn)行處理,然后將處理結(jié)果作為當(dāng)前JSP頁(yè)面的包含內(nèi)容,與當(dāng)前JSP頁(yè)面內(nèi)容一起發(fā)送到客戶(hù)端。例如,以下代碼表示將與當(dāng)前文件位置相同的getDate.jsp文件包含進(jìn)來(lái)。<jsp:includepage="getDate.jsp"flush="true"/>屬性page用于指定被包含文件的相對(duì)路徑,例如,"getDate.jsp"是指將與當(dāng)前JSP文件在同一文件夾中的getDate.jsp文件包含到當(dāng)前JSP頁(yè)面中。屬性flush為可選項(xiàng),用于設(shè)置是否刷新緩沖區(qū),默認(rèn)值為false。如果設(shè)置為true,則在當(dāng)前JSP頁(yè)面使用了緩沖區(qū)的情況下,先刷新緩沖區(qū),然后再執(zhí)行包含操作。
實(shí)例探析【實(shí)例1-3】在JSP頁(yè)面中顯示當(dāng)前系統(tǒng)日期【知識(shí)1-9】JSP注釋由于JSP頁(yè)面由HTML代碼、JSP腳本和Java代碼等組成,因此在JSP文件中可以使用HTML注釋、JSP注釋和Java注釋。demo1-3.jsp文件中使用了多種注釋格式。1.HTML注釋“<!--獲取當(dāng)前日期的Java代碼片段-->”為HTML注釋?zhuān)@種注釋不會(huì)被顯示在網(wǎng)頁(yè)中,但在瀏覽器中查看網(wǎng)頁(yè)源代碼時(shí)能夠看到注釋內(nèi)容。2.Java注釋“<%//聲明規(guī)定日期格式的變量%>”為Java中的單行注釋。3.JSP注釋“<%--使用JSP表達(dá)式在頁(yè)面上顯示當(dāng)前日期--%>”為JSP注釋?zhuān)琂SP注釋只會(huì)被服務(wù)器編譯、執(zhí)行,不會(huì)發(fā)送到客戶(hù)端,在瀏覽器中查看網(wǎng)頁(yè)源代碼時(shí)看不到注釋內(nèi)容。
實(shí)例探析【實(shí)例1-3】在JSP頁(yè)面中顯示當(dāng)前系統(tǒng)日期【知識(shí)1-10】JSP的<%%>標(biāo)記JSP的<%%>標(biāo)記是JSP文件中最常用的標(biāo)記之一,并且有多種相似的形式,但其功能卻有區(qū)別,小結(jié)如下。(1)<%%>之間可以添加Java代碼片段。(2)<%=%>可以將變量或表達(dá)式值輸出到頁(yè)面。(3)<%----%>是JSP注釋。(4)<%@%>是JSP的指令標(biāo)簽。(5)<%!%>是聲明標(biāo)簽,例如,<%!intcount=0;%>聲明了一個(gè)全局變量count,該全局變量可以在整個(gè)JSP頁(yè)面中使用。聲明標(biāo)簽對(duì)將要在JSP程序中用到的變量和方法進(jìn)行聲明,在聲明語(yǔ)句中,可以一次性聲明多個(gè)變量和方法,必須以半角分號(hào)“;”結(jié)尾。在JSP程序中,變量和方法必須先聲明后使用,否則會(huì)報(bào)錯(cuò)。因?yàn)镴SP頁(yè)面被送到Tomcat服務(wù)器時(shí)會(huì)被編譯為Java文件,JSP頁(yè)面里面的所有內(nèi)容都會(huì)包含在一個(gè)方法里,如果不用聲明標(biāo)簽去聲明這是個(gè)變量或方法,就會(huì)報(bào)錯(cuò)。被包含文件中已經(jīng)聲明的變量和方法不需要重新進(jìn)行聲明。
典型應(yīng)用【任務(wù)1-1】基于JSP指令和HTML標(biāo)簽創(chuàng)建用戶(hù)登錄頁(yè)面【任務(wù)描述】在工作空間“D:\JavaWebProject\Unit01”中新建動(dòng)態(tài)Web項(xiàng)目task1-1,然后在動(dòng)態(tài)Web項(xiàng)目task1-1中創(chuàng)建JSP程序login1-1.jsp。該程序主要由HTML代碼組成,主體代碼為用戶(hù)登錄頁(yè)面的靜態(tài)代碼,主要包括一個(gè)表單及多個(gè)表單控件。同時(shí),使用JavaScript代碼驗(yàn)證用戶(hù)登錄時(shí)用戶(hù)名、密碼是否不為空,所輸入用戶(hù)名的長(zhǎng)度是否是4~20個(gè)字符。該JSP程序的運(yùn)行結(jié)果如圖1-42所示。圖1-42
JSP程序login1-1.jsp的運(yùn)行結(jié)果
典型應(yīng)用【任務(wù)1-2】基于JSP指令和HTML標(biāo)簽創(chuàng)建用戶(hù)注冊(cè)頁(yè)面【任務(wù)描述】在工作空間“D:\JavaWebProject\Unit01”中新建動(dòng)態(tài)Web項(xiàng)目task1-2。然后在動(dòng)態(tài)Web項(xiàng)目task1-2中創(chuàng)建JSP程序register1-2.jsp,該程序主要由HTML代碼組成,主體代碼為用戶(hù)注冊(cè)頁(yè)面的靜態(tài)代碼,主要包括一個(gè)表單及多個(gè)表單控件。同時(shí),使用JavaScript代碼驗(yàn)證用戶(hù)注冊(cè)時(shí)用戶(hù)名、密碼、郵箱地址是否不為空,所輸入用戶(hù)名的長(zhǎng)度是否是4~20
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- XX初中2025年秋季學(xué)期課堂教學(xué)改革推進(jìn)報(bào)告
- 聚氨酯地面施工方案(3篇)
- 蘇州攝影活動(dòng)策劃方案(3篇)
- 超撥水施工方案(3篇)
- 輕軌防水施工方案(3篇)
- 深基坑專(zhuān)項(xiàng)施工方案(危大工程)
- 除草清理施工方案(3篇)
- 頂板鋼筋施工方案(3篇)
- 外墻干掛石材施工方案范本
- 2026年大學(xué)英語(yǔ)六級(jí)作文與翻譯練習(xí)題庫(kù)
- 北京市順義區(qū)2025-2026學(xué)年八年級(jí)上學(xué)期期末考試英語(yǔ)試題(原卷版+解析版)
- 中學(xué)生冬季防溺水主題安全教育宣傳活動(dòng)
- 2026年藥廠安全生產(chǎn)知識(shí)培訓(xùn)試題(達(dá)標(biāo)題)
- 2026年陜西省森林資源管理局局屬企業(yè)公開(kāi)招聘工作人員備考題庫(kù)及參考答案詳解1套
- 英語(yǔ)A級(jí)常用詞匯
- 整車(chē)安全滲透測(cè)試白皮書(shū)
- (正式版)HGT 22820-2024 化工安全儀表系統(tǒng)工程設(shè)計(jì)規(guī)范
- 小兒支氣管炎護(hù)理課件
- NB-T 47013.15-2021 承壓設(shè)備無(wú)損檢測(cè) 第15部分:相控陣超聲檢測(cè)
- 打針協(xié)議免責(zé)書(shū)
- 四川省成都市八年級(jí)上學(xué)期物理期末考試試卷及答案
評(píng)論
0/150
提交評(píng)論