第2講-JSP語(yǔ)法基礎(chǔ)省名師優(yōu)質(zhì)課賽課獲獎(jiǎng)?wù)n件市賽課百校聯(lián)賽優(yōu)質(zhì)課一等獎(jiǎng)?wù)n件_第1頁(yè)
第2講-JSP語(yǔ)法基礎(chǔ)省名師優(yōu)質(zhì)課賽課獲獎(jiǎng)?wù)n件市賽課百校聯(lián)賽優(yōu)質(zhì)課一等獎(jiǎng)?wù)n件_第2頁(yè)
第2講-JSP語(yǔ)法基礎(chǔ)省名師優(yōu)質(zhì)課賽課獲獎(jiǎng)?wù)n件市賽課百校聯(lián)賽優(yōu)質(zhì)課一等獎(jiǎng)?wù)n件_第3頁(yè)
第2講-JSP語(yǔ)法基礎(chǔ)省名師優(yōu)質(zhì)課賽課獲獎(jiǎng)?wù)n件市賽課百校聯(lián)賽優(yōu)質(zhì)課一等獎(jiǎng)?wù)n件_第4頁(yè)
第2講-JSP語(yǔ)法基礎(chǔ)省名師優(yōu)質(zhì)課賽課獲獎(jiǎng)?wù)n件市賽課百校聯(lián)賽優(yōu)質(zhì)課一等獎(jiǎng)?wù)n件_第5頁(yè)
已閱讀5頁(yè),還剩45頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第二講JSP語(yǔ)法基礎(chǔ)主講教師:劉小飛-31/50教學(xué)內(nèi)容2.1JSP頁(yè)面元素組成2.2腳本元素2.3指令元素2.4動(dòng)作元素2/502.1JSP頁(yè)面元素組成靜態(tài)內(nèi)容指令表示式ScriptletJSP頁(yè)面<%Java代碼%><%=Java表示式%>HTML靜態(tài)文本以“<%@”開始,以“%>”結(jié)束。比如:<%@includefile="

Filename"%>聲明動(dòng)作<%!函數(shù)或方法%>以“<jsp:動(dòng)作名”開始,以“</jsp:動(dòng)作名>”結(jié)束比如:<jsp:includepage="Filename"/>注釋<!--這是注釋,但客戶端能夠查看到--><%--這也是注釋,但客戶端不能查看到--%>3/502.1JSP頁(yè)面元素組成JSP頁(yè)面組成一個(gè)jsp頁(yè)面由元素和模板數(shù)據(jù)組成.元素是必須由jsp容器處理部分.而模板數(shù)據(jù)是jsp容器不處理部分,如jsp中HTML內(nèi)容元素有三種類型:腳本元素,指令元素,動(dòng)作元素4/502.2JSP腳本元素JSP腳本元素表示式Scriptlet申明JSP腳本元素包含:5/502.2JSP腳本元素腳本元素申明:用于申明在其它腳本元素中能夠使用變量和方法腳本段:是一段java代碼表示式:java語(yǔ)言中完整表示式6/502.2JSP腳本元素JSP申明概念JSP申明就是在JSP頁(yè)面中申明Java方法或變量等JSP申明在JSP頁(yè)面中表現(xiàn)形式

<%!Java代碼%>注意:申明必須以”;”結(jié)尾.7/502.2JSP腳本元素申明1.申明變量如:<%!inttemp=36;StringstrTemp=“test”;%>8/502.2JSP腳本元素申明2.申明方法如:<%!publicintadd(intlength){intsum=0;for(inti=1;i<length;i++){sum+=i;}returnsum;}%>9/502.2JSP腳本元素申明3.申明類<%!public

classTest{public

intsum(){inti,sum=0;for(i=1;i<=100;i++){sum+=i;}returnsum;}}%><%Testtest=newTest();out.print(test.sum());%>10/502.2JSP腳本元素表示式概念

