版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 本科畢業(yè)設(shè)計(jì)(論文)</p><p><b> ?。ǘ?屆)</b></p><p> 校園軟件屋的設(shè)計(jì)與實(shí)現(xiàn)</p><p> 所在學(xué)院 </p><p> 專(zhuān)業(yè)班級(jí) 計(jì)算機(jī)科學(xué)與技術(shù) </p>
2、<p> 學(xué)生姓名 學(xué)號(hào) </p><p> 指導(dǎo)教師 職稱(chēng) </p><p> 完成日期 年 月 </p><p> 摘要:隨著互聯(lián)網(wǎng)的開(kāi)發(fā),各種網(wǎng)站相繼產(chǎn)生,人們可以通過(guò)互聯(lián)網(wǎng)來(lái)獲取各種資源,所以,建立一個(gè)校園軟件屋
3、來(lái)提供學(xué)生進(jìn)行軟件下載尤為必要,本文詳細(xì)的闡述了校園軟件屋的設(shè)計(jì)與實(shí)現(xiàn)。以JSP為開(kāi)發(fā)網(wǎng)站技術(shù),SQL Server2000為數(shù)據(jù)庫(kù),校園軟件屋實(shí)現(xiàn)了軟件的分類(lèi)展示、軟件的簡(jiǎn)單搜索、軟件的下載、軟件的增刪操作、用戶的注冊(cè),用戶留言的管理等功能。校園軟件屋以簡(jiǎn)單明了的界面,豐富完善的前后臺(tái)功能,方便于前臺(tái)用戶進(jìn)行軟件的下載,和后臺(tái)管理員進(jìn)行網(wǎng)站資源的管理。</p><p> 關(guān)鍵詞:JSP; SQL Server
4、 2000; 校園軟件屋</p><p> The Design and Implementation of Campus Software Room</p><p> Abstract: With the development of the Internet, various websites have been generated, people can access vario
5、us resources through the Internet, so it is necessary to build a campus software room for students to download. The paper describes the campus design and implementation of software room in detail. We use JSP as the devel
6、opment language of web technology, SQL Server 2000 as the database. The system provides some basic functions, for example, the user registration, user massage management, </p><p> Keywords: JSP; SQL Server
7、2000; Campus Software Room</p><p><b> 目 錄</b></p><p><b> 1緒論1</b></p><p> 1.1 系統(tǒng)開(kāi)發(fā)背景1</p><p> 1.2 選題目的及意義1</p><p> 1.3
8、研究的內(nèi)容2</p><p> 1.4 應(yīng)用技術(shù)介紹2</p><p> 1.5 系統(tǒng)所用服務(wù)器介紹3</p><p> 2 系統(tǒng)需求分析4</p><p> 2.1 可行性分析4</p><p> 2.2 需求規(guī)范4</p><p> 2.3 系統(tǒng)功能需求分析
9、4</p><p> 2.4 系統(tǒng)數(shù)據(jù)流程圖5</p><p> 3 系統(tǒng)概要設(shè)計(jì)6</p><p> 3.1 總體設(shè)計(jì)6</p><p> 3.2 運(yùn)行環(huán)境6</p><p> 3.3 系統(tǒng)設(shè)計(jì)思想6</p><p> 3.4 后臺(tái)概要設(shè)計(jì)6</p&g
10、t;<p> 3.5 前臺(tái)概要設(shè)計(jì)7</p><p><b> 4 數(shù)據(jù)庫(kù)設(shè)計(jì)8</b></p><p> 4.1 數(shù)據(jù)庫(kù)概念設(shè)計(jì)8</p><p> 4.2 系統(tǒng)的實(shí)體屬性描述9</p><p> 4.3 本系統(tǒng)的表結(jié)構(gòu)設(shè)計(jì)9</p><p> 5 系
11、統(tǒng)詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)11</p><p> 5.1 主窗口設(shè)計(jì)11</p><p> 5.2 主窗口分模塊介紹12</p><p> 5.3 后臺(tái)模塊設(shè)計(jì)18</p><p> 6 系統(tǒng)的測(cè)試和軟件的安裝29</p><p> 6.1 軟件的安裝29</p><p>
12、 6.2 系統(tǒng)的測(cè)試29</p><p> 6.3 軟件測(cè)試目的30</p><p> 6.4 軟件測(cè)試方法分類(lèi)30</p><p> 6.5 軟件屋的測(cè)試31</p><p> 6.6 測(cè)試報(bào)告33</p><p><b> 結(jié)論34</b></p>
13、<p> 致謝錯(cuò)誤!未定義書(shū)簽。</p><p><b> 參考文獻(xiàn):35</b></p><p><b> 1緒論</b></p><p> 1.1 系統(tǒng)開(kāi)發(fā)背景</p><p> 隨著互聯(lián)網(wǎng)絡(luò)的迅猛發(fā)展,INTERNET用戶已呈幾何級(jí)數(shù)增長(zhǎng),人們的生活空間大大擴(kuò)展,增
14、加了INTERNET的泛應(yīng)用,為在校園網(wǎng)中建設(shè)一個(gè)軟件下載平臺(tái)提供了其可行性。</p><p> 早期的網(wǎng)站開(kāi)發(fā)技術(shù)使用的是CGI-BIN接口。開(kāi)發(fā)人員編寫(xiě)與接口相關(guān)的單獨(dú)的程序和基于Web的應(yīng)用程序,后者通過(guò)Web服務(wù)器來(lái)調(diào)用前者。這種開(kāi)發(fā)技術(shù)存在著嚴(yán)重的擴(kuò)展性問(wèn)題:每一個(gè)新的CGI程序要求在服務(wù)器上新增一個(gè)進(jìn)程。如果多個(gè)用戶并發(fā)地訪問(wèn)該程序,這些進(jìn)程將耗盡該Web服務(wù)器所有的可用資源,直至其崩潰。為克服這一
15、弊端,微軟公司提出了ASP技術(shù),該技術(shù)利用“插件”和API簡(jiǎn)化了Web應(yīng)用程序的開(kāi)發(fā)。ASP與CGI相比,其優(yōu)點(diǎn)是可以包含HTML標(biāo)簽,可以直接存取數(shù)據(jù)庫(kù)及使用無(wú)限擴(kuò)充的ActiveX控件,因此在程序編制上更富有靈活性。但該技術(shù)基本上是局限于微軟的操作系統(tǒng)平臺(tái)之上,主要工作環(huán)境是微軟的IIS應(yīng)用程序結(jié)構(gòu),所以ASP技術(shù)不能很容易地實(shí)現(xiàn)跨平臺(tái)的Web服務(wù)器程序開(kāi)發(fā)。 PHP技術(shù)與ASP相似,也是一種嵌入HTML文檔的服務(wù)器端腳本語(yǔ)言。其語(yǔ)
16、法大部分與C、Java、Perl等語(yǔ)言相似,并形成了自己的獨(dú)有風(fēng)格,利用該語(yǔ)言可以快速地開(kāi)發(fā)出動(dòng)態(tài)網(wǎng)頁(yè)。PHP在大多數(shù)Unix平臺(tái)、GUN/Linux和微軟Windows平臺(tái)上均可以運(yùn)行。PHP的優(yōu)點(diǎn)主要有:安裝方便,學(xué)習(xí)過(guò)程簡(jiǎn)單;數(shù)據(jù)庫(kù)連接方</p><p> 1.2 選題目的及意義</p><p> 隨著信息技術(shù)的日益成熟,校園軟件屋的實(shí)施在技術(shù)上已經(jīng)逐步成熟。校園軟件屋是增對(duì)在
17、校學(xué)生能自主方便的下載自己所需的軟件的一個(gè)網(wǎng)站系統(tǒng),利用校園軟件屋,學(xué)生能更快,更具針對(duì)性的找到自己所需的軟件進(jìn)行下載。</p><p> 如今在互聯(lián)網(wǎng)中,各種軟件下載的網(wǎng)站層出不窮,此類(lèi)網(wǎng)站針對(duì)的客戶主要為廣大的互聯(lián)網(wǎng)用戶,而非單一的客戶,這就照成了軟件資源的復(fù)雜性,雖然此類(lèi)軟件網(wǎng)站擁有大量的軟件資源,但卻不一定擁有學(xué)生所需的軟件資源,所以,建立一個(gè)單一的,更針對(duì)性的軟件網(wǎng)站便有了意義,更具針對(duì)性的達(dá)到網(wǎng)絡(luò)資
18、源的共享。</p><p> 采用本校園軟件屋系統(tǒng),能夠使整個(gè)下載過(guò)程簡(jiǎn)化,提高工作效益。由于本系統(tǒng)采用統(tǒng)一的數(shù)據(jù)信息,使相關(guān)的資料能夠快速地查詢所需的數(shù)據(jù),使軟件能夠更快的進(jìn)行搜索。該系統(tǒng)達(dá)到以下目標(biāo):</p><p> ?。?)實(shí)現(xiàn)軟件的分類(lèi)展示:系統(tǒng)軟件,網(wǎng)絡(luò)軟件等。</p><p> ?。?)軟件的簡(jiǎn)單搜索:依據(jù)關(guān)鍵詞和不同的格式。</p>
19、<p> ?。?)軟件的下載:提供軟件的下載鏈接等。</p><p> ?。?)軟件的介紹:軟件的基本介紹。</p><p> 1.3 研究的內(nèi)容</p><p> 應(yīng)用JSP技術(shù)實(shí)現(xiàn)畢業(yè)設(shè)計(jì)校園軟件屋系統(tǒng)。要求學(xué)生使用JSP,WEB編程方面的技術(shù)完成整個(gè)系統(tǒng)的分析,設(shè)計(jì),與實(shí)現(xiàn)。</p><p><b> 具體要
20、求如下:</b></p><p> ?。?)了解畢業(yè)設(shè)計(jì)校園軟件無(wú)系統(tǒng)的應(yīng)用目的及其基本功能;</p><p> (2)了解畢業(yè)設(shè)計(jì)校園軟件屋系統(tǒng)的基本運(yùn)行流程;</p><p> ?。?)掌握J(rèn)SP開(kāi)發(fā)技術(shù);</p><p> ?。?)熟練的使用SQL2000設(shè)計(jì)數(shù)據(jù)庫(kù);</p><p> ?。?)實(shí)現(xiàn)
21、導(dǎo)師所要求校園軟件屋的基本功能;</p><p> 1.4 應(yīng)用技術(shù)介紹</p><p> JSP技術(shù)使用Java編程語(yǔ)言編寫(xiě)類(lèi)XML的tags和scriptlets,來(lái)封裝產(chǎn)生動(dòng)態(tài)網(wǎng)頁(yè)的處理邏輯。網(wǎng)頁(yè)還能通過(guò)tags和scriptlets訪問(wèn)存在于服務(wù)端的資源的應(yīng)用邏輯。JSP將網(wǎng)頁(yè)邏輯與網(wǎng)頁(yè)設(shè)計(jì)和顯示分離,支持可重用的基于組件的設(shè)計(jì),使基于Web的應(yīng)用程序的開(kāi)發(fā)變得迅速和容易。
22、Web服務(wù)器在遇到訪問(wèn)JSP網(wǎng)頁(yè)的請(qǐng)求時(shí),首先執(zhí)行其中的程序段,然后將執(zhí)行結(jié)果連同JSP文件中的HTML代碼一起返回給客戶。插入的Java程序段可以操作數(shù)據(jù)庫(kù)、重新定向網(wǎng)頁(yè)等,以實(shí)現(xiàn)建立動(dòng)態(tài)網(wǎng)頁(yè)所需要的功能。 JSP與Java Servlet一樣,是在服務(wù)器端執(zhí)行的,通常返回給客戶端的就是一個(gè)HTML文本,因此客戶端只要有瀏覽器就能瀏覽。 JSP的1.0規(guī)范的最后版本是1999年9月推出的,12月又推出了1.1規(guī)范。目前較新的是JSP1
23、.2規(guī)范,JSP2.0規(guī)范的征求意見(jiàn)稿也已出臺(tái)。 JSP頁(yè)面由HTML代碼和嵌入其中的Java代碼所組成。服務(wù)器在頁(yè)面被客戶端請(qǐng)求以后對(duì)這些Java代碼進(jìn)行處理,然后將生成的HTML頁(yè)面返回給客戶端的瀏覽器。Javascript是JSP的技術(shù)基礎(chǔ),而且大型的Web應(yīng)</p><p> 1.5 系統(tǒng)所用服務(wù)器介紹</p><p> Tomcat 很受廣大程序員的喜歡,因?yàn)樗\(yùn)行時(shí)占用的
24、系統(tǒng)資源小,擴(kuò)展性好,支持負(fù)載平衡與郵件服務(wù)等開(kāi)發(fā)應(yīng)用系統(tǒng)常用的功能;而且它還在不斷的 ,改進(jìn)和完善中,任何一個(gè)感興趣的程序員都可以更改它或在其中加入新的功能。Tomcat 是一個(gè)輕量級(jí)應(yīng)用服務(wù)器,在中小型系統(tǒng)和并發(fā)訪問(wèn)用戶不是很多的場(chǎng)合下被普遍使用,是開(kāi)發(fā)和調(diào)試JSP 程序的首選。對(duì)于一個(gè)初學(xué)者來(lái)說(shuō),可以這樣認(rèn)為,當(dāng)在一臺(tái)機(jī)器上配置好Apache 服務(wù)器,可利用它響應(yīng)對(duì)HTML 頁(yè)面的訪問(wèn)請(qǐng)求。實(shí)際上Tomcat 部分是Apache
25、服務(wù)器的擴(kuò)展,但它是獨(dú)立運(yùn)行的,所以當(dāng)你運(yùn)行tomcat 時(shí),它實(shí)際上作為一個(gè)與Apache 獨(dú)立的進(jìn)程單獨(dú)運(yùn)行的。 這里的訣竅是,當(dāng)配置正確時(shí),Apache 為HTML頁(yè)面服務(wù),而Tomcat 實(shí)際上運(yùn)行JSP 頁(yè)面和Servlet。另外,Tomcat和IIS、Apache等Web服務(wù)器一樣,具有處理HTML頁(yè)面的功能,另外它還是一個(gè)Servlet和JSP容器,獨(dú)立的Servlet容器是Tomcat的默認(rèn)模式。</p>
26、<p><b> 2 系統(tǒng)需求分析</b></p><p> 2.1 可行性分析</p><p> 據(jù)不完全統(tǒng)計(jì),杭州下沙地區(qū)擁有大學(xué)生數(shù)為16W人左右,整個(gè)杭州地區(qū)的生源數(shù)會(huì)超過(guò)25W人。學(xué)生的資源空間得到大大的發(fā)展,學(xué)生與網(wǎng)絡(luò)之間的聯(lián)系越發(fā)明顯,為學(xué)生提供一個(gè)網(wǎng)絡(luò)軟件屋下載軟件就有了其意義。本文中的校園軟件屋以網(wǎng)絡(luò)上的下載網(wǎng)站為原型,提供了各種軟
27、件以供學(xué)校中的大學(xué)生下載。內(nèi)含:軟件介紹,軟件搜索,軟件下載等各個(gè)部分。通過(guò)校園網(wǎng),能使學(xué)生們更快更容易的下載到自己所需的軟件。以下從技術(shù)、經(jīng)濟(jì)、操作、法律等方面分析可行性。</p><p> (1)技術(shù)可行性:技術(shù)上的可行性主要體現(xiàn)在開(kāi)發(fā)技術(shù)是否能完成校園軟件屋的實(shí)現(xiàn),硬件、軟件配飾是否能完成校園軟件屋開(kāi)發(fā)的需要,各類(lèi)技術(shù)人員的數(shù)量和質(zhì)量等。校園軟件屋系統(tǒng)主要是在指導(dǎo)老師的指導(dǎo)下,各個(gè)同學(xué)相互幫助下完成,在開(kāi)
28、發(fā)人員上滿足要求,并且利用現(xiàn)有電腦硬件軟件也能實(shí)現(xiàn)網(wǎng)站的編程,所以在技術(shù)方面可行。</p><p> (2) 經(jīng)濟(jì)可行性:從一些資料來(lái)看,校園軟件屋對(duì)計(jì)算機(jī)硬件沒(méi)有特殊要求,也可以以域名的形式提交到網(wǎng)上。而我們是自行開(kāi)發(fā)的網(wǎng)站,成本可以忽略不計(jì),還有后期維護(hù)的費(fèi)用也相對(duì)比較低廉。</p><p> (3) 操作可行性:參照其它的下載網(wǎng)站,校園軟件屋在技術(shù)上完全可以實(shí)現(xiàn)軟件的下載功能,
29、并且作為開(kāi)發(fā)者,我也盡可能地減少讓用戶難以操作的問(wèn)題。</p><p> (4) 法律可行性:校園軟件屋中提供的軟件下載資源全為網(wǎng)絡(luò)提供的免費(fèi)軟件,不用承擔(dān)侵權(quán)等問(wèn)題。不違反國(guó)家法律,因此具有法律可行性。</p><p> 綜上所述,從技術(shù)上、經(jīng)濟(jì)上、法律上、可操作性上都是可行的,而且要求不高,所以該網(wǎng)站的開(kāi)發(fā)是可行的。</p><p><b> 2
30、.2 需求規(guī)范</b></p><p> 以下從網(wǎng)站背景、網(wǎng)站概述、功能需求三方面來(lái)了解校園軟件屋的需求規(guī)范。</p><p> (1)網(wǎng)站背景:現(xiàn)下各種各樣的下載網(wǎng)站層出不窮,下載網(wǎng)站為網(wǎng)民提供了一個(gè)下載軟件的平臺(tái)。而隨著上網(wǎng)用戶的增加,用戶對(duì)上網(wǎng)下載軟件的需求日益增加。</p><p> ?。?)網(wǎng)站概述:本網(wǎng)站的開(kāi)發(fā)環(huán)境采用JSP+SQL庫(kù)進(jìn)
31、行開(kāi)發(fā)。運(yùn)行的操作系統(tǒng)為windows操作系統(tǒng)的各版本,需要配置Tomcat服務(wù)器。</p><p> (3)功能需求:為用戶提供基本的會(huì)員注冊(cè),軟件搜索,軟件介紹,軟件下載的鏈接。</p><p> 2.3 系統(tǒng)功能需求分析</p><p> ?。?)管理員能根據(jù)數(shù)據(jù)庫(kù)中的密碼進(jìn)行登錄。</p><p> (2)管理員進(jìn)行網(wǎng)站中的一
32、些基礎(chǔ)的操作,如添加軟件等。</p><p> (3)用戶能對(duì)網(wǎng)站進(jìn)行正常瀏覽。</p><p> ?。?)用戶能進(jìn)行軟件的下載</p><p> 2.4 系統(tǒng)數(shù)據(jù)流程圖</p><p> 圖2.1 系統(tǒng)數(shù)據(jù)流程圖</p><p><b> 3 系統(tǒng)概要設(shè)計(jì)</b></p>
33、<p><b> 3.1 總體設(shè)計(jì)</b></p><p> 經(jīng)過(guò)需求分析階段的工作,系統(tǒng)必須“做什么”已經(jīng)清楚了,現(xiàn)在是決定“怎樣做”的時(shí)候??傮w設(shè)計(jì)的基本目的就是回答“從總體上說(shuō),系統(tǒng)應(yīng)該如何實(shí)現(xiàn)?”這個(gè)問(wèn)題,因此,總體設(shè)計(jì)又稱(chēng)為概要設(shè)計(jì)或初步設(shè)計(jì)。通過(guò)這個(gè)階段的工作將劃分出組成系統(tǒng)的物理元素------程序、文件、數(shù)據(jù)庫(kù)、人工過(guò)程和文檔等等,但是每個(gè)物理元素仍然處于黑
34、盒子級(jí),這些黑盒子里的具體內(nèi)容將在以后進(jìn)行詳細(xì)的設(shè)計(jì)。總體設(shè)計(jì)階段的另一項(xiàng)重要任務(wù)是設(shè)計(jì)軟件的結(jié)構(gòu),也就是要確定系統(tǒng)中每個(gè)程序是由哪些模塊組成的,以及這些模塊相互間的關(guān)系。</p><p><b> 3.2 運(yùn)行環(huán)境</b></p><p> 本系統(tǒng)主要在Windows200、Windows XP、WinNT等環(huán)境下運(yùn)行,以Tomcat作為服務(wù)器,SQL作為數(shù)據(jù)
35、庫(kù),可進(jìn)行軟件添加,刪除,修改等處理。</p><p> 3.3 系統(tǒng)設(shè)計(jì)思想</p><p> ?。?)系統(tǒng)要符合畢業(yè)設(shè)計(jì)相關(guān)文件中的規(guī)定,滿足畢業(yè)設(shè)計(jì)管理工作的需求,并可實(shí)現(xiàn)操作過(guò)程中的方便,直觀,實(shí)用等條件。</p><p> ?。?)系統(tǒng)采用B/S體系結(jié)構(gòu),瀏覽器負(fù)責(zé)表達(dá)邏輯,顯示用戶所操作的界面,數(shù)據(jù)庫(kù)服務(wù)器則負(fù)責(zé)處理和提供數(shù)據(jù)服務(wù)。</p>
36、;<p> ?。?)系統(tǒng)設(shè)計(jì)時(shí)采用分模塊設(shè)計(jì),模塊中又分為前臺(tái)和后臺(tái),便于系統(tǒng)的各個(gè)功能組合和修改。</p><p> ?。?)系統(tǒng)具備數(shù)據(jù)庫(kù)的操作功能,能更具后臺(tái)需要進(jìn)行數(shù)據(jù)的添加,刪除和修改等操作。</p><p> 3.4 后臺(tái)概要設(shè)計(jì)</p><p> 后臺(tái)管理員打開(kāi)后臺(tái)管理界面后,輸入用戶名:dot,輸入密碼:pass,如果輸入錯(cuò)誤則需
37、要返回登錄頁(yè)面繼續(xù)輸入。如果輸入正確,則可以進(jìn)入后臺(tái)管理的操作界面。這時(shí),管理員可以執(zhí)行后臺(tái)管理功能??蓤?zhí)行的功能包括:軟件新增,軟件刪除,管理員注冊(cè),退出登錄。</p><p> 為了更好的顯示校園軟件屋的后臺(tái)結(jié)構(gòu),在本章節(jié)中,校園軟件屋的后臺(tái)由校園軟件屋后臺(tái)結(jié)構(gòu)圖來(lái)顯示。</p><p> 校園軟件屋后臺(tái)結(jié)構(gòu)圖如圖3.1所示</p><p> 圖3.1 后
38、臺(tái)結(jié)構(gòu)圖</p><p> 3.5 前臺(tái)概要設(shè)計(jì)</p><p> 頁(yè)面中分為3個(gè)模塊,第一個(gè)為標(biāo)題模塊,第二個(gè)為軟件分類(lèi)模塊,第三個(gè)為軟件搜索模塊。</p><p> 本軟件屋前臺(tái)主要功能為搜索功能,用戶搜索出軟件后可顯示軟件的數(shù)據(jù),并更具所提供的軟件鏈接,可下載用戶所需的軟件。</p><p> 本系統(tǒng)中的前臺(tái)結(jié)構(gòu)如圖3.2所
39、示。</p><p> 圖3.2 前臺(tái)結(jié)構(gòu)圖4 數(shù)據(jù)庫(kù)設(shè)計(jì)</p><p> 4.1 數(shù)據(jù)庫(kù)概念設(shè)計(jì)</p><p> 此處主要通過(guò)系統(tǒng)主要的E-R圖對(duì)數(shù)據(jù)庫(kù)概念進(jìn)行描述。</p><p><b> 管理員E-R圖:</b></p><p> 圖4.1 管理員E-R圖</p&g
40、t;<p><b> (2)軟件E-R圖</b></p><p> 圖4.2 軟件E-R圖</p><p> ?。?)公告欄E-R圖</p><p> 圖4.3 公告欄E-R圖</p><p><b> ?。?)留言E-R圖</b></p><p>
41、 圖4.4 留言E-R圖</p><p> 4.2 系統(tǒng)的實(shí)體屬性描述</p><p> ?。?)管理員(編號(hào),姓名,密碼,性別,地址,電話,郵箱,郵編)</p><p> (2)軟件(編號(hào),軟件名,軟件大小,廠家,性質(zhì),軟件類(lèi)型,軟件支持,下載地址)</p><p> ?。?)公告欄(公告欄編號(hào),公告欄日期,公告欄內(nèi)容)</p
42、><p> ?。?)留言(留言編號(hào),留言日期,留言內(nèi)容)</p><p> 4.3 本系統(tǒng)的表結(jié)構(gòu)設(shè)計(jì)</p><p> 通過(guò)已經(jīng)畫(huà)好的E-R圖,和已經(jīng)確定的系統(tǒng)的實(shí)體屬性描述,校園軟件屋所的數(shù)據(jù)表已經(jīng)可以描述,以下為確定的數(shù)據(jù)表:用戶信息表、軟件信息表、留言信息表與公告欄表,分別如表4.1到表4.4所示。</p><p> 表4.1 用
43、戶注冊(cè)表</p><p> 表4.2 軟件信息表</p><p> 表4.3 用戶留言表</p><p><b> 表4.4 公告欄表</b></p><p> 5 系統(tǒng)詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)</p><p> 5.1 主窗口設(shè)計(jì)</p><p> 本小節(jié)主要纖細(xì)介紹
44、校園軟件屋主窗口的設(shè)計(jì)與實(shí)現(xiàn)</p><p> (1)主窗口頁(yè)面顯示</p><p> 校園軟件屋的主窗口如圖5.1所示</p><p> 圖5.3 主窗口界面</p><p> ?。?)主窗口頁(yè)面說(shuō)明</p><p> 主窗口中分為三個(gè)模塊。搜索功能模塊:為用戶提供簡(jiǎn)單的軟件搜索。軟件分類(lèi)模塊:將本網(wǎng)站中的
45、軟件分類(lèi)。并提供一個(gè)公告欄。TOP模塊:一個(gè)簡(jiǎn)單的動(dòng)態(tài)文字</p><p> (3)主窗口核心代碼</p><p> <div align="center"><font size="6" face="隸書(shū)" color=blue><b></p><p> <t
46、able border="3"></p><p><b> <tr> </b></p><p> <td ><jsp:include page="top.html"/></td></p><p><b> </tr><
47、/b></p><p> <tr> </p><p> <td><jsp:include page="notice.jsp"/></td></p><p><b> </tr> </b></p><p> </
48、table></font></p><p> <jsp:include page="search.html"/></div></p><p> 5.2 主窗口分模塊介紹</p><p> 5.2.1 TOP模塊</p><p> ?。?)TOP模塊簡(jiǎn)介</p>
49、<p> TOP模塊為一個(gè)首頁(yè)面中的標(biāo)題,是一句動(dòng)態(tài)的文字,校園軟件屋由左向右進(jìn)行移動(dòng)。</p><p> ?。?)TOP模塊核心代碼</p><p> <marquee height=50 width=400 direction=right behavior=alternate ><p></p><p> <fon
50、t face="20" size=7 color=red>校園軟件屋</font></p><p> </marquee></center></p><p> 5.2.2 搜索模塊</p><p> 搜索模塊更具提供的關(guān)鍵字進(jìn)行簡(jiǎn)單的模糊查找,查到用戶所需的軟件進(jìn)行下載。</p>&
51、lt;p><b> ?。?)搜索結(jié)果展示</b></p><p> 主窗口中的搜索結(jié)果如圖5.4所示</p><p> 圖5.4 搜索結(jié)果圖</p><p> ?。?)搜索模塊核心代碼</p><p> <% request.setCharacterEncoding("GB2312"
52、;);</p><p> String b_name=request.getParameter("softname");</p><p> if(b_name==null){</p><p> b_name="";</p><p><b> }</b></p>
53、<p><b> %></b></p><p> <font size=4 color=blue>輸出與<%=b_name%>有關(guān)的軟件</font><hr></p><p><b> <%</b></p><p> Class.forNam
54、e("sun.jdbc.odbc.JdbcOdbcDriver"); </p><p> Connection conn=DriverManager.getConnection("jdbc:odbc:bookshoplk","sa",""); </p><p> Statement stmt=conn.
55、createStatement(); </p><p><b> try{</b></p><p> ResultSet rs; //建立ResultSet(結(jié)果集)對(duì)象</p><p> rs=stmt.executeQuery("Select * From softtable where softname like
56、9;%"+b_name+"%'");</p><p><b> //執(zhí)行SQL語(yǔ)句</b></p><p><b> %></b></p><p> <table border=3></p><p> <tr bgcolor=si
57、lver><b></p><p> <td>softid</td><td>softname</td><td>softsize</td><td>publisher</td></p><p> <td>softxingzhi</td><td>
58、;softtype</td><td>softzhichi</td><td>url</td></p><p><b> </tr></b></p><p><b> <%</b></p><p> //利用while循環(huán)將數(shù)據(jù)表中的記錄列出
59、</p><p> while (rs.next()){</p><p><b> %></b></p><p><b> <tr></b></p><p> <td><%= rs.getString("softid") %>&l
60、t;/td></p><p> <td><%= rs.getString("softname") %></td></p><p> <td><%= rs.getString("softsize") %></td></p><p> <t
61、d><%= rs.getString("publisher") %></td></p><p> <td><%= rs.getString("softxingzhi") %></td></p><p> <td><%= rs.getString("sof
62、ttype") %></td></p><p> <td><%= rs.getString("softzhichi") %></td></p><p> <td><a herf=<%= rs.getString("url") %>>下載</a
63、> </td></p><p><b> </tr> </b></p><p><b> <%</b></p><p><b> }</b></p><p> rs.close(); //關(guān)閉ResultSet對(duì)象</p>
64、;<p><b> }</b></p><p> catch(Exception e){</p><p> out.println(e.getMessage());</p><p><b> }</b></p><p> stmt.close(); //關(guān)閉Statement
65、對(duì)象</p><p> conn.close(); //關(guān)閉Connection對(duì)象</p><p><b> %></b></p><p> 5.2.3 軟件分類(lèi)模塊:</p><p> 此模塊中將網(wǎng)站中的軟件分為應(yīng)用軟件,網(wǎng)絡(luò)軟件,和系統(tǒng)軟件。</p><p> (1)
66、軟件分類(lèi)模塊展示</p><p> 軟件分類(lèi)展示中的應(yīng)用軟件如圖5.5所示</p><p> 圖5.5 軟件分類(lèi)圖</p><p> (2)軟件分類(lèi)模塊代碼</p><p> <%@ page contentType="text/html; charset=GB2312" %></p>
67、<p> <%@ page import="java.sql.*" %></p><p><b> <html></b></p><p> <head><title>選擇查詢</title></p><p><b> </head&
68、gt;</b></p><p> <body><center></p><p> <font size=4 color=blue>網(wǎng)絡(luò)軟件</font><hr></p><p><b> <% </b></p><p> session
69、.putValue("softtype","網(wǎng)絡(luò)軟件");</p><p><b> %></b></p><p><b> <%</b></p><p> Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"
70、); </p><p> Connection conn=DriverManager.getConnection("jdbc:odbc:bookshoplk","sa",""); </p><p> Statement stmt=conn.createStatement(); </p><p>&
71、lt;b> try{</b></p><p> String str1=(String)session.getValue("softtype");</p><p> ResultSet rs; //建立ResultSet(結(jié)果集)對(duì)象</p><p> rs=stmt.executeQuery("Select
72、* From softtable where softtype='"+str1+"'");</p><p><b> //執(zhí)行SQL語(yǔ)句</b></p><p><b> %></b></p><p> <table border=3></p>
73、;<p> <tr bgcolor=silver><b></p><p> <td>softid</td><td>softname</td><td>softsize</td><td>publisher</td></p><p> <td>
74、softxingzhi</td><td>softtype</td><td>softzhichi</td><td>url</td></p><p><b> </tr></b></p><p><b> <%</b></p>&
75、lt;p> //利用while循環(huán)將數(shù)據(jù)表中的記錄列出</p><p> while (rs.next()){</p><p><b> %></b></p><p><b> <tr></b></p><p> <td><%= rs.getStr
76、ing("softid") %></td></p><p> <td><%= rs.getString("softname") %></td></p><p> <td><%= rs.getString("softsize") %></td&g
77、t;</p><p> <td><%= rs.getString("publisher") %></td></p><p> <td><%= rs.getString("softxingzhi") %></td></p><p> <td&g
78、t;<%= rs.getString("softtype") %></td></p><p> <td><%= rs.getString("softzhichi") %></td></p><p> <td><a href=<%= rs.getString(&qu
79、ot;url") %>>下載</a> </td></p><p><b> </tr> </b></p><p><b> <%</b></p><p><b> }</b></p><p> rs.cl
80、ose(); //關(guān)閉ResultSet對(duì)象</p><p><b> }</b></p><p> catch(Exception e){</p><p> out.println(e.getMessage());</p><p><b> }</b></p><p&g
81、t; stmt.close(); //關(guān)閉Statement對(duì)象</p><p> conn.close(); //關(guān)閉Connection對(duì)象</p><p><b> %></b></p><p> </table></center></p><p> </body
82、></html></p><p> 5.2.4 留言模塊</p><p> 此模塊為用戶提供留言功能,方便管理員接受用戶的意見(jiàn)。</p><p><b> (1)留言模塊展示</b></p><p> 留言模塊如圖5.6所示</p><p> 圖5.6 留言模塊圖&l
83、t;/p><p><b> ?。?)留言模塊代碼</b></p><p><b> <%</b></p><p> String sql;</p><p> Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); </p>
84、;<p> Connection conn=DriverManager.getConnection("jdbc:odbc:bookshoplk","sa",""); </p><p> Statement stmt=conn.createStatement(); </p><p><b> try
85、{</b></p><p> sql="Insert Into message(date,mess,nob)Values('"+s_date+"','"+s_context+"',1)";</p><p> stmt.executeUpdate(sql);</p>&l
86、t;p> ResultSet rs; //建立ResultSet(結(jié)果集)對(duì)象</p><p> rs=stmt.executeQuery("Select * From message ");</p><p><b> //執(zhí)行SQL語(yǔ)句</b></p><p><b> %></b>
87、;</p><p> <table border=3></p><p> <tr bgcolor=silver><b></p><p> <td>日期</td><td>內(nèi)容</td></p><p><b> </tr><
88、;/b></p><p> 添加留言成功,內(nèi)容為:</p><p><b> <%</b></p><p> //利用while循環(huán)將數(shù)據(jù)表中的記錄列出</p><p> while (rs.next()){</p><p><b> %></b>
89、</p><p><b> <tr></b></p><p> <td><%= rs.getString("date") %></td></p><p> <td><%= rs.getString("mess") %></
90、td></p><p><b> </tr> </b></p><p><b> <%</b></p><p><b> }</b></p><p> rs.close(); //關(guān)閉ResultSet對(duì)象</p><p>
91、;<b> }</b></p><p> catch(Exception e){</p><p> out.println(e.getMessage());</p><p><b> }</b></p><p> stmt.close(); //關(guān)閉Statement對(duì)象</p>
92、;<p> conn.close(); //關(guān)閉Connection對(duì)象</p><p><b> %></b></p><p> 5.3 后臺(tái)模塊設(shè)計(jì)</p><p> 5.3.1 登錄窗口設(shè)計(jì)</p><p> 登錄窗口模塊功能表為:登錄窗口,登錄窗口驗(yàn)證模塊,登錄成功模塊,登
93、錄失敗模塊。</p><p><b> (1)登錄窗口界面</b></p><p> 本系統(tǒng)中的登入窗口如圖5.1所示</p><p> 圖5.7 登錄窗口界面</p><p> (2)登錄窗口界面說(shuō)明</p><p> 登錄窗口中,用戶需要輸入注冊(cè)過(guò)的姓名和密碼才能登錄,登錄成功則轉(zhuǎn)
94、向用戶操作界面,失敗則轉(zhuǎn)向失敗界面。</p><p> (3)登錄窗口以及驗(yàn)證代碼</p><p> <script language="javaScript"></p><p> function validate(f){</p><p> if(!(/^\w{3,15}$/.test(f.useri
95、d.value))){</p><p> alert("用戶ID必須是3~15位!") ;</p><p> f.userid.focus() ;</p><p> return false ;</p><p><b> }</b></p><p> if(!(/^\
96、w{3,15}$/.test(f.password.value))){</p><p> alert("密碼必須是3~15位!") ;</p><p> f.password.focus() ;</p><p> return false ;</p><p><b> }</b></p&
97、gt;<p> return true ;</p><p><b> }</b></p><p><b> </script></b></p><p> <form action="check.jsp" method="post" onSubm
98、it="return validate(this)"></p><p> <table border="0"></p><p><b> <tr></b></p><p> <td colspan="2">用戶登陸程序</td>
99、;</p><p><b> </tr></b></p><p><b> <tr></b></p><p> <td>用戶ID:</td></p><p> <td><input type="text"
100、name="userid"></td></p><p><b> </tr></b></p><p><b> <tr></b></p><p> <td>密 碼:</td></p>
101、<p> <td><input type="password" name="password"></td></p><p><b> </tr></b></p><p><b> <tr></b></p><
102、p> <td colspan="2"></p><p> <input type="submit" value="登陸"></p><p> <input type="reset" value="重置"></p><p>
103、;<b> </td></b></p><p><b> </tr></b></p><p><b> </table></b></p><p><b> </form></b></p><p>
104、5.3.2 刪除軟件模塊</p><p> 根據(jù)輸入的軟件序號(hào)來(lái)刪除數(shù)據(jù)庫(kù)中的軟件資料</p><p> ?。?)刪除功能模塊界面</p><p> 刪除模塊如圖5.8所示</p><p> 圖5.8 軟件刪除界面</p><p> ?。?)刪除模塊核心代碼</p><p> <
105、;% request.setCharacterEncoding("GB2312");</p><p> String s_softid=request.getParameter("softid");</p><p> if(s_softid==null){</p><p> s_softid="";
106、</p><p><b> }</b></p><p><b> %></b></p><p> <font size=4 color=blue>刪除后的記錄</font><hr></p><p><b> <%</b>&
107、lt;/p><p> String sql;</p><p> Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); </p><p> Connection conn=DriverManager.getConnection("jdbc:odbc:bookshoplk","
108、sa",""); </p><p> Statement stmt=conn.createStatement(); </p><p><b> try{</b></p><p> sql="Delete From softtable Where softid='"+s_soft
109、id+"'";</p><p> stmt.executeUpdate(sql);</p><p> ResultSet rs; //建立ResultSet(結(jié)果集)對(duì)象</p><p> rs=stmt.executeQuery("Select * From softtable");</p>&l
110、t;p><b> //執(zhí)行SQL語(yǔ)句</b></p><p><b> %></b></p><p> <table border=3></p><p> <tr bgcolor=silver><b></p><p> <td>
111、softid</td><td>softname</td><td>softsize</td><td>publisher</td></p><p> <td>softxingzhi</td><td>softtype</td><td>softzhichi</td>
112、</p><p><b> </tr></b></p><p><b> <%</b></p><p> //利用while循環(huán)將數(shù)據(jù)表中的記錄列出</p><p> while (rs.next()){</p><p><b> %&
113、gt;</b></p><p><b> <tr></b></p><p> <td><%= rs.getString("softid") %></td></p><p> <td><%= rs.getString("softnam
114、e") %></td></p><p> <td><%= rs.getString("softsize") %></td></p><p> <td><%= rs.getString("publisher") %></td></p>
115、<p> <td><%= rs.getString("softxingzhi") %></td></p><p> <td><%= rs.getString("softtype") %></td></p><p> <td><%= rs.get
116、String("softzhichi") %></td></p><p><b> </tr> </b></p><p><b> <%</b></p><p><b> }</b></p><p> rs.clo
117、se(); //關(guān)閉ResultSet對(duì)象</p><p><b> }</b></p><p> catch(Exception e){</p><p> out.println(e.getMessage());</p><p><b> }</b></p><p>
118、; stmt.close(); //關(guān)閉Statement對(duì)象</p><p> conn.close(); //關(guān)閉Connection對(duì)象</p><p><b> %></b></p><p> 5.3.3 添加軟件模塊</p><p> 此模塊中可對(duì)數(shù)據(jù)庫(kù)中進(jìn)行軟件的添加。</p&g
119、t;<p> ?。?)軟件添加模塊展示</p><p> 本校園軟件屋后臺(tái)中的軟件添加模塊如圖5.8所示</p><p> 圖5.8 軟件添加圖</p><p> (2)軟件添加模塊核心代碼</p><p> <% request.setCharacterEncoding("GB2312");
120、</p><p> String s_softid=request.getParameter("softid");</p><p> if(s_softid==null){</p><p> s_softid="";</p><p><b> }</b></p>
121、;<p> String s_softname=request.getParameter("softname");</p><p> if(s_softname==null){</p><p> s_softname="";</p><p><b> }</b></p>
122、<p> String s_softsize=request.getParameter("softsize");</p><p> if(s_softsize==null){</p><p> s_softsize="";</p><p><b> }</b></p>
123、<p> String s_publisher=request.getParameter("publisher");</p><p> if(s_publisher==null){</p><p> s_publisher="";</p><p><b> }</b></p&g
124、t;<p> String s_softxingzhi=request.getParameter("softxingzhi");</p><p> if(s_softxingzhi==null){</p><p> s_softxingzhi="";</p><p><b> }</b&
125、gt;</p><p> String s_softtype=request.getParameter("softtype");</p><p> if(s_softtype==null){</p><p> s_softtype="";</p><p><b> }</b&g
126、t;</p><p> String s_softzhichi=request.getParameter("softzhichi");</p><p> if(s_softzhichi==null){</p><p> s_softzhichi="";</p><p><b> }&
127、lt;/b></p><p><b> %></b></p><p> <font size=4 color=blue>新添加的記錄</font><hr></p><p><b> <%</b></p><p> String sql;&
128、lt;/p><p> Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); </p><p> Connection conn=DriverManager.getConnection("jdbc:odbc:bookshoplk","sa",""); </p>
129、;<p> Statement stmt=conn.createStatement(); </p><p><b> try{</b></p><p> sql="InsertInto softtable(softid,softname,softsize,publisher,softxingzhi,softtype,softzhichi
130、)Values('"+s_softid+"','"+s_softname+"','"+s_softsize+"','"+s_publisher+"','"+s_softxingzhi+"','"+s_softtype+"',
131、"+s_softzhichi+")";</p><p> stmt.executeUpdate(sql);</p><p> ResultSet rs; //建立ResultSet(結(jié)果集)對(duì)象</p><p> rs=stmt.executeQuery("Select * From softtable where so
132、ftid='"+s_softid+"'");</p><p><b> //執(zhí)行SQL語(yǔ)句</b></p><p><b> %></b></p><p> <table border=3></p><p> <tr bg
133、color=silver><b></p><p> <td>softid</td><td>softname</td><td>softsize</td><td>publisher</td></p><p> <td>softxingzhi</td>&
134、lt;td>softtype</td><td>softzhichi</td></p><p><b> </tr></b></p><p><b> <%</b></p><p> //利用while循環(huán)將數(shù)據(jù)表中的記錄列出</p><
135、p> while (rs.next()){</p><p><b> %></b></p><p><b> <tr></b></p><p> <td><%= rs.getString("softid") %></td></p&
136、gt;<p> <td><%= rs.getString("softname") %></td></p><p> <td><%= rs.getString("softsize") %></td></p><p> <td><%= rs.g
137、etString("publisher") %></td></p><p> <td><%= rs.getString("softxingzhi") %></td></p><p> <td><%= rs.getString("softtype") %&g
138、t;</td></p><p> <td><%= rs.getString("softzhichi") %></td></p><p><b> </tr> </b></p><p><b> <%</b></p>&
139、lt;p><b> }</b></p><p> rs.close(); //關(guān)閉ResultSet對(duì)象</p><p><b> }</b></p><p> catch(Exception e){</p><p> out.println(e.getMessage());<
140、/p><p><b> }</b></p><p> stmt.close(); //關(guān)閉Statement對(duì)象</p><p> conn.close(); //關(guān)閉Connection對(duì)象</p><p><b> %></b></p><p> 5.3
溫馨提示
- 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ù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 校園軟件屋的設(shè)計(jì)與實(shí)現(xiàn)【畢業(yè)設(shè)計(jì)+開(kāi)題報(bào)告+文獻(xiàn)綜述】
- 校園軟件屋的設(shè)計(jì)與實(shí)現(xiàn)【開(kāi)題報(bào)告】
- 校園軟件屋的設(shè)計(jì)與實(shí)現(xiàn)【文獻(xiàn)綜述】
- 校園網(wǎng)絡(luò)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)
- 校園論壇的設(shè)計(jì)與實(shí)現(xiàn) 畢業(yè)設(shè)計(jì)
- 校園網(wǎng)站的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)---校園論壇的設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)設(shè)計(jì)---校園網(wǎng)站設(shè)計(jì)與實(shí)現(xiàn)
- 校園趣聞?wù)搲O(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)---校園網(wǎng)安全設(shè)計(jì)與實(shí)現(xiàn)
- 軟件畢業(yè)設(shè)計(jì)--網(wǎng)上購(gòu)物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)設(shè)計(jì)論文 校園新聞發(fā)布系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)設(shè)計(jì)---qpsk調(diào)制與解調(diào)的軟件實(shí)現(xiàn)
- 校園社團(tuán)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)論文.doc
- 畢業(yè)設(shè)計(jì)--基于wpf的文檔編輯軟件的設(shè)計(jì)與實(shí)現(xiàn)
- (畢業(yè)設(shè)計(jì))基于wpf的文檔編輯軟件的設(shè)計(jì)與實(shí)現(xiàn)
- 本科畢業(yè)設(shè)計(jì)論文校園一卡通系統(tǒng)軟件部分的設(shè)計(jì)與實(shí)現(xiàn)
- 基于校園網(wǎng)師生論壇系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)【畢業(yè)設(shè)計(jì)】
- 智慧校園的研究與設(shè)計(jì)【畢業(yè)設(shè)計(jì)】
- 基于安卓平臺(tái)的校園通軟件設(shè)計(jì)畢業(yè)設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論