實(shí)驗(yàn)二JSP內(nèi)置對(duì)像的使用_第1頁(yè)
實(shí)驗(yàn)二JSP內(nèi)置對(duì)像的使用_第2頁(yè)
實(shí)驗(yàn)二JSP內(nèi)置對(duì)像的使用_第3頁(yè)
實(shí)驗(yàn)二JSP內(nèi)置對(duì)像的使用_第4頁(yè)
實(shí)驗(yàn)二JSP內(nèi)置對(duì)像的使用_第5頁(yè)
已閱讀5頁(yè),還剩4頁(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)介

1、實(shí) 驗(yàn) 報(bào) 告課程名稱:網(wǎng)絡(luò)數(shù)據(jù)庫(kù)編程專業(yè)班級(jí):計(jì)算機(jī)科學(xué)與技術(shù)( )級(jí)學(xué)生學(xué)號(hào):學(xué)生姓名:實(shí)驗(yàn)名稱:實(shí)驗(yàn)成績(jī):課程類別: 必修限選þ 公選 其它JSP內(nèi)置對(duì)象(實(shí)驗(yàn))一、request對(duì)象1. 相關(guān)知識(shí)點(diǎn)HTTP通信協(xié)議是客戶與服務(wù)器之間一種提交(請(qǐng)求)信息與響應(yīng)信息(request/response)的通信協(xié)議。在JSP中,內(nèi)置對(duì)象request封裝了用戶提交的信息,那么該對(duì)象調(diào)用相應(yīng)的方法可以獲取封裝的信息,即使用該對(duì)象可以獲取用戶提交的信息。2實(shí)驗(yàn)?zāi)康谋緦?shí)驗(yàn)的目的是讓學(xué)生掌握怎樣在JSP中使用內(nèi)置對(duì)象request。3.實(shí)驗(yàn)要求學(xué)會(huì)看懂前調(diào)試Testcode2文件夾中的文件。

2、二、session對(duì)象1. 相關(guān)知識(shí)點(diǎn)HTTP協(xié)議是一種無(wú)狀態(tài)協(xié)議。一個(gè)客戶向服務(wù)器發(fā)出請(qǐng)求(request),然后服務(wù)器返回響應(yīng)(response),連接就被關(guān)閉了。所以,Tomcat服務(wù)器必須使用內(nèi)置session對(duì)象(會(huì)話)記錄有關(guān)連接的信息。同一個(gè)客戶在某個(gè)Web服務(wù)目錄中的session是相同的;同一個(gè)客戶在不同的Web服務(wù)目錄中的session是互不相同的;不同用戶的session是互不相同的。一個(gè)用戶在某個(gè)web服務(wù)目錄的session對(duì)象的生存期限依賴于客戶是否關(guān)閉瀏覽器、依賴于session對(duì)象是否調(diào)用invalidate()方法使得session無(wú)效或session對(duì)象達(dá)到

3、了設(shè)置的最長(zhǎng)的“發(fā)呆”時(shí)間。2實(shí)驗(yàn)?zāi)康谋緦?shí)驗(yàn)的目的是讓學(xué)生掌握怎樣使用session對(duì)象存儲(chǔ)和用戶有關(guān)的數(shù)據(jù)。3實(shí)驗(yàn)要求編寫四個(gè)JSP 頁(yè)面inputGuess.jsp、,實(shí)現(xiàn)猜數(shù)字游戲。具體要求如下的具體要求用戶請(qǐng)求inputGuess.jsp時(shí),隨機(jī)分配給該用戶一個(gè)1到100之間的數(shù)。該頁(yè)面同時(shí)負(fù)責(zé)將這個(gè)數(shù)字存在用戶的session對(duì)象中。該頁(yè)面提供表單,用戶可以使用該表單輸入自己的猜測(cè),并提交給result.jsp頁(yè)面。頁(yè)面負(fù)責(zé)判斷inputGuess.jsp提交的猜測(cè)是否和用戶的session對(duì)象中存放的那個(gè)數(shù)字相同,如果相同就將用戶重定向到;如果不相同就將用戶重定向到或。的具體要求s