表示式是對(duì)數(shù)據(jù)表示,系統(tǒng)將其作為一個(gè)值進(jìn)行計(jì)算和顯示。表示式在JSP頁(yè)面中表現(xiàn)形式

<%=Java表示式%>

如:<%=4*5%>等效于<%out.print(String.valueof(4*5))%>注意:不能用一個(gè)分號(hào)(;)來(lái)作來(lái)表示式結(jié)束符。11/502.2JSP腳本元素<body><h1>JSP表示式

</h1><b>PI值:</b><%=Math.PI%><br/><b>100,99中最大值:</b><%=Math.max(100,99)%><br/><b>100,99中最小值:</b><%=Math.min(100,99)%><br/><b>3+2-5值:</b><%=3+2-5%><br/><b>(3+2)==5值:</b><%=(3+2)==5%><br/><b>(3+2)!=5值:</b><%=(3+2)!=5%><br/></body>

表示式使用JSP表示式進(jìn)行JSP編程12/50統(tǒng)計(jì)頁(yè)面訪問(wèn)次數(shù)<%@pagecontentType="text/html;charset=gbk"%><html><body><%!//全局變量

intcount=0;%><%count++;%><%=count%></body></html>2.2JSP腳本元素13/502.2JSP腳本元素JSPScriptlet概念

JSPScriptlet就是在JSP頁(yè)面里嵌入一段Java代碼JSPScriptlet在JSP頁(yè)面中表現(xiàn)形式

<%Java代碼%>注意:程序片段,必須以分號(hào)(;)結(jié)尾。14/502.2JSP腳本元素

<body><h1>以直角三角形形式顯示數(shù)字</h1>

<%for(inti=1;i<10;i++){for(intj=1;j<=i;j++){out.println(j);}out.println("<br/>");}%></body>使用JSPScriptlet進(jìn)行JSP編程15/50使用JSPScriptlet進(jìn)行JSP編程<html><head><title>ScripetletDemo</title></head><%if(Math.random()<0.5){%>Havea<B>nice</B>day!<%}else{%>Havea<B>lousy</B>day!<%}%></html>2.2JSP腳本元素16/50使用JSPScriptlet進(jìn)行JSP編程<h1>程序片段測(cè)試</h1><hr><%Stringgirl="songyan";if(girl.equals("songyan")){%><h2>你女朋友叫songyan</h2><br><%}else{%><h2>你沒(méi)有女朋友!</h2><br><%}%><br>17/502.2JSP腳本元素應(yīng)用實(shí)例需求:某系統(tǒng)計(jì)算金額中有兩種形式,一個(gè)是帶有兩位小數(shù),另一個(gè)是整數(shù),現(xiàn)在要求你在JSP頁(yè)面將不帶小數(shù)金額轉(zhuǎn)換為帶兩位小數(shù)金額。

分析:1、利用JSP申明,申明一個(gè)方法,將整數(shù)轉(zhuǎn)換為兩位小數(shù)2、利用JSPScriptlet調(diào)用申明方法,轉(zhuǎn)換金額2、在JSP頁(yè)面利用表示式將轉(zhuǎn)換后金額顯示出來(lái)18/502.2JSP腳本元素應(yīng)用實(shí)例

<%!//申明一個(gè)常量

