版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 本科畢業(yè)設(shè)計(jì)說明書</b></p><p> 題 目:專業(yè)英語教學(xué)網(wǎng)站設(shè)計(jì)與</p><p> 實(shí)現(xiàn)——數(shù)據(jù)庫與管理</p><p> 院 (部):計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院</p><p> 專 業(yè): 網(wǎng)絡(luò)工程</p><p><b> 班
2、 級(jí): </b></p><p><b> 姓 名: </b></p><p><b> 學(xué) 號(hào): </b></p><p><b> 指導(dǎo)教師: </b></p><p> 完成日期: 2013年5月20日</p><
3、p><b> 目 錄</b></p><p><b> 摘 要III</b></p><p> ABSTRACTⅣ</p><p><b> 1 緒 論1</b></p><p> 1.1 課題背景1</p><p> 1
4、.2 課題設(shè)計(jì)研發(fā)的目的、意義概述1</p><p> 1.3 課題研究現(xiàn)狀1</p><p> 1.4 本文的主要工作1</p><p> 2 相關(guān)技術(shù)分析2</p><p> 2.1 JSP技術(shù)分析2</p><p> 2.2 MySQL介紹2</p><p> 2.
5、3 JavaBean技術(shù)3</p><p> 2.4 Servlet技術(shù)3</p><p> 2.5 MVC設(shè)計(jì)模式3</p><p> 2.6 Java4</p><p> 3 需求分析及系統(tǒng)設(shè)計(jì)6</p><p> 3.1課程網(wǎng)站的前臺(tái)實(shí)現(xiàn)6</p><p> 3.2
6、課程網(wǎng)站的后臺(tái)實(shí)現(xiàn)6</p><p> 3.3課程網(wǎng)站的需求分析7</p><p> 3.4數(shù)據(jù)庫設(shè)計(jì)8</p><p><b> 3.5本章小結(jié)9</b></p><p> 4 詳細(xì)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)10</p><p> 4.1 前臺(tái)系統(tǒng)的實(shí)施10</p>&l
7、t;p> 4.2 后臺(tái)系統(tǒng)的實(shí)施13</p><p> 4.3 各系統(tǒng)界面及關(guān)鍵代碼16</p><p> 4.4 教師模塊功能25</p><p> 4.5 管理員管理功能26</p><p> 4.6 學(xué)習(xí)論壇功能27</p><p> 4.8本章小結(jié)27</p><
8、;p><b> 5 系統(tǒng)測(cè)試29</b></p><p> 6 關(guān)鍵問題機(jī)解決方案33</p><p><b> 7 結(jié) 論36</b></p><p><b> 致 謝38</b></p><p><b> 參考文獻(xiàn)39</b&g
9、t;</p><p><b> 摘 要</b></p><p> 在信息化不斷完善的今天,網(wǎng)絡(luò)已經(jīng)引導(dǎo)我們完成了一次又一次的飛躍,現(xiàn)在它正引導(dǎo)我們走向另一次飛躍——網(wǎng)絡(luò)教學(xué)。</p><p> 本系統(tǒng)是基于JSP和JAVA的英語教學(xué)網(wǎng)站,主要使用以Tomcat為服務(wù)器、MySQL為數(shù)據(jù)庫、Myeclipse為環(huán)境的框架下開發(fā)。主要通過管理
10、員、教師、學(xué)生三個(gè)不同的身份實(shí)現(xiàn)網(wǎng)站用戶管理、教學(xué)公告發(fā)布、網(wǎng)站信息管理、教學(xué)內(nèi)容管理、文件上傳及管理、考試及成績發(fā)布及管理、在線答疑設(shè)計(jì)等功能,提供一個(gè)方便快捷的教學(xué)平臺(tái)供教師和學(xué)生使用。本文的主要工作包括相關(guān)技術(shù)的分析、用戶的需求分析,通過以上兩點(diǎn)從管理員、教師、學(xué)生三個(gè)角度進(jìn)行設(shè)計(jì)完成了教師、學(xué)生、論壇、測(cè)試等功能模塊,經(jīng)測(cè)試可以完成要求的大部分功能。本文工作更側(cè)重于網(wǎng)站后臺(tái),所以本網(wǎng)站的數(shù)據(jù)庫功能比較強(qiáng)大,能夠?qū)崿F(xiàn)網(wǎng)站后臺(tái)要求的
11、所有功能,但在線測(cè)試功能也存在著一些不足之處,有待于進(jìn)一步完善。</p><p> 關(guān)鍵詞:教學(xué)網(wǎng)站;JSP;JAVA;MySQL數(shù)據(jù)庫</p><p> Teaching web site design and implementation of Professional English - the database and management</p><p&g
12、t;<b> ABSTRACT</b></p><p> With the continuous improvement in information technology , the network has led us to complete leap again and again, and now it is leading us towards another leap - o
13、nline teaching.</p><p> The system is a teaching site based on JSP and JAVA English , the main use for the site are Tomcat,Myeclipse and MySQL. Primarily by administrators, teachers and students to achieve
14、three different user identity management, teaching announcement, website information management, teaching content management, file upload and management, publishing and management of examinations and results, online answ
15、er design features, providing a convenient learning platform for teachers and students. The main </p><p> Key words: Teaching website;The JSP;JAVA;The MySQL database</p><p><b> 緒 論</
16、b></p><p><b> 課題背景</b></p><p> 在信息化不斷完善的今天,網(wǎng)絡(luò)已經(jīng)引導(dǎo)我們完成了一次又一次的飛躍,現(xiàn)在它正引導(dǎo)我們走向另一次飛躍——網(wǎng)絡(luò)教學(xué)。</p><p> 課題設(shè)計(jì)研發(fā)的目的、意義概述</p><p> 在不斷信息化的今天,網(wǎng)絡(luò)已經(jīng)成為我們生活中最不可缺少的一部分,在
17、任何時(shí)間和領(lǐng)域假設(shè)沒有網(wǎng)絡(luò)那么我們的工作將很難繼續(xù)下去。同時(shí)網(wǎng)絡(luò)的發(fā)展也推動(dòng)以一些新興產(chǎn)業(yè)的發(fā)展,新興事物應(yīng)運(yùn)而生,舊的東西也有了新的發(fā)展,被看作呆板的教學(xué)也有了新的突破,網(wǎng)絡(luò)教學(xué)就是其中的一個(gè)。網(wǎng)絡(luò)教學(xué)具有更好的互動(dòng)性、實(shí)時(shí)性,同時(shí)更易于被現(xiàn)在的年輕人所接受,已經(jīng)成為網(wǎng)絡(luò)主要發(fā)展的一個(gè)領(lǐng)域,也將逐漸代替舊的教育方式。</p><p><b> 課題研究現(xiàn)狀</b></p>
18、<p> 目前網(wǎng)絡(luò)教育發(fā)展大致分為兩個(gè)方向:</p><p> ?。?)以視頻方式的在線教學(xué)</p><p> (2)基于Web的非實(shí)時(shí)性教學(xué)</p><p> 前者更加側(cè)重實(shí)時(shí)性,通過音頻和視頻讓老師可以“面對(duì)面”的給同學(xué)講課;后后者就是將文件存放在web服務(wù)器上供用戶訪問。</p><p> 隨著中國綜合實(shí)力的不斷增強(qiáng),
19、教育已經(jīng)被一次又一次的提及,教育的重要性已經(jīng)不言而喻,而這種新興的教育方式必將被大多數(shù)年輕人所接受。同時(shí)這項(xiàng)課題可以最大程度的節(jié)省時(shí)間,人們可以隨時(shí)隨地的在線瀏覽學(xué)習(xí),更加方面用戶。</p><p><b> 本文的主要工作</b></p><p> 首先從網(wǎng)上查閱網(wǎng)絡(luò)文件管理系統(tǒng)相關(guān)資料,了解同類系統(tǒng)的發(fā)展現(xiàn)狀及趨勢(shì)。分析網(wǎng)上教學(xué)系統(tǒng)的相關(guān)功能,結(jié)合本次畢業(yè)設(shè)計(jì)
20、的相關(guān)要求寫出需求分析;其次,綜合運(yùn)用以前所學(xué)的相關(guān)知識(shí)(包括計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)、ASP與網(wǎng)絡(luò)數(shù)據(jù)庫相關(guān)知識(shí)等),選擇SQL Server數(shù)據(jù)庫,在ASP環(huán)境下運(yùn)用VBSCRIPT及JAVASCRIPT腳本語言進(jìn)行本畢業(yè)設(shè)計(jì)的開發(fā);在設(shè)計(jì)中以需求分析為基礎(chǔ),寫出系統(tǒng)開發(fā)計(jì)劃、實(shí)現(xiàn)流程及相關(guān)問題的實(shí)現(xiàn)方法;最后,系統(tǒng)開發(fā)完畢后,進(jìn)行調(diào)試和運(yùn)行。</p><p><b> 相關(guān)技術(shù)分析</b>&l
21、t;/p><p><b> JSP技術(shù)分析</b></p><p> JSP技術(shù)使用Java編程語言編寫類XML的tags和scriptlets,來封裝產(chǎn)生動(dòng)態(tài)網(wǎng)頁的處理邏輯。網(wǎng)頁還能通過tags和scriptlets訪問存在于服務(wù)端的資源的應(yīng)用邏輯。JSP將網(wǎng)頁邏輯與網(wǎng)頁設(shè)計(jì)和顯示分離,支持可重用的基于組件的設(shè)計(jì),使基于Web的應(yīng)用程序的開發(fā)變得迅速和容易。 <
22、;/p><p> Web服務(wù)器在訪問JSP網(wǎng)頁的請(qǐng)求時(shí),首先執(zhí)行其中的程序段,然后將執(zhí)行結(jié)果連同JSP文件中的HTML代碼一起返回給客戶。插入的Java程序段可以操作數(shù)據(jù)庫、重新定向網(wǎng)頁等,以實(shí)現(xiàn)建立動(dòng)態(tài)網(wǎng)頁所需要的功能。 </p><p> JSP與Java Servlet一樣,是在服務(wù)器端執(zhí)行的,通常返回該客戶端的就是一個(gè)HTML文本,因此客戶端只要有瀏覽器就能瀏覽。</p>
23、;<p><b> MySQL介紹</b></p><p> 數(shù)據(jù)庫,顧名思義就是對(duì)數(shù)據(jù)進(jìn)行組織,存儲(chǔ)和管理的“倉庫”。本質(zhì)上講:“數(shù)據(jù)庫是存儲(chǔ)在一起的相關(guān)數(shù)據(jù)的集合,這些數(shù)據(jù)是結(jié)構(gòu)化的,無有害的或不必要的冗余,并為多種應(yīng)用服務(wù);數(shù)據(jù)的存儲(chǔ)獨(dú)立于使用它的程序;對(duì)數(shù)據(jù)庫插入新數(shù)據(jù),修改和檢索原有數(shù)據(jù)均能按一種公用的和可控制的方式進(jìn)行。當(dāng)某個(gè)系統(tǒng)中存在結(jié)構(gòu)上完全分開的若干個(gè)數(shù)據(jù)
24、庫時(shí),則該系統(tǒng)包含一個(gè)‘?dāng)?shù)據(jù)庫集合’?!边@也就意味著:“盡可能不重復(fù),以最優(yōu)方式為某個(gè)特定組織的多種應(yīng)用服務(wù),其數(shù)據(jù)結(jié)構(gòu)獨(dú)立于使用它的應(yīng)用程序,對(duì)數(shù)據(jù)的增、刪、改和檢索由統(tǒng)一軟件進(jìn)行管理和控制”是數(shù)據(jù)庫的主要目的。</p><p> 按照關(guān)系型數(shù)據(jù)庫和非關(guān)系型數(shù)據(jù)庫進(jìn)行劃分,MySQL屬于小型關(guān)系型數(shù)據(jù)庫系統(tǒng)。其所具有的開源,體積小,速度快,成本低的優(yōu)勢(shì),使得它在中小型網(wǎng)站中得到了廣泛的應(yīng)用。除此之外,MySQ
25、L還具有支持標(biāo)準(zhǔn)的ansisql語句,允許用戶使用多種語言編寫的程序?qū)ζ鋽?shù)據(jù)庫進(jìn)行訪問。同時(shí)它也可以在多個(gè)系統(tǒng)上運(yùn)行的特點(diǎn)。所以,我認(rèn)為這是一個(gè)非常適合網(wǎng)絡(luò)安全課程網(wǎng)站的數(shù)據(jù)庫系統(tǒng)。</p><p> 本系統(tǒng)包含了有關(guān)網(wǎng)絡(luò)安全概念的所有文本資料,課程題庫等大量數(shù)據(jù)資源。采用強(qiáng)大的MySQL,既可以保證性能,也可以提高安全性,對(duì)于網(wǎng)站的建設(shè)大有裨益。</p><p> MySQL的具體任
26、務(wù):</p><p> 結(jié)合JSP實(shí)現(xiàn)數(shù)據(jù)庫的設(shè)計(jì)搭建和管理。</p><p> 在使用JSP設(shè)計(jì)出前臺(tái)界面之后,再通過使用odbc、jdbc連接DB后,通過服務(wù)器端JSP就可以對(duì)遠(yuǎn)程數(shù)據(jù)庫進(jìn)行訪問、數(shù)據(jù)管理以及增刪查改等操作。</p><p> JavaBean技術(shù)</p><p> JavaBean 是一種JAVA語言寫成的可重用
27、組件。為寫成JavaBean,類必須是具體的和公共的,并且具有無參數(shù)的構(gòu)造器。JavaBean 通過提供符合一致性設(shè)計(jì)模式的公共方法將內(nèi)部域暴露成員屬性。眾所周知,屬性名稱符合這種模式,其他Java 類可以通過自身機(jī)制發(fā)現(xiàn)和操作這些JavaBean 屬性。</p><p> 用戶可以使用JavaBean將功能、處理、值、數(shù)據(jù)庫訪問和其他任何可以用java代碼創(chuàng)造的對(duì)象進(jìn)行打包,并且其他的開發(fā)者可以通過內(nèi)部的JS
28、P頁面、Servlet、其他JavaBean、applet程序或者應(yīng)用來使用這些對(duì)象。用戶可以認(rèn)為JavaBean提供了一種隨時(shí)隨地的復(fù)制和粘貼的功能,而不用關(guān)心任何改變。 JavaBean可分為兩種:一種是有用戶界面(UI,User Interface)的JavaBean;還有一種是沒有用戶界面,主要負(fù)責(zé)處理事務(wù)(如數(shù)據(jù)運(yùn)算,操縱數(shù)據(jù)庫)的JavaBean。JSP通常訪問的是后一種JavaBean。序構(gòu)造器工具的多種方案中再利用。
29、這也是JavaBean組件區(qū)別于Java程序的特點(diǎn)。</p><p><b> Servlet技術(shù)</b></p><p> Servlet是一種獨(dú)立于平臺(tái)和協(xié)議的服務(wù)器端的Java應(yīng)用程序,可以生成動(dòng)態(tài)的Web頁面。 它擔(dān)當(dāng)Web瀏覽器或其他Http客戶程序發(fā)出請(qǐng)求,與HTTP服務(wù)器上的數(shù)據(jù)庫或應(yīng)用程序之間的中間層。Servlet是位于Web 服務(wù)器內(nèi)部的服務(wù)器
30、端的Java應(yīng)用程序,與傳統(tǒng)的從命令行啟動(dòng)的Java應(yīng)用程序不同,Servlet由Web服務(wù)器進(jìn)行加載,該Web服務(wù)器必須包含支持Servlet的Java虛擬機(jī)。</p><p><b> MVC設(shè)計(jì)模式</b></p><p> MVC是三個(gè)單詞的縮寫,分別為: 模型(Model),視圖(View)和控制Controller)。 MVC模式的目的就是實(shí)現(xiàn)Web系
31、統(tǒng)的職能分工。 Model層實(shí)現(xiàn)系統(tǒng)中的業(yè)務(wù)邏輯,通??梢杂肑avaBean或EJB來實(shí)現(xiàn)。 View層用于與用戶的交互,通常用JSP來實(shí)現(xiàn)。 Controller層是Model與View之間溝通的橋梁,它可以分派用戶的請(qǐng)求并選擇恰當(dāng)?shù)囊晥D以用于顯示,同時(shí)它也可以解釋用戶的輸入并將它們映射為模型層可執(zhí)行的操作。</p><p> MVC是一個(gè)設(shè)計(jì)模式,它強(qiáng)制性的使應(yīng)用程序的輸入、處理和輸出分開。使用MVC應(yīng)用程
32、序被分成三個(gè)核心部件:模型、視圖、控制器。它們各自處理自己的任務(wù)。分層概念如下:</p><p> ?。?)視圖是用戶看到并與之交互的界面。對(duì)老式的Web應(yīng)用程序來說,視圖就是由HTML元素組成的界面,在新式的Web應(yīng)用程序中,HTML依舊在視圖中扮演著重要的角色,但一些新的技術(shù)已層出不窮,它們包括Macromedia Flash和象XHTML,XML/XSL,WML等一些標(biāo)識(shí)語言和Web services。MV
33、C一個(gè)大的好處是它能為應(yīng)用程序處理很多不同的視圖。在視圖中其實(shí)沒有真正的處理發(fā)生,不管這些數(shù)據(jù)是聯(lián)機(jī)存儲(chǔ)的還是一個(gè)雇員列表,作為視圖來講,它只是作為一種輸出數(shù)據(jù)并允許用戶操縱的方式。</p><p> (2)模型表示企業(yè)數(shù)據(jù)和業(yè)務(wù)規(guī)則。在MVC的三個(gè)部件中,模型擁有最多的處理任務(wù)。例如它可能用像EJBs和ColdFusion Components這樣的構(gòu)件對(duì)象來處理數(shù)據(jù)庫。被模型返回的數(shù)據(jù)是中立的,就是說模型與
34、數(shù)據(jù)格式無關(guān),這樣一個(gè)模型能為多個(gè)視圖提供數(shù)據(jù)。由于應(yīng)用于模型的代碼只需寫一次就可以被多個(gè)視圖重用,所以減少了代碼的重復(fù)性。</p><p> ?。?)控制器接受用戶的輸入并調(diào)用模型和視圖去完成用戶的需求。所以當(dāng)單擊Web頁面中的超鏈接和發(fā)送HTML表單時(shí),控制器本身不輸出任何東西和做任何處理。它只是接收請(qǐng)求并決定調(diào)用哪個(gè)模型構(gòu)件去處理請(qǐng)求,然后再確定用哪個(gè)視圖來顯示返回的數(shù)據(jù)。開發(fā)模式設(shè)計(jì)中,事件一般是指客戶端
35、Web瀏覽器提交的各種不同請(qǐng)求,這些請(qǐng)求由控制器進(jìn)行處理,控制器根據(jù)事件的類型來改變模型或各個(gè)視圖,視圖也可以接受模型發(fā)出的數(shù)據(jù)更新通知,依據(jù)數(shù)據(jù)更新的結(jié)果調(diào)整視圖效果,呈現(xiàn)在用戶面前,而模型也可以通過視圖所獲得的用戶提交的數(shù)據(jù)進(jìn)行具體業(yè)務(wù)邏輯的處理。</p><p><b> 2.6Java</b></p><p><b> 簡單</b>
36、</p><p> Java的風(fēng)格類似于C++,并且摒棄了C++中容易引發(fā)程序錯(cuò)誤的地方,如指針和內(nèi)存管理。此外,Java提供了豐富的類庫。</p><p><b> 面向?qū)ο?lt;/b></p><p> 面向?qū)ο罂梢哉f是Java最重要的特性。Java語言的設(shè)計(jì)完全是面向?qū)ο蟮摹ava支持靜態(tài)和動(dòng)態(tài)風(fēng)格的代碼繼承及重要。</p>
37、;<p><b> 分布式</b></p><p> Java包括一個(gè)支持HTTP和FTP等基于TCP/IP協(xié)議的子庫。因此,Java應(yīng)用程序可憑借URL打開并訪問網(wǎng)絡(luò)上的對(duì)象,其訪問方式與訪問本地文件系統(tǒng)幾乎完全相同。</p><p><b> 健壯</b></p><p> Java致力于檢查程序
38、在編譯和運(yùn)行時(shí)的錯(cuò)誤。Java自己操縱內(nèi)存減少了內(nèi)存出錯(cuò)的可能性。Java提供Null指針檢測(cè)數(shù)組邊界、檢測(cè)異常出口、字節(jié)代碼校驗(yàn)。</p><p><b> ?。?)安全</b></p><p> Java的安全性可從兩個(gè)方面得到保證。一方面,在Java語言里,像指針和釋放內(nèi)存等C++功能被刪除,避免了非法內(nèi)存操作。另一方面,當(dāng)Java用來創(chuàng)建瀏覽器時(shí),語言功能和
39、瀏覽器本身提供的功能結(jié)合起來,使它更安全。</p><p><b> ?。?)結(jié)構(gòu)中立</b></p><p> 為了建立Java作為網(wǎng)絡(luò)的一個(gè)整體,Java將它的程序編譯成一種結(jié)構(gòu)中立的中間文件格式。只要有Java運(yùn)行系統(tǒng)的機(jī)器都能執(zhí)行這種中間代碼。Java源程序被編譯成一種高層次的與機(jī)器無關(guān)的byte-code格式語言,這種語言被設(shè)計(jì)在虛擬機(jī)上運(yùn)行,由機(jī)器相關(guān)的
40、運(yùn)行調(diào)試器實(shí)現(xiàn)執(zhí)行。</p><p><b> ?。?)可移植的 </b></p><p> Java的可移植性一直是Java程序設(shè)計(jì)師們的精神指標(biāo)也是Java之所以能夠受到程序設(shè)計(jì)師們喜愛的原因之一,最大的功臣就是JVM的技術(shù)。JAVA編譯器產(chǎn)生的目標(biāo)代碼(J-Code) 是針對(duì)一種并不存在的CPU--JAVA虛擬機(jī)(JAVA Virtual Machine),
41、而不是某一實(shí)際的CPU。JAVA虛擬機(jī)能掩蓋不同CPU之間的差別使J-Code能運(yùn)行于任何具有JAVA虛擬機(jī)的機(jī)器上。 </p><p><b> ?。?)高性能 </b></p><p> Java可以在運(yùn)行時(shí)直接將目標(biāo)代碼翻譯成機(jī)器指令。Sun用直接解釋器一秒鐘內(nèi)可調(diào)用300,000個(gè)過程。翻譯目標(biāo)代碼的速度與C/C++的性能沒什么區(qū)別。 (9)多線程
42、 </p><p> Java支持多線程多線程功能使得在一個(gè)程序里可同時(shí)執(zhí)行多個(gè)小任務(wù)。線程,有時(shí)也稱小進(jìn)程是一個(gè)大進(jìn)程里分出來的小的獨(dú)立的進(jìn)程。 </p><p><b> ?。?0)動(dòng)態(tài)</b></p><p> Java的動(dòng)態(tài)特性是其面向?qū)ο笤O(shè)計(jì)方法的發(fā)展。它允許程序動(dòng)態(tài)地裝入運(yùn)行過程中所需要的類,這是C++語言進(jìn)行面向?qū)ο蟪绦蛟O(shè)
43、計(jì)所無法實(shí)現(xiàn)的。Java編譯器不是將對(duì)實(shí)例變量和成員函數(shù)的引用編譯為數(shù)值引用,而是將符號(hào)引用信息在字節(jié)碼中保存下傳遞給解釋器,再由解釋器在完成動(dòng)態(tài)連接類后,將符號(hào)引用信息轉(zhuǎn)換為數(shù)值偏移量。</p><p><b> 需求分析及系統(tǒng)設(shè)計(jì)</b></p><p> 3.1課程網(wǎng)站的前臺(tái)實(shí)現(xiàn)</p><p> 本網(wǎng)站前臺(tái)主要通過Myeclips
44、e軟件,Java語言進(jìn)行設(shè)計(jì)實(shí)現(xiàn),主要通過3個(gè)身份的不同認(rèn)證顯示出不同的身份功能。</p><p> 3.2課程網(wǎng)站的后臺(tái)實(shí)現(xiàn)</p><p> 網(wǎng)站管理后臺(tái),俗稱網(wǎng)站后臺(tái),是管理網(wǎng)站前臺(tái)的一系列操作。通過網(wǎng)站管理后臺(tái)達(dá)到有效管理網(wǎng)站信息和資源、方便瀏覽者查閱的目的。</p><p> 處于安全性和可維護(hù)性等因素的考慮,網(wǎng)站的后臺(tái)只允許通過用戶名和密碼驗(yàn)證的瀏
45、覽者登陸。后臺(tái)不同與前臺(tái),前臺(tái)服務(wù)用戶,后臺(tái)需要管理員管理。</p><p> 本課程網(wǎng)站根據(jù)功能分析,需要有管理員實(shí)體,教學(xué)資源實(shí)體,在線模擬測(cè)試實(shí)體,學(xué)生在線留言交流實(shí)體。</p><p> 其中,管理員通過輸入正確的用戶名和密碼進(jìn)入,可以對(duì)教學(xué)資源進(jìn)行上傳,同時(shí)也可以對(duì)學(xué)生的在線留言進(jìn)行回復(fù),刪除等操作。</p><p> 圖3.1 管理員實(shí)體屬性圖&l
46、t;/p><p> 圖3.2 教師(學(xué)生)信息屬性圖</p><p> 登錄過程分為3種情況:</p><p> 管理員登錄:管理員具有網(wǎng)站的最高權(quán)限,可以實(shí)現(xiàn)網(wǎng)站的任意非惡性操作,主要實(shí)現(xiàn)對(duì)網(wǎng)站用戶的管理以及對(duì)網(wǎng)站信息的維護(hù)。</p><p> 教師登錄:教師登錄主要實(shí)現(xiàn)對(duì)教育信息的發(fā)布或刪除,對(duì)教育資源的管理,以及一些問題的回復(fù)。同時(shí)
47、教師也具有對(duì)教育信息的公告發(fā)布的義務(wù)。</p><p> 學(xué)生登錄:學(xué)生登陸只要實(shí)現(xiàn)的功能也就是網(wǎng)絡(luò)資源的下載以及和教師或?qū)W生之間的交流。</p><p> 3.3課程網(wǎng)站的需求分析</p><p> 區(qū)別與其他的網(wǎng)絡(luò)視頻在線教育,本網(wǎng)站更加側(cè)重于高效,能夠使學(xué)生在網(wǎng)站上可以得到及時(shí)、確切的資料和學(xué)習(xí)。</p><p> 為實(shí)現(xiàn)功能完
48、善、方面高效的英語教育網(wǎng)站則必須側(cè)重于教師和學(xué)生兩個(gè)方面:</p><p> 教師更側(cè)重于節(jié)省時(shí)間,因此可以通過問題回收的方式將問題集中的發(fā)送到教師的郵箱那里,而在每周的固定時(shí)間定位教師的答疑時(shí)間,教師的教學(xué)視頻也會(huì)定期的公布在網(wǎng)站上面供學(xué)生學(xué)習(xí)和使用。</p><p> 從學(xué)生的角度是怎樣高效的學(xué)習(xí),在線看視頻的方式可以減少不必要的麻煩,可以隨時(shí)隨地的下載觀看,而且集中答疑也同時(shí)可以
49、給學(xué)生節(jié)省不少時(shí)間。</p><p> 由于課程網(wǎng)站的設(shè)計(jì)立足于方便教師教學(xué),方便學(xué)生學(xué)習(xí),提高學(xué)生的自學(xué)能力,同時(shí)節(jié)約教學(xué)成本。所以,本課程網(wǎng)站的功能為:在線查看課程信息,共享課程資源,網(wǎng)上答疑,在線考試,用戶賬戶管理,信息交流等。據(jù)此,要求系統(tǒng)做到以下功能:(1)網(wǎng)站用戶管理:對(duì)網(wǎng)站的各類用戶統(tǒng)一管理,便于查看。</p><p> 具體功能:網(wǎng)絡(luò)的用戶包括兩類:教師和學(xué)生。雖然兩
50、種用戶所得到的權(quán)限不同,但都是由管理員統(tǒng)一管理其信息。(2)教學(xué)公告發(fā)布:便于學(xué)生得到教學(xué)信息,實(shí)現(xiàn)高效的學(xué)習(xí)。</p><p> 具體功能:提供類似于公告欄的功能,實(shí)現(xiàn)消息的發(fā)布使學(xué)生可以及時(shí)得到消息從而高效學(xué)習(xí)。(3)資源共享:主要實(shí)現(xiàn)上傳下載功能,用戶能在資源共享界面上傳教學(xué)相關(guān)視頻、 題庫、課件,提交作業(yè)等功能,并在網(wǎng) 上顯示,為多人共享。</p><p> 具體功能:設(shè)置
51、專門提供上傳和下載的頁面,在該頁面提供上傳文件和下載文件的服務(wù),下載的權(quán)限是所有可以登錄到本系統(tǒng)的用戶,上傳的權(quán)限是管理員(給予老師管理員權(quán)限)。(4)學(xué)習(xí)論壇及在線答疑:給用戶提供一個(gè)良好的在線交流的平臺(tái)。</p><p> 具體功能:用戶登錄后可以使用論壇功能,學(xué)生的權(quán)限只能發(fā)表留言,不能對(duì)已有的留言進(jìn)行管理(刪除等操作),同時(shí)可以對(duì)其他用戶的留言進(jìn)行回復(fù)和查看,管理員則可以刪除已有的不符合論壇要求的發(fā)言
52、。(5)網(wǎng)站信息管理:對(duì)網(wǎng)站各部分信息進(jìn)行管理和更新。</p><p> 具體功能:此部分側(cè)重實(shí)現(xiàn)網(wǎng)站信息的更新以及升級(jí),只有管理員有這樣的權(quán)限。</p><p><b> 3.4數(shù)據(jù)庫設(shè)計(jì)</b></p><p><b> 數(shù)據(jù)表定義。</b></p><p> 數(shù)據(jù)表定義指定義數(shù)據(jù)庫中
53、數(shù)據(jù)表的結(jié)構(gòu),數(shù)據(jù)表的邏輯結(jié)構(gòu)包括:屬性名稱、類型、表示形式、缺省值、校驗(yàn)規(guī)則、是否關(guān)鍵字、可否為空等。將關(guān)系型數(shù)據(jù)庫按關(guān)系規(guī)范化要求進(jìn)行設(shè)計(jì)(3NF)。</p><p> ?。?)存儲(chǔ)設(shè)備和存儲(chǔ)空間組織。</p><p> 確定數(shù)據(jù)的存放地點(diǎn)、存儲(chǔ)路徑、存儲(chǔ)設(shè)備等。</p><p> ?。?)數(shù)據(jù)使用權(quán)限設(shè)置。</p><p> 針對(duì)用
54、戶的不同使用要求,確定數(shù)據(jù)的用戶使用權(quán)限,確保數(shù)據(jù)安全。</p><p> 數(shù)據(jù)庫命名為:network</p><p> 本網(wǎng)站使用的數(shù)據(jù)庫表如下:</p><p><b> 表3.1教師表</b></p><p><b> 表3.2學(xué)生表</b></p><p>
55、 此部分只簡要的描述了兩種表格的主要信息,還有一些個(gè)人信息和聯(lián)系方式并未在上述表格中體現(xiàn)。</p><p><b> 3.5本章小結(jié)</b></p><p> 本章對(duì)系統(tǒng)的總體設(shè)計(jì)進(jìn)行了簡要的描述,通過對(duì)各個(gè)主要功能模塊的分析介紹,奠定下面設(shè)計(jì)建站的目標(biāo)和方案。同時(shí)在系統(tǒng)測(cè)試和驗(yàn)證時(shí)用于功能對(duì)照。達(dá)到需求分析的目的。</p><p>&l
56、t;b> 詳細(xì)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)</b></p><p><b> 前臺(tái)系統(tǒng)的實(shí)施</b></p><p> 前臺(tái)系統(tǒng)的主要功能是向不同的用戶提供登錄入口從而獲得不同的權(quán)限信息以實(shí)現(xiàn)不同的功能,同時(shí)還具有教師(學(xué)生)注冊(cè)功能,實(shí)現(xiàn)與后臺(tái)數(shù)據(jù)的聯(lián)系。具體實(shí)施為:</p><p> 網(wǎng)站首頁為用戶提供登錄界面,對(duì)用的不同的用戶
57、分為管理員、教師、學(xué)生3種選擇,通過不同的身份登錄得到對(duì)后臺(tái)數(shù)據(jù)庫不同的管理權(quán)限從而實(shí)現(xiàn)功能上的劃分。 </p><p> 管理員:管理員登錄后會(huì)得到最高權(quán)限,對(duì)后臺(tái)數(shù)據(jù)庫可以進(jìn)行任何操作。其主要的3個(gè)功能包括:賬戶管理、課程介紹、教學(xué)團(tuán)隊(duì)。而每個(gè)部分有包括不同的功能。</p><p> 教師:相比較管理員對(duì)后臺(tái)的權(quán)限有所削弱,只能對(duì)后臺(tái)數(shù)據(jù)庫實(shí)現(xiàn)部分功能。主要包括課程信息的發(fā)布以及教
58、學(xué)視頻的上傳。</p><p> 學(xué)生:具有對(duì)后天數(shù)據(jù)庫最小的權(quán)限,只能對(duì)后臺(tái)數(shù)據(jù)庫進(jìn)行極少的一部分操作。主要是論壇討論部分的操作以及下載學(xué)習(xí)資料的部分。</p><p> 資料列表選項(xiàng)卡將導(dǎo)向資料查看頁面,該頁面顯示已有的所有資料(包含資料的標(biāo)題、內(nèi)容、教師所屬學(xué)院、系部等),并可通過點(diǎn)擊查看和教師姓名訪問其他頁面。教師和學(xué)生都可以通過自己的操作界面進(jìn)行查看,同時(shí)教師的界面中有添加和
59、修改學(xué)習(xí)資料的功能。</p><p> 學(xué)習(xí)論壇頁面,將展示學(xué)生和教師進(jìn)行留言交流互動(dòng)的信息。用戶可以通過我要留言、查看回復(fù)、我要回復(fù)等超鏈接進(jìn)入不同的頁面進(jìn)行不同的操作,實(shí)現(xiàn)教師和學(xué)生之間的交流功能。</p><p> 資源下載頁面,將為所有用戶提供網(wǎng)站現(xiàn)有資料的下載服務(wù)。</p><p> 在線考試界面:教師可以在自己的工作界面中添加試卷信息以及試題的描述
60、,同時(shí)學(xué)生可以在自己的學(xué)習(xí)界面中查看試卷在線答題。</p><p><b> 流程圖展示如下:</b></p><p> 圖4.1 網(wǎng)站基本結(jié)構(gòu)圖</p><p> 圖4.2 網(wǎng)站注冊(cè)結(jié)構(gòu)圖</p><p> 圖4.3 學(xué)生功能結(jié)構(gòu)圖</p><p> 圖4.4 教師列表結(jié)構(gòu)圖</
61、p><p> 圖4.5 教師登陸結(jié)構(gòu)圖</p><p> 圖4.6 學(xué)習(xí)論壇結(jié)構(gòu)圖</p><p><b> 后臺(tái)系統(tǒng)的實(shí)施</b></p><p> 通過創(chuàng)建數(shù)據(jù)庫,并實(shí)現(xiàn)對(duì)數(shù)據(jù)庫的操作來實(shí)現(xiàn)對(duì)后臺(tái)的管理。</p><p> 首先安裝數(shù)據(jù)庫MySQL,建立用戶數(shù)據(jù)庫text,在text數(shù)據(jù)
62、庫中新建后臺(tái)管理所需要用到的表。具體如下:</p><p><b> 管理員表:</b></p><p> 此部分的用戶對(duì)整個(gè)數(shù)據(jù)庫有最高的管理權(quán)限,可以對(duì)數(shù)據(jù)庫進(jìn)行所有操作,而此表則只是對(duì)管理員登錄的時(shí)候進(jìn)行測(cè)試。</p><p><b> 表設(shè)計(jì)如下:</b></p><p> 圖4.7
63、 管理員表結(jié)構(gòu)</p><p><b> 學(xué)生表:</b></p><p> 與管理員表的結(jié)構(gòu)相似,學(xué)生表的主要功能也是實(shí)現(xiàn)在學(xué)生登錄時(shí)進(jìn)行測(cè)試,但不同之處在于學(xué)生表可以進(jìn)行添加、修改和刪除。</p><p><b> 表結(jié)構(gòu)設(shè)計(jì)如下:</b></p><p> 圖4.8 學(xué)生表結(jié)構(gòu)<
64、/p><p><b> 教師表:</b></p><p> 與學(xué)生表相似,只是數(shù)據(jù)庫的權(quán)限有所不同。</p><p> 圖4.9 教師表結(jié)構(gòu)</p><p><b> 課程信息表:</b></p><p> 課程信息表主要是實(shí)現(xiàn)對(duì)課程信息的公布和提示功能,主要包括課程簡
65、介和教學(xué)團(tuán)隊(duì),管理員對(duì)該表有管理權(quán)限,教師有部分管理權(quán)限,而對(duì)于學(xué)生只有訪問權(quán)限。</p><p><b> 表結(jié)構(gòu)設(shè)計(jì)如下:</b></p><p> 圖4.10 課程信息表結(jié)構(gòu)</p><p><b> 部分內(nèi)容如下:</b></p><p><b> 試題表:</b&g
66、t;</p><p> 試題表主要是通過教師的添加、修改和刪除實(shí)現(xiàn)對(duì)該表的操作,同樣具有最高權(quán)限的管理員也有對(duì)該表進(jìn)行操作的權(quán)利。</p><p> 圖4.11 試題表結(jié)構(gòu)</p><p><b> 教學(xué)資料表:</b></p><p> 該表用于存放教學(xué)資料以及教學(xué)視頻,同時(shí)也提供學(xué)習(xí)資料和學(xué)習(xí)視頻的下載功能。
67、</p><p><b> 表結(jié)構(gòu)設(shè)計(jì)如下:</b></p><p> 圖4.12 教學(xué)資料表結(jié)構(gòu)</p><p><b> 試題題目表:</b></p><p> 該表主要是集中的存放各個(gè)試題以便于用戶可以更加直觀的看到,體現(xiàn)了方便、快捷的特點(diǎn),這正是網(wǎng)絡(luò)教學(xué)的目的。</p>
68、<p><b> 表的格式如下:</b></p><p> 圖4.13 試題題目表結(jié)構(gòu)</p><p><b> 論壇回復(fù)表:</b></p><p> 該表用于存放回復(fù)的時(shí)間、內(nèi)容、回復(fù)人等信息。</p><p><b> 表結(jié)構(gòu)設(shè)計(jì)如下:</b><
69、;/p><p> 圖4.14 論壇回復(fù)表結(jié)構(gòu)</p><p> 各系統(tǒng)界面及關(guān)鍵代碼</p><p><b> 網(wǎng)站首頁:</b></p><p> 圖4.15 網(wǎng)站首頁截圖</p><p><b> 資料列表:</b></p><p> 圖4
70、.16 資料列表截圖</p><p><b> <%</b></p><p><b> ......</b></p><p> sqlname = "select count(*) from main,teacher,type where main.idofteacher=teacher.teache
71、rid and main.idoftype=type.typeid";</p><p> ResultSet rt = stmt.executeQuery(sqlname);</p><p> rt.next();</p><p> intRowCount = rt.getInt(1);//取得整數(shù)保存與intRowCount變量中</p>
72、;<p> intPageCount = (intRowCount + intPageSize - 1) / intPageSize;//計(jì)算出總頁數(shù)(記錄總數(shù)+每頁顯示的記錄-1)/每頁顯示的記錄)</p><p> if (intPage > intPageCount)</p><p> intPage = intPageCount;</p>&
73、lt;p> sqlname = "select * from main,teacher,type where main.idofteacher=teacher.teacherid and main.idoftype=type.typeid and teacher like '%"+ teacher</p><p> + "%' and title lik
74、e '%"</p><p><b> + title</b></p><p> + "%' and course like '%"</p><p><b> + course</b></p><p> + "%' and
75、 type like '%"</p><p> + filetype</p><p> + "%' and fenlei1 like '%"</p><p><b> + fenlei1</b></p><p> + "%' and fenl
76、ei2 like '%"</p><p><b> + fenlei2</b></p><p> + "%' order by main.dateandtime desc";</p><p> rs = stmt.executeQuery(sqlname);//執(zhí)行sql,按照時(shí)間先后排序顯示
77、</p><p> i = (intPage - 1) * intPageSize;</p><p> for (j = 0; j < i; j++)</p><p> rs.next();%></p><p><b> ......</b></p><p><b>
78、 %></b></p><p><b> 管理員登錄:</b></p><p> 圖4.17 管理員登陸截圖</p><p> <script type="text/javascript"></p><p> function tupian(idt){</
79、p><p> var nametu="xiaotu"+idt;</p><p> var tp = document.getElementById(nametu);</p><p> tp.src="${pageContext.request.contextPath}/view/images/ico5.gif";</p
80、><p> for(var i=1;i<60;i++)</p><p><b> {</b></p><p> var nametu2="xiaotu"+i;</p><p> if(i!=idt*1)</p><p><b> {</b>&l
81、t;/p><p> var tp2=document.getElementById('xiaotu'+i);</p><p> if(tp2!=undefined)</p><p> {tp2.src="${pageContext.request.contextPath}/view/images/ico6.gif";}</
82、p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> function list(idstr){</p><p> var name1="subtree"
83、+idstr;</p><p> var name2="img"+idstr;</p><p> var objectobj=document.all(name1);</p><p> var imgobj=document.all(name2);</p><p> if(objectobj.style.displ
84、ay=="none"){</p><p> for(i=1;i<60;i++){</p><p> var name3="img"+i;</p><p> var name="subtree"+i;</p><p> var o=document.all(name);&
85、lt;/p><p> if(o!=undefined){</p><p> o.style.display="none";</p><p> var image=document.all(name3);</p><p> image.src="${pageContext.request.contextPath
86、}/view/images/ico4.gif";</p><p><b> }</b></p><p><b> }</b></p><p> objectobj.style.display="";</p><p> imgobj.src="${pag
87、eContext.request.contextPath}/view/images/ico3.gif";</p><p><b> }</b></p><p><b> else{</b></p><p> objectobj.style.display="none";</p>
88、;<p> imgobj.src="${pageContext.request.contextPath}/view/images/ico4.gif";</p><p><b> }</b></p><p><b> }</b></p><p><b> 添加教學(xué)視頻頁面:
89、</b></p><p> 圖4.18 添加教學(xué)視頻截圖</p><p> String path = request.getContextPath();</p><p> String basePath = request.getScheme()+"://"+request.getServerName()+":&qu
90、ot;+request.getServerPort()+path+"/";</p><p> Integer type = Integer.valueOf(request.getParameter("type"));</p><p> Map<Integer, String> nameMap = new HashMap<Inte
91、ger, String>();</p><p> nameMap.put(1, "教學(xué)課件");</p><p> nameMap.put(2, "教學(xué)視頻");</p><p> nameMap.put(3, "習(xí)題庫");</p><p> nameMap.put(
92、4, "參考資料");</p><p> nameMap.put(5, "學(xué)生作業(yè)");</p><p> String name = nameMap.get(type);</p><p><b> 試題添加頁面:</b></p><p> 圖4.19 試題添加截圖<
93、/p><p><b> 代碼略。</b></p><p><b> 論壇頁面:</b></p><p> 圖4.20 論壇回復(fù)截圖</p><p><b> <%</b></p><p> int intPageSize;</p>
94、<p> int intRowCount;//記錄總數(shù)</p><p> int intPageCount;//總頁數(shù)</p><p> int intPage;//頁面參數(shù)</p><p> String strPage;//定義變量用來傳遞page</p><p><b> int i, j;</b
95、></p><p> intPageSize = 5;//定義每頁顯示5條記錄</p><p> strPage = request.getParameter("page");//取得當(dāng)前的頁碼</p><p> if (strPage == null) {//判斷初始頁面,如果沒有顯示記錄,就置為第一頁</p><
96、;p> intPage = 1;</p><p><b> } else {</b></p><p> intPage = Integer.parseInt(strPage);//將strPage轉(zhuǎn)化為整數(shù)</p><p> if (intPage < 1)</p><p> intPage = 1
97、;</p><p><b> }</b></p><p> sqlname = "select count(*) from guest";</p><p> ResultSet rt = stmt.executeQuery(sqlname);</p><p> rt.next();</p
98、><p> intRowCount = rt.getInt(1);//取得整數(shù)保存與intRowCount變量中</p><p> intPageCount = (intRowCount + intPageSize - 1) / intPageSize;//計(jì)算出總頁數(shù)(記錄總數(shù)+每頁顯示的記錄-1)/每頁顯示的記錄)</p><p> if (intPage &
99、gt; intPageCount)</p><p> intPage = intPageCount;</p><p> sqlname = "select * from guest";</p><p> rs = stmt.executeQuery(sqlname);//執(zhí)行sql,按照時(shí)間先后排序顯示</p><p&g
100、t; i = (intPage - 1) * intPageSize;</p><p> for (j = 0; j < i; j++)</p><p> rs.next();%></p><p> <%-- 設(shè)置intPage參數(shù) --%></p><p> <%if (intRowCount ==
101、0) {%></p><p> 對(duì)不起,還沒有數(shù)據(jù)!</p><p> <%} else {%></p><p><b> <br></b></p><p> <table style="BORDER-COLLAPSE: collapse" borderCo
102、lor=#808080</p><p> align=center cellPadding=5 width=550 border=1></p><p><b> <tr></b></p><p><b> <td></b></p><p> <table
103、style="BORDER-COLLAPSE: collapse" width=100% border=0></p><p> <tr class="header"></p><p> <td colspan=3 align=center></p><p> 留言列表&
104、;nbsp; <a href=talk.jsp><font color=#FFFFFF>我要留言</font></p><p><b&g
105、t; </td></b></p><p><b> </tr></b></p><p> <%-- 顯示每頁的數(shù)據(jù) (根據(jù)i的值判斷每頁的5條記錄) --%></p><p><b> <%i = 0;</b></p><p> whi
106、le (i < intPageSize && rs.next()) {</p><p> out.print("<tr><td width=200>昵稱" + name + ":"</p><p> + rs.getString("name") + "</td>
107、;");</p><p> out.print("<td width=230>留言內(nèi)容" + message + ":"</p><p> + rs.getString("message") + "</td>");</p><p><b>
108、 %></b></p><p><b> <tr></b></p><p> <td><img src=images/arrow.gif><a href="message.jsp?name=<%=rs.getString("name") %>">
109、查看回復(fù)</a></td></p><p> <td><img src=images/arrow.gif><a href="writemessage.jsp?name=<%=rs.getString("name") %>">我要回復(fù)</a></td></p>&l
110、t;p><b> </tr></b></p><p><b> <%</b></p><p> out.print("</td></tr><tr><td colspan=3><HR SIZE=1></td></tr>&quo
111、t;);</p><p> i++;//通過I循環(huán)設(shè)置每頁的頁數(shù)</p><p><b> }</b></p><p> out.print("<tr></tr>");</p><p><b> }%></b></p><
112、p><b> <%</b></p><p> int intPageSize;</p><p> int intRowCount;//記錄總數(shù)</p><p> int intPageCount;//總頁數(shù)</p><p> int intPage;//頁面參數(shù)</p><p&g
113、t; String strPage;//定義變量用來傳遞page</p><p><b> int i, j;</b></p><p> intPageSize = 5;//定義每頁顯示5條記錄</p><p> strPage = request.getParameter("page");//取得當(dāng)前的頁碼<
114、/p><p> if (strPage == null) {//判斷初始頁面,如果沒有顯示記錄,就置為第一頁</p><p> intPage = 1;</p><p><b> } else {</b></p><p> intPage = Integer.parseInt(strPage);//將strPage轉(zhuǎn)
115、化為整數(shù)</p><p> if (intPage < 1)</p><p> intPage = 1;</p><p><b> }</b></p><p> sqlname = "select count(*) from message where name='"+name+
116、"'";</p><p> ResultSet rt = stmt.executeQuery(sqlname);</p><p> rt.next();</p><p> intRowCount = rt.getInt(1);//取得整數(shù)保存與intRowCount變量中</p><p> intPageC
117、ount = (intRowCount + intPageSize - 1) / intPageSize;//計(jì)算出總頁數(shù)(記錄總數(shù)+每頁顯示的記錄-1)/每頁顯示的記錄)</p><p> if (intPage > intPageCount)</p><p> intPage = intPageCount;</p><p> sqlname = &q
118、uot;select * from message where message.name='"+name+"'";</p><p> rs = stmt.executeQuery(sqlname);//執(zhí)行sql,按照時(shí)間先后排序顯示</p><p> i = (intPage - 1) * intPageSize;</p>
119、<p> for (j = 0; j < i; j++)</p><p> rs.next();%></p><p> <%-- 設(shè)置intPage參數(shù) --%></p><p> <%if (intRowCount == 0) {%></p><p> 對(duì)不起,還沒有數(shù)據(jù)!</p
120、><p> <%} else {%></p><p><b> <br></b></p><p> <table style="BORDER-COLLAPSE: collapse" borderColor=#808080</p><p> align=center c
121、ellPadding=5 width=550 border=1></p><p><b> <tr></b></p><p><b> <td></b></p><p> <table style="BORDER-COLLAPSE: collapse" widt
122、h=100% border=0></p><p> <tr class="header"></p><p> <td colspan=3 align=center></p><p><b> 回復(fù)列表</b></p><p><b> </td&g
123、t;</b></p><p><b> </tr></b></p><p> <%-- 顯示每頁的數(shù)據(jù) (根據(jù)i的值判斷每頁的5條記錄) --%></p><p><b> <%i = 0;</b></p><p> while (i < in
124、tPageSize && rs.next()) {</p><p> out.print("<tr><td width=200>昵稱:"</p><p> + rs.getString("name2") + "</td>");</p><p> ou
125、t.print("<td width=230>回復(fù)內(nèi)容:"</p><p> + rs.getString("message") + "</td>");</p><p> out.print("</td></tr><tr><td colspan=3&g
126、t;<HR SIZE=1></td></tr>");</p><p> i++;//通過I循環(huán)設(shè)置每頁的頁數(shù)</p><p><b> }</b></p><p> out.print("<tr></tr>");</p><p&g
127、t;<b> }%></b></p><p><b> 資源下載頁面:</b></p><p> 圖4.21 資料下載截圖</p><p><b> <%</b></p><p> //String downloadname=session.getAttr
128、ibute("name").toString();</p><p> String downloadname=request.getParameter("filename");</p><p> // 新建一個(gè)SmartUpload對(duì)象</p><p> SmartUpload su = new SmartUpload(
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)設(shè)計(jì)---人才數(shù)據(jù)庫及網(wǎng)站的設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)設(shè)計(jì)--高校成績管理系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)與實(shí)現(xiàn)
- 人才數(shù)據(jù)庫及網(wǎng)站的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文
- 數(shù)據(jù)庫轉(zhuǎn)換工具的設(shè)計(jì)與實(shí)現(xiàn)-畢業(yè)設(shè)計(jì)論文
- 數(shù)據(jù)庫轉(zhuǎn)換工具的設(shè)計(jì)與實(shí)現(xiàn)-畢業(yè)設(shè)計(jì)論文
- 數(shù)據(jù)庫課程設(shè)計(jì)--網(wǎng)站新聞發(fā)布與管理系統(tǒng)的數(shù)據(jù)庫設(shè)計(jì)和數(shù)據(jù)操作
- 網(wǎng)站設(shè)計(jì)與開發(fā)數(shù)據(jù)庫課程設(shè)計(jì)
- 數(shù)據(jù)庫精品課網(wǎng)站的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 病歷管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)──數(shù)據(jù)庫配置、訪問、備份,數(shù)據(jù)庫邏輯設(shè)計(jì)【畢業(yè)論文設(shè)計(jì)】
- sqlserver數(shù)據(jù)庫設(shè)計(jì)與實(shí)現(xiàn)
- 數(shù)據(jù)庫畢業(yè)設(shè)計(jì)外文翻譯--數(shù)據(jù)庫管理系統(tǒng)的介紹
- 病歷管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)──數(shù)據(jù)庫配置、訪問、備份,數(shù)據(jù)庫邏輯設(shè)計(jì)【畢業(yè)論文設(shè)計(jì)】
- 民航售票管理系統(tǒng)──數(shù)據(jù)庫設(shè)計(jì)與實(shí)現(xiàn)【畢業(yè)論文設(shè)計(jì)】
- vfp數(shù)據(jù)庫畢業(yè)設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)--學(xué)生課程數(shù)據(jù)庫的設(shè)計(jì)與實(shí)現(xiàn)
- 數(shù)據(jù)庫課程設(shè)計(jì)---學(xué)生選題數(shù)據(jù)庫的設(shè)計(jì)與實(shí)現(xiàn)
- 數(shù)據(jù)庫課程設(shè)計(jì)---畢業(yè)設(shè)計(jì)管理系統(tǒng)
- 畢業(yè)設(shè)計(jì)--畢業(yè)設(shè)計(jì)管理網(wǎng)站的設(shè)計(jì)與實(shí)現(xiàn)
- 數(shù)據(jù)庫課程設(shè)計(jì)--學(xué)生選題數(shù)據(jù)庫的設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)設(shè)計(jì)(論文) - (delphi)數(shù)據(jù)庫管理系統(tǒng)
評(píng)論
0/150
提交評(píng)論