4、mall.jsp和large.jsp頁(yè)面提供表單,用戶可以使用該表單繼續(xù)輸入自己的猜測(cè),并提交給result.jsp頁(yè)面。success.jsp的具體要求頁(yè)面負(fù)責(zé)負(fù)責(zé)顯示用戶成功的消息,并負(fù)責(zé)輸出用戶session對(duì)象中的數(shù)據(jù)。4JSP頁(yè)面效果示例(效果如圖4-4) 圖4-4 輸入猜測(cè)(效果如圖4-5) 圖4-5 猜大了(效果如圖4-6) 圖4-6 猜小了(效果如圖4-) 圖4-7 猜成功了5參考代碼代碼僅供參考,學(xué)生可按著實(shí)驗(yàn)要求,參考本代碼編寫代碼。JSP頁(yè)面參考代碼<% page contentType="text/html;charset=GB2312" %&

5、gt;<HTML><BODY bgcolor=cyan><FONT Size=2><P>隨機(jī)分給了你一個(gè)1到100之間的數(shù),請(qǐng)猜! <% int number=(int)(Math.random()*100)+1; session.setAttribute("count",new Integer(0); session.setAttribute("save",new Integer(number); %> <FORM action="result.jsp" method

6、="post" name=form> 輸入你的猜測(cè):<INPUT type="text" name="boy" > <INPUT TYPE="submit" value="送出" name="submit"> </FORM></FONT></BODY></HTML><% String str=request.getParameter("boy"); if(str.lengt

7、h()=0) response.sendRedirect("inputGuess.jsp"); int guessNumber=-1; try guessNumber=Integer.parseInt(str); Integer integer=(Integer)session.getAttribute("save"); int realnumber=Value(); if(guessNumber=realnumber) int n=(Integer)session.getAttribute("count").i

8、ntValue(); n=n+1; session.setAttribute("count",new Integer(n); response.sendRedirect("success.jsp"); else if(guessNumber>realnumber) int n=(Integer)session.getAttribute("count").intValue(); n=n+1; session.setAttribute("count",new Integer(n); response.sendRe

9、direct("large.jsp"); else if(guessNumber<realnumber) int n=(Integer)session.getAttribute("count").intValue(); n=n+1; session.setAttribute("count",new Integer(n); response.sendRedirect("small.jsp"); catch(Exception e) response.sendRedirect("inputGuess.j

10、sp"); %><% page contentType="text/html;charset=GB2312" %><HTML><BODY bgcolor=cyan> <FONT Size=2> <FORM action="result.jsp" method="get" name=form > 猜小了,請(qǐng)?jiān)俨拢?lt;INPUT type="text" name="boy" > <INPUT TYPE=&qu

11、ot;submit" value="送出" name="submit"> </FORM></FONT></BODY></HTML><% page contentType="text/html;charset=GB2312" %><HTML><BODY bgcolor=cyan> <FONT Size=2> <FORM action="result.jsp" method="get"

12、; name=form > 猜大了,請(qǐng)?jiān)俨拢?lt;INPUT type="text" name="boy" > <INPUT TYPE="submit" value="送出" name="submit"> </FORM></FONT></BODY></HTML><% page contentType="text/html;charset=GB2312" %><HTML><B

13、ODY bgcolor=cyan><FONT Size=2><% int count=(Integer)session.getAttribute("count").intValue();int num=(Integer)session.getAttribute("save").intValue();%><P>恭喜你,猜對(duì)了<BR>您共猜了<%=count%>次,這個(gè)數(shù)字就是<%=num%>。<BR>單擊超鏈接返回到inputGuess.jsp頁(yè)面:<BR>

14、;<A href="inputGuess.jsp">inputGuess.jsp</A> </FONT></BODY></HTML>有效范圍為application的bean(選讀)1. 相關(guān)知識(shí)點(diǎn)JSP頁(yè)面使用useBean標(biāo)記調(diào)用一個(gè)有效范圍是application的bean:<jsp:useBeanid= "bean起的名字" class= "創(chuàng)建bean的類" scope= "application"></jsp:useBean&

15、gt;或<jsp:useBeanid= "bean起的名字" class= "創(chuàng)建bean的類" scope= "application"/>JSP引擎為Web服務(wù)目錄下所有的JSP頁(yè)面分配一個(gè)共享的bean,不同用戶的scope取值是application的bean也都是相同的的一個(gè),也就是說(shuō),當(dāng)多個(gè)用戶同時(shí)訪問(wèn)一個(gè)JSP頁(yè)面時(shí),任何一個(gè)用戶對(duì)自己bean的屬性的改變,都會(huì)影響到其他的用戶。2實(shí)驗(yàn)?zāi)康谋緦?shí)驗(yàn)的目的是讓學(xué)生掌握使用有效范圍是application的bean制作一個(gè)簡(jiǎn)單的留言板。3實(shí)驗(yàn)要求要求編寫兩個(gè)JSP頁(yè)

16、面:inputMess.jsp和show.jsp。編寫一個(gè)名字為board的Javabean,其中board由MessBoard.class類負(fù)責(zé)創(chuàng)建。1.input.jsp頁(yè)面提供一個(gè)表單。其中表單允許用戶輸入留言者的姓名、留言標(biāo)題和留言內(nèi)容期,該表單將用戶輸入的信息提交給當(dāng)前頁(yè)面,當(dāng)前頁(yè)面調(diào)用名字為board的bean,并使用表單提交的數(shù)據(jù)設(shè)置board的有關(guān)屬性的值。要求在inputMess.jsp提供一個(gè)超鏈接,以便用戶單擊這個(gè)超鏈接訪問(wèn)show.jsp頁(yè)面。2.show.jsp調(diào)用名字為board的bean,并顯示該bean的allMessage屬性的值。ractice7WEB-IN

17、Fclassestomjiafei目錄中。4JSP頁(yè)面效果示例(效果如圖7-4) 圖7-4 設(shè)置有效范圍是application的bean(效果如圖7-5) 圖7-5 顯示有效范圍是application的bean5參考代碼代碼僅供參考,學(xué)生可按著實(shí)驗(yàn)要求,參考本代碼編寫代碼。JSP頁(yè)面參考代碼<% page contentType="text/html;charset=GB2312" %><% page import="tom.jiafei.MessBoard"%><jsp:useBean id="board&q

18、uot; class="tom.jiafei.MessBoard" scope="application"/><HTML><BODY> <FORM action="" method="post" name="form"> 輸入您的名字:<BR><INPUT type="text" name="name"> <BR>輸入您的留言標(biāo)題:<BR><INPUT type

19、="text" name="title"> <BR>輸入您的留言:<BR> <TEXTAREA name="content" ROWs="10" COLS=36 WRAP="physical"></TEXTAREA> <BR><INPUT type="submit" value="提交信息" name="submit"> </FORM> <j

20、sp:setProperty name="board" property="*"/> <A href="show.jsp">查看留言板</A></BODY></HTML><% page contentType="text/html;charset=GB2312" %><% page import="tom.jiafei.MessBoard"%><jsp:useBean id="board" c

21、lass="tom.jiafei.MessBoard" scope="application"/><HTML><BODY bgcolor=yellow> <jsp:getProperty name="board" property="allMessage"/> <A href="inputMess.jsp">我要留言</A></FONT></BODY></HTML>Javabean源文件參考代碼

22、package tom.jiafei;import java.util.*;import java.text.SimpleDateFormat;public class MessBoard String name,title,content; StringBuffer allMessage; ArrayList<String> savedName,savedTitle,savedContent,savedTime; public MessBoard() savedName=new ArrayList<String>(); savedTitle=new ArrayList

23、<String>(); savedContent=new ArrayList<String>(); savedTime=new ArrayList<String>(); public void setName(String s) try byte bb=s.getBytes("iso-8859-1"); s=new String(bb); catch(Exception exp) name=s; savedName.add(name); Date time=new Date(); SimpleDateFormat matter=new S

24、impleDateFormat("yyyy-MM-dd,HH:mm:ss"); String messTime=matter.format(time); savedTime.add(messTime); public void setTitle(String t) try byte bb=t.getBytes("iso-8859-1"); t=new String(bb); catch(Exception exp) title=t; savedTitle.add(title); public void setContent(String c) try b

25、yte bb=c.getBytes("iso-8859-1"); c=new String(bb); catch(Exception exp) content=c; savedContent.add(content); public StringBuffer getAllMessage() allMessage=new StringBuffer(); allMessage.append("<table border=1>"); allMessage.append("<tr>"); allMessage.append("<th>留言者姓名</th>"); allMessage.append("<th>留言標(biāo)題</th>"); allMessage.append("<th>留言內(nèi)容</th>"); allMessage.append("<th>

溫馨提示

  • 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)論