finalStringSEPARATOR=".";//申明一個(gè)方法publicStringcovertAmountWithSeparator(Stringmoney){intindex=money.indexOf(SEPARATOR);Stringstr=money;if(index==-1)str=money+".00";returnstr;}%>19/502.3JSP指令元素JSP指令是為JSP引擎設(shè)計(jì)。指令元素不直接產(chǎn)生任何可見輸出內(nèi)容,只是告訴引擎怎樣處理其余JSP頁(yè)面部分。這些指令一直被括在<%@%>標(biāo)識(shí)中。20/502.3JSP指令元素JSP指令pageincludetaglibJSP指令語(yǔ)法為:<%@指令名稱屬性1="屬性值1"屬性2="屬性值2"…屬性n="屬性值n"%>JSP指令包含:21/502.3JSP指令元素page指令屬性languagepage指令用于設(shè)置JSP頁(yè)面屬性importbuffererrorPageisErrorPagelanguage–定義要使用腳本語(yǔ)言import–將包和方法導(dǎo)入ScriptletisErrorPage–表示當(dāng)前頁(yè)面能否作為錯(cuò)誤頁(yè)面errorPage–定義處理異常JSP頁(yè)面buffer–設(shè)置用來(lái)存放客戶端請(qǐng)求緩沖區(qū)大小22/502.3JSP指令元素Page指令主要功效處理JSP頁(yè)面漢字顯示問(wèn)題;導(dǎo)包指令;其它指令:錯(cuò)誤頁(yè)、頁(yè)面緩沖等等。23/502.3JSP指令元素<%@pagelanguage="Java"import"java.util.*"buffer="8kb"errorPage="error.jsp"isErrorPage="false"%><html><head><title>測(cè)試page指令</title></head><body><h1>這是一個(gè)測(cè)試頁(yè)面</h1></body></html>page指令屬性24/501、JSP頁(yè)面漢字顯示問(wèn)題:假如在頁(yè)面中輸入以下代碼--輸出部分有漢字,則保留時(shí)候犯錯(cuò)。原因是JSP頁(yè)面沒(méi)有指定編碼。Page指令25/50處理方法:<%@pagecontentType="text/html;charset=gbk"%><html><body><%out.println("JSP第二講");%></body></html>26/50Page指令2、導(dǎo)包屬性importimport屬性用于指定JSP頁(yè)面中能夠使用java類,其作用與java語(yǔ)言中import申明語(yǔ)句相同,能夠以下方式表示:<%@pageimport="java.sql.*"%><%@pageimport="java.sql.*,java.util.*"%>27/502.3JSP指令元素Include指令include指令用于在jsp頁(yè)面中靜態(tài)包含一個(gè)文件,該文件能夠是jsp頁(yè)面,HTML頁(yè)面,文本文件。使用了include指令jsp頁(yè)面在轉(zhuǎn)換時(shí),jsp容器會(huì)在其中插入所包含文件文本或代碼。include指令語(yǔ)法<%@includefile=”文件名”%>28/50include指令<html><head>include指令測(cè)試頁(yè)面</head><body><%@includefile="/test.html"%></body></html>include指令使用方法要嵌入JSP頁(yè)面文件29/50include指令使用include指令進(jìn)行JSP編程<%@pagelanguage="java"%><%@includefile="head.jsp"%><html><head><title></title></head><body><br><br><h4align=“center”>你好,歡迎來(lái)到廣東理工學(xué)院!</h4></body></html>30/502.3JSP指令元素Taglib指令taglib指令能夠讓JSP頁(yè)面使用標(biāo)簽taglib指令作用是在JSP頁(yè)面中,將標(biāo)簽庫(kù)描述符文件引入到該頁(yè)面中,并設(shè)置前綴,而去利用標(biāo)簽前綴去使用標(biāo)簽庫(kù)表述文件中標(biāo)簽語(yǔ)法<%@tagliburi=”標(biāo)簽庫(kù)表述符文件”prefix=”前綴名”%>31/50taglib指令taglib指令使用<html><body><%@tagliburi="/mytaglib.tld"prefix="mytags"%></body></html>JSP頁(yè)面在根目錄中搜索mytaglib標(biāo)簽庫(kù)描述符文件,而mytags前綴將mytaglib中標(biāo)簽嵌入JSP頁(yè)面關(guān)于標(biāo)簽詳細(xì)情況,后續(xù)章節(jié)將做詳細(xì)介紹32/502.4動(dòng)作元素與JSP指令元素不一樣,JSP動(dòng)作元素在請(qǐng)求處理階段起作用。JSP中動(dòng)作元素格式:<prefix:tagattribute=valueattribute-list…/>33/502.4動(dòng)作元素文件導(dǎo)入標(biāo)簽<jsp:include>用于在請(qǐng)求時(shí)間內(nèi)允許在現(xiàn)成JSP頁(yè)面里包含靜態(tài)或者動(dòng)態(tài)資源。格式<jsp:includepage=“{relativeURL|<%=expression%>}”flush=“true”/>34/50文件導(dǎo)入標(biāo)簽<jsp:include>比如<jsp:includepage=“admin/login.jsp”/><jsp:includepage=“admin/head.html”>35/50文件導(dǎo)入標(biāo)簽<jsp:include><jsp:include>與<%@include%>區(qū)分@include此包含屬于靜態(tài)包含,能夠包含任意文件,當(dāng)然只是把文件內(nèi)容包含進(jìn)來(lái)。例:現(xiàn)有兩個(gè)文件content.html和content.txt,其內(nèi)容分別為<h1>content.html</h1>和<h1>content.txt</h1>,現(xiàn)使用包含語(yǔ)句把上面三個(gè)語(yǔ)句進(jìn)行包含。36/5037/50<jsp:include>指令此語(yǔ)句為動(dòng)態(tài)包含,假如被包含頁(yè)面是JSP,則先處理之后再將結(jié)果包含,而假如包含是非*.jsp文件,則只是把文件內(nèi)容靜態(tài)包含進(jìn)來(lái)。上例中改為以下代碼,結(jié)果不變。38/50@include與<jsp:include>指令區(qū)分@include指令是先包含再處理。<jsp:include>指令是先處理再包含。39/50例題:新建一個(gè)include1.jsp,輸入以下內(nèi)容:<%inti=10;%><h1>include.jsp:<%=i%></h1>40/50新建一個(gè)includeDemo.jsp,輸入以下內(nèi)容:<html><body><%

inti=100;%><h1>include.jsp:<%=i%></h1><%@includefile="include1.jsp"%></body></html>41/50運(yùn)行結(jié)果出現(xiàn)異常:重復(fù)申明變量i。42/50假如換成以下代碼:新建一個(gè)includeDemo.jsp,輸入以下內(nèi)容:<html><body><%

inti=100;%><h1>include.jsp:<%=i%></h1><jsp:includepage="include1.jsp"/></body></html>43/50頁(yè)面轉(zhuǎn)發(fā)標(biāo)簽<jsp:forward><jsp:forwardpage=“uri”/>或者<jsp:forwardpage=“uri”><jsp:paramname=“參數(shù)名稱”value=“值”/></jsp:forward>a.jspb.jsp注:跳轉(zhuǎn)時(shí)地址欄沒(méi)有改變,此跳轉(zhuǎn)輸入服務(wù)器端跳轉(zhuǎn)2.4動(dòng)作元素44/50頁(yè)面轉(zhuǎn)發(fā)標(biāo)簽<jsp:forward>類似于:<jsp:include>:屬于標(biāo)簽指令形式。forward語(yǔ)句:屬于無(wú)條件跳轉(zhuǎn)語(yǔ)句。使用此跳轉(zhuǎn)語(yǔ)句,頁(yè)面內(nèi)容已經(jīng)跳轉(zhuǎn)了,不過(guò)地址欄沒(méi)有改變,假如沒(méi)有任何改變,意味著:用戶請(qǐng)求依然沒(méi)有改變,所以此跳轉(zhuǎn)屬于服務(wù)器端跳轉(zhuǎn)。45/50追加參數(shù)標(biāo)簽<jsp:param><jsp:param>提供了名稱和值信息,它用于傳遞參數(shù)。普通用在<jsp:include>和<jsp:forward>之間。語(yǔ)法以下:

<jsp:paramname=“參數(shù)名稱”

溫馨提示

  • 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論