版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 目 錄</b></p><p><b> 一 設(shè)計(jì)目的1</b></p><p><b> 二 設(shè)計(jì)內(nèi)容1</b></p><p><b> 三 設(shè)計(jì)要求2</b></p><p><b> 四 設(shè)計(jì)
2、過程2</b></p><p><b> 1 任務(wù)解析2</b></p><p> 2 程序結(jié)構(gòu)分析3</p><p> 3 數(shù)據(jù)結(jié)構(gòu)分析6</p><p><b> 4 功能實(shí)現(xiàn)6</b></p><p><b> 5 系統(tǒng)測試6
3、</b></p><p><b> 五 設(shè)計(jì)總結(jié)37</b></p><p><b> 參考文獻(xiàn)38</b></p><p><b> 附錄39</b></p><p><b> 一 設(shè)計(jì)目的</b></p><
4、;p> 計(jì)算機(jī)網(wǎng)絡(luò)的出現(xiàn)帶給了世界巨大的變化,從過去只面向?qū)I(yè)部門的信息傳送擴(kuò)展到現(xiàn)代生活的各個(gè)角落,它為世界的發(fā)展和變革做出了無可估量的貢獻(xiàn)。特別是在二十世紀(jì)九十年代,美國政府提出“信息高速公路”計(jì)劃并付諸于實(shí)施以后,網(wǎng)絡(luò)漸漸的從人們極少了解的領(lǐng)域來到了全世界平常人的生活中。</p><p> 在互聯(lián)網(wǎng)日益流行的今天,網(wǎng)絡(luò)是主角,是時(shí)代的寵兒。在網(wǎng)絡(luò)大家族中,電子商務(wù)則是一個(gè)熱點(diǎn)。電子商務(wù)一個(gè)最基本體
5、現(xiàn)就是網(wǎng)上購物,從一定程度上講它就是網(wǎng)上超市,也就是一種網(wǎng)上銷售。“網(wǎng)”字意味著它具有信息時(shí)代的快捷方便等特征。事實(shí)上電子商務(wù)的出現(xiàn),給消費(fèi)者的地位,消費(fèi)觀念帶來了重要的變化。</p><p> 自我國加入WTO后,越來越多的傳統(tǒng)企業(yè)進(jìn)一步認(rèn)識(shí)到企業(yè)經(jīng)濟(jì)發(fā)展的必然趨勢是以網(wǎng)絡(luò)化、全球化為主要特征。而企業(yè)實(shí)行電子商務(wù)則成為企業(yè)發(fā)展與國際接軌的必要條件。多年來國家十分重視企業(yè)的信息化建設(shè),并做了大量工作,但目前企業(yè)
6、開始實(shí)施信息化的比例還不到20%。所以電子購物網(wǎng)站的實(shí)現(xiàn)是一個(gè)非常迫切的需求。</p><p> 現(xiàn)代的網(wǎng)絡(luò),已經(jīng)經(jīng)歷過迅速發(fā)展的時(shí)期,他的技術(shù)也已經(jīng)相當(dāng)成熟。因此,依靠網(wǎng)絡(luò)技術(shù)來架設(shè)一個(gè)網(wǎng)站會(huì)在很多方面得到相關(guān)的支持。</p><p> 作為信息傳輸?shù)拿浇?,它的高速,海量,及時(shí)與可接受的可靠性滿足了現(xiàn)代人們對于需求的渴望。現(xiàn)在的網(wǎng)絡(luò)對于人們來說,已經(jīng)可以不再是單單獲得信息的意義,更反
7、應(yīng)了現(xiàn)代人生活的理念,更為重要的是成為企業(yè)與政府傳達(dá)思想,介紹自身的平臺(tái)。</p><p> 這次設(shè)計(jì)實(shí)現(xiàn)了一個(gè)網(wǎng)上購物系統(tǒng)。網(wǎng)絡(luò)購物中心所承載的信息量大、購物流程比較繁瑣,而且互聯(lián)網(wǎng)中日益肆虐的黑客和病毒對網(wǎng)絡(luò)的安全性提出了更高的挑戰(zhàn)。開發(fā)出的網(wǎng)絡(luò)購物中心系統(tǒng)基于Windows 2000 Server中文企業(yè)版服務(wù)器和SQL Server 2008數(shù)據(jù)庫,采用JSP進(jìn)行開發(fā),具有很高的穩(wěn)定性和安全性。網(wǎng)絡(luò)購物
8、中心真正實(shí)現(xiàn)了在Internet上的經(jīng)營銷售,從而使其獲得更大的市場機(jī)遇及經(jīng)濟(jì)效益,很大程度地提高了企業(yè)的核心競爭力。</p><p><b> 二 設(shè)計(jì)內(nèi)容</b></p><p> (1)題目分析,查找資料和總體設(shè)計(jì)。</p><p> ?。?)詳細(xì)設(shè)計(jì)、代碼編制、程序調(diào)試。系統(tǒng)功能要求如下:</p><p>
9、 ① 具有登錄功能,用戶注冊后,登陸網(wǎng)站的用戶可以在線查看、訂購產(chǎn)品,并可在論壇中與其他用戶進(jìn)行交流及提出意見等。</p><p> ?、?具有商品信息的錄入功能</p><p> ?、?具有數(shù)據(jù)查詢、刪除、修改功能</p><p> ?、?具有商品信息前臺(tái)顯示功能</p><p> ?、?具有購物車、結(jié)賬功能</p><
10、p> (3)結(jié)果分析、完成課程設(shè)計(jì)報(bào)告。</p><p><b> 三 設(shè)計(jì)要求</b></p><p> ?。?)可選用任何語言,采用面向?qū)ο蠓椒ㄟM(jìn)行設(shè)計(jì),要求設(shè)計(jì)良好的數(shù)據(jù)結(jié)編寫程序,源程序要有適當(dāng)?shù)淖⑨?,是程序容易閱讀。</p><p> ?。?)程序的界面、邏輯功能和數(shù)據(jù)的存儲(chǔ)分開,至少采用文本菜單界面(如果能采用圖形菜單界面
11、更好)。</p><p> (3)學(xué)生可根據(jù)自身情況酌情增加新功能(視情況可另外加分)。</p><p> ?。?)獨(dú)立完成課程設(shè)計(jì),并完成課程設(shè)計(jì)報(bào)告,報(bào)告應(yīng)記錄設(shè)計(jì)的過程,尤其是分析/設(shè)計(jì)/實(shí)現(xiàn)過程中的決策。</p><p><b> 四 設(shè)計(jì)過程</b></p><p><b> 1 任務(wù)解析<
12、;/b></p><p> 網(wǎng)上購物系統(tǒng)需要讓供應(yīng)商、客戶以及瀏覽者能看到商城的信息及動(dòng)態(tài),另一個(gè)重要的內(nèi)容就是能夠顯示出該商城現(xiàn)有的各類型商品及其詳細(xì)信息;由于消費(fèi)者的需求在增長和變化,商城在面對面銷售的基礎(chǔ)上也要隨之發(fā)展出相應(yīng)的服務(wù),如在線訂購等技術(shù)。</p><p> 另外,企業(yè)營銷商除了能與普通客戶一樣瀏覽網(wǎng)站之外,還需要對網(wǎng)站進(jìn)行管理。企業(yè)需要定期更新現(xiàn)有商品的詳細(xì)信息
13、、商城動(dòng)態(tài)和聯(lián)系方式,必要時(shí)還要對企業(yè)的介紹做更改。對于消費(fèi)者通過網(wǎng)站提交的各種訂單能夠進(jìn)行處理以方便銷售。</p><p> 需要設(shè)計(jì)出網(wǎng)站的前臺(tái)與后臺(tái)。用戶在前臺(tái)所瀏覽的內(nèi)容,網(wǎng)站的后臺(tái)需要能相應(yīng)的做出更新或修改。根據(jù)以上的想法,設(shè)計(jì)出網(wǎng)站的功能:</p><p> 前臺(tái)用戶相關(guān)功能主要包括:</p><p> 1、用戶注冊、登錄;</p>
14、<p><b> 2、購物車;</b></p><p><b> 3、訂單查詢;</b></p><p><b> 4、個(gè)人資料修改;</b></p><p><b> 5、發(fā)布留言。</b></p><p> 6、后臺(tái)管理相關(guān)功能主要
15、包括:</p><p><b> 7、添加商品;</b></p><p><b> 8、處理訂單;</b></p><p><b> 9、查詢用戶信息;</b></p><p><b> 10、添加連接;</b></p><p&
16、gt; 11、管理公告信息。</p><p> 將以上這些功能制作成網(wǎng)頁以后,在其中分別互相建立連接,基本完成商城及用戶對網(wǎng)站的要求。</p><p><b> 2 程序結(jié)構(gòu)分析</b></p><p> 2.1 總體結(jié)構(gòu)分析</p><p> 根據(jù)業(yè)務(wù)整體流程的考慮,需要將網(wǎng)站劃分為前臺(tái)、后臺(tái)和數(shù)據(jù)庫。前臺(tái)中
17、,客戶在登錄網(wǎng)站主頁后即可鏈接查看到商品等信息,還可以做訂購商品等活動(dòng)。為了方便客戶搜索感興趣的商品信息,將商品搜索嵌入到主頁面中。數(shù)據(jù)庫將要作為網(wǎng)站后臺(tái)重要的組成部分,管理員的主要操作幾乎全部圍繞數(shù)據(jù)庫,最后將更新的數(shù)據(jù)要顯示給前臺(tái)。</p><p> 前臺(tái)是一個(gè)比較大的功能群,它所包含的信息不僅數(shù)量多,而且種類不同。將它設(shè)計(jì)成比較優(yōu)化的結(jié)構(gòu)形式能組織好網(wǎng)站的信息內(nèi)容并將其歸類,方便用戶獲得所需要的信息。其中
18、每一部分都以盡量少的內(nèi)容顯示,以免瀏覽者看的眼花繚亂而失去耐心。除了這些作用外,設(shè)計(jì)好前臺(tái)的結(jié)構(gòu)形式,也是為后面程序的編寫做出了框架。在為系統(tǒng)劃分功能模塊,并以模塊為單位來實(shí)現(xiàn)設(shè)計(jì)時(shí)也是以這個(gè)結(jié)構(gòu)為根基的。</p><p> 系統(tǒng)的后臺(tái)要對整個(gè)網(wǎng)站的信息和數(shù)據(jù)進(jìn)行維護(hù)。網(wǎng)站前臺(tái)所顯示的信息在后臺(tái)都應(yīng)該有對應(yīng)的維護(hù)。這樣,除了設(shè)計(jì)后臺(tái)的各個(gè)管理界面外,為了方便管理員的工作,可以將各個(gè)管理的界面結(jié)合到一個(gè)頁面中。因
19、此,各個(gè)管理的界面會(huì)作為主管理界面的分支。</p><p><b> 2.2功能模塊分析</b></p><p> 層次模塊結(jié)構(gòu)是將系統(tǒng)劃分為若干子系統(tǒng),子系統(tǒng)下再劃分為若干的模塊。而模塊是指具備有輸入輸出、邏輯功能、運(yùn)行程序和內(nèi)部數(shù)據(jù)四種屬性的一組程序。在結(jié)構(gòu)化系統(tǒng)設(shè)計(jì)中,模塊一般都是按功能劃分的,通常稱為功能模塊。合理的功能模塊的劃分能夠極大限度地減少重復(fù)勞動(dòng)
20、、提高開發(fā)工作的效率并增大系統(tǒng)的可維護(hù)性。</p><p> 以前面的系統(tǒng)分析為基礎(chǔ),將系統(tǒng)分為兩大模塊,即前臺(tái)模塊和后臺(tái)模塊。</p><p> 網(wǎng)絡(luò)購物中心的功能結(jié)構(gòu)如圖2.1所示。</p><p> 圖 2.1 網(wǎng)絡(luò)購物中心功能結(jié)構(gòu)圖</p><p> 2.3前臺(tái)模塊功能分析</p><p> 前臺(tái)模塊
21、主要為登陸網(wǎng)站的用戶提供商品和服務(wù)的信息,填寫并提交訂單的服務(wù)。這樣,將前臺(tái)模塊再細(xì)分為用戶管理模塊、訂單查詢模塊、購物車模塊、修改個(gè)人資料模塊、留言板模塊。顧名思義,這些模塊的名稱基本概括了它們的功能。前臺(tái)業(yè)務(wù)流程如圖2.2所示。</p><p> 圖 2.2 前臺(tái)業(yè)務(wù)流程圖</p><p> 下面詳細(xì)說明一下這些功能模塊的設(shè)計(jì):</p><p> ?。?)用
22、戶管理模塊:</p><p> 為了方便于網(wǎng)站的管理,必須由一套完整的用戶管理體系。該網(wǎng)站用戶管理模塊主要實(shí)現(xiàn)用戶的注冊、登錄、找回密碼3方面功能。</p><p><b> ?。?)購物車模塊:</b></p><p> 在超市購物,可以根據(jù)自己的需要將很多種商品挑選至購物車或購物籃中,然后到收銀臺(tái)結(jié)款。而在網(wǎng)上虛擬的商城中,當(dāng)然沒有辦法
23、使用真正的購物工具,因此,通常都會(huì)采用一種被稱為“購物車”的技術(shù)來模擬現(xiàn)實(shí)生活。在網(wǎng)上商城中,所選商品須通過購物車進(jìn)行暫存,然后生產(chǎn)訂單。這種技術(shù)使用起來十分方便,不但可以隨時(shí)添加、查看、修改、清空購物車中的內(nèi)容,還可以隨時(shí)去收銀臺(tái)結(jié)款。</p><p> ?。?)訂單管理模塊:</p><p> 用戶提交訂單后,通過產(chǎn)生的訂單號查詢訂單信息及執(zhí)行狀態(tài)。只需要根據(jù)用戶錄入的訂單號在數(shù)據(jù)表
24、中查詢處對應(yīng)的貨品信息即可。</p><p> ?。?)個(gè)人資料管理模塊:</p><p> 用戶資料修改時(shí)為用戶更改個(gè)人信息所提供的窗口,為了保護(hù)用戶信息部受非法侵害,用戶只有登錄網(wǎng)頁后才有權(quán)限修改個(gè)人資料。</p><p> (5)留言板管理模塊:</p><p> 留言板是一個(gè)商務(wù)網(wǎng)站中不可缺少的組成部分,它可以增進(jìn)用戶與網(wǎng)站之間
25、的交流。在現(xiàn)實(shí)網(wǎng)絡(luò)開發(fā)中存在著各種各樣的留言板,但它們都由基于瀏覽留言板及添加留言板2部分組成。</p><p> 這樣,子模塊各自的內(nèi)容基本設(shè)計(jì)好。下面可以設(shè)計(jì)如何將這些模塊組織在一起,構(gòu)成一個(gè)結(jié)構(gòu)比較合理的前臺(tái)了。除了在主頁中建立面向其他模塊的鏈接外,也要在其他模塊中建立返回主頁面的鏈接。另外各個(gè)模塊間也應(yīng)該互相鏈接起來。</p><p> 2.4后臺(tái)模塊功能分析</p>
26、;<p> 后臺(tái)管理模塊的功能是對站內(nèi)的資源進(jìn)行管理和維護(hù)。以后臺(tái)的業(yè)務(wù)流程分析和前臺(tái)各個(gè)模塊的設(shè)計(jì)為基礎(chǔ)、根據(jù)用戶的需求分析來確定后臺(tái)管理模塊應(yīng)具有的功能。后臺(tái)業(yè)務(wù)流程如圖2.3所示。</p><p> 后臺(tái)管理模塊的各個(gè)子功能模塊如下:</p><p> ?。?)管理員身份驗(yàn)證模塊:</p><p> 為合法用戶提供一個(gè)后臺(tái)入口。該模塊的功能
27、是對管理員身份進(jìn)行能夠驗(yàn)證。用戶輸入登錄ID和密碼后,系統(tǒng)將判斷登錄ID及密碼的有效性,如果通過驗(yàn)證則狀態(tài)后臺(tái)主頁,反之則提示錯(cuò)誤。</p><p> (2)商品管理模塊:</p><p> 向商品表插入前臺(tái)首頁展示的商品信息,也就是添加商品信息的功能。</p><p> (3)處理訂單模塊:</p><p> 網(wǎng)站管理者對用戶訂單的
28、執(zhí)行和編輯狀態(tài)。</p><p> ?。?)用戶信息管理模塊:</p><p> 查詢注冊所有用戶,對一些非法或失信用戶進(jìn)行刪除操作 。</p><p> ?。?)公告信息管理模塊:</p><p> 網(wǎng)站向用戶發(fā)布最新公告信息。</p><p> ?。?)鏈接信息管理模塊:</p><p>
29、; 管理員向前臺(tái)首頁添加友情鏈接信息。</p><p> 圖 2.3 后臺(tái)業(yè)務(wù)流程圖</p><p><b> 3 數(shù)據(jù)結(jié)構(gòu)分析</b></p><p> 3.1 數(shù)據(jù)流程分析</p><p> 分析系統(tǒng)的數(shù)據(jù)流,為后面設(shè)計(jì)網(wǎng)上購物系統(tǒng)的數(shù)據(jù)庫做好基礎(chǔ)。這里主要利用數(shù)據(jù)流程圖來說明數(shù)據(jù)流程。數(shù)據(jù)流程圖是一個(gè)圖示
30、工具,容易理解,容易在開發(fā)和用戶方之間進(jìn)行交流,以及在開發(fā)組織內(nèi)部交流。因此數(shù)據(jù)流程圖作為一種模型工具已經(jīng)廣泛使用在軟件工程的實(shí)踐中[2]。</p><p> 根據(jù)前臺(tái)業(yè)務(wù)流程,可以將用戶的活動(dòng)分為兩類。用戶瀏覽所使用到的數(shù)據(jù)歸納為站內(nèi)信息,如商品信息等。而用戶提交的訂單則作為網(wǎng)上購物系統(tǒng)的訂單數(shù)據(jù)。相應(yīng)的,根據(jù)后臺(tái)業(yè)務(wù)流程,管理員對網(wǎng)上購物系統(tǒng)內(nèi)容的添加、更新和刪除等所操作的數(shù)據(jù)定義為商城信息。網(wǎng)上購物系統(tǒng)數(shù)
31、據(jù)流的總體圖如圖3.1所示。</p><p> 圖 3.1 網(wǎng)站數(shù)據(jù)流的總體圖</p><p> 進(jìn)一步分析網(wǎng)站的數(shù)據(jù)流程,得到網(wǎng)站數(shù)據(jù)流程的零級圖,如圖3.2所示。</p><p> 圖 3.2 網(wǎng)站數(shù)據(jù)流的零級圖</p><p> 上面得到的零級圖并不是整個(gè)網(wǎng)站數(shù)據(jù)的詳細(xì)流程圖。它只是將網(wǎng)站的數(shù)據(jù)流進(jìn)行了一下分類。例如將商城信息分
32、為了商品信息、分類信息和用戶信息。在零級圖的基礎(chǔ)上還可以將每一個(gè)處理的細(xì)節(jié)描述出來,從而畫出細(xì)節(jié)圖。</p><p><b> 3.2 數(shù)據(jù)字典</b></p><p> 數(shù)據(jù)字典是關(guān)于數(shù)據(jù)的信息的集合,也就是對數(shù)據(jù)中包含的所有元素的定義的集合,它為軟件開發(fā)人員提供數(shù)據(jù)庫設(shè)計(jì)的參考,并為用戶了解系統(tǒng)時(shí)作為一個(gè)必有工具。 </p><p>&
33、lt;b> ?。?)數(shù)據(jù)流</b></p><p> 表3.3 用戶注冊信息</p><p> 表3.4 購物車信息</p><p><b> ?。?)數(shù)據(jù)存儲(chǔ)</b></p><p> 表3.5 商品信息表</p><p> 表3.6 訂單信息表</p>
34、<p> 表3.7 留言信息表</p><p><b> (3)數(shù)據(jù)加工</b></p><p><b> 表3.8 產(chǎn)生訂單</b></p><p> 表3.9 審核用戶登錄</p><p> 表3.10 訂單查詢</p><p> 3.3 E-R圖分
35、析</p><p> E-R圖是一種概念模型。概念模型實(shí)際上是現(xiàn)實(shí)世界到機(jī)器世界的一個(gè)中間層次。概念模型用于信息世界的建模,是顯示世界到信息世界的第一層抽象,使數(shù)據(jù)庫設(shè)計(jì)人員進(jìn)行數(shù)據(jù)庫設(shè)計(jì)的有利工具,也是數(shù)據(jù)庫設(shè)計(jì)人員和用戶之間進(jìn)行交流的語言,因此概念模型一方面應(yīng)該具有較強(qiáng)的語義表達(dá)能力,能夠方便、直接的表達(dá)應(yīng)該用眾的各種語義知識(shí),另一方面他還應(yīng)該簡單、清晰并且易于用戶理解。以下是各個(gè)數(shù)據(jù)表的實(shí)體圖。</
36、p><p> (1)商品信息表tb_Ware的實(shí)體圖,如圖3.11所示</p><p> 圖 3.11 商品信息表tb_Ware的實(shí)體圖</p><p> ?。?)用戶信息表tb_User的實(shí)體圖,如圖3.12所示</p><p> 圖 3.12 用戶信息表tb_User的實(shí)體圖</p><p> ?。?)留言信息表
37、tb_Text的實(shí)體圖,如圖3.13所示</p><p> 圖 3.13 留言信息表tb_Text的實(shí)體圖</p><p> (4) 訂單生成表tb_Sub的實(shí)體圖,如圖3.14所示</p><p> 圖 3.14 訂單生成表tb_Sub的實(shí)體圖</p><p> ?。?)訂單商品表tb_Shop的實(shí)體圖,如圖3.15所示</p&
38、gt;<p> 圖 3.15 訂單商品表tb_Shop的實(shí)體圖</p><p> (6)超級鏈接表tb_Link的實(shí)體圖,如圖3.16所示</p><p> 圖 3.16 超級鏈接表tb_Link的實(shí)體圖</p><p> ?。?)管理員信息表tb_Admin的實(shí)體圖,如圖3.17所示</p><p> 圖 3.17 管
39、理員信息表tb_Admin的實(shí)體圖</p><p> ?。?)公告信息表tb_Affiche的實(shí)體圖,如圖3.18所示</p><p> 圖 3.18 公告信息表tb_Affiche的實(shí)體圖</p><p> ?。?)總體E-R圖,如圖3.19所示</p><p> 圖 3.19 總體E-R圖</p><p>&l
40、t;b> 3.4基本表設(shè)計(jì)</b></p><p> 表的設(shè)計(jì)是這次設(shè)計(jì)的一個(gè)核心內(nèi)容。根據(jù)前面對網(wǎng)站前臺(tái)與后臺(tái)功能模塊的分析和對數(shù)據(jù)庫中實(shí)體關(guān)系的設(shè)計(jì),可以看到網(wǎng)站中所用到的數(shù)據(jù)信息基本包括:商品信息、用戶信息、留言信息、訂單信息、超級鏈接信息、管理員信息、公告信息等。下面是為數(shù)據(jù)庫設(shè)計(jì)的表:</p><p> 商品信息表tb_Ware用來保存商品的基礎(chǔ)信息。結(jié)構(gòu)
41、如表3.20所示。</p><p> 表3.20 tb_Ware的結(jié)構(gòu)</p><p> 用戶信息表tb_User用來保存用戶信息。表tb_User的結(jié)構(gòu)如表3.21下。</p><p> 表3.21 tb_User的結(jié)構(gòu)</p><p> 留言信息表tb_Text用來記錄留言信息。表tb_Text的結(jié)構(gòu)如表3.22所示。</p
42、><p> 表3.22 tb_Text的結(jié)構(gòu)</p><p> 訂單生成表tb_Sub用來記錄新生成的訂單。表tb_Sub的結(jié)構(gòu)如表3.23所示。</p><p> 表3.23 tb_Sub的結(jié)構(gòu)</p><p> 訂單商品表tb_Shop用來記錄某一訂單中所定購的商品的詳細(xì)信息。表tb_Shop的結(jié)構(gòu)如表3.24所示。</p>
43、;<p> 表3.24 tb_Shop的結(jié)構(gòu)</p><p> 超級鏈接表tb_Link主要用于記錄調(diào)價(jià)的超級鏈接信息。表tb_Link的結(jié)構(gòu)如表3.25所示。 </p><p> 表3.25 tb_Link的結(jié)構(gòu)</p><p> 管理員信息表tb_Admin主要用于記錄管理員的信息。表tb_Admin的結(jié)
44、構(gòu)如表3.26所示。 </p><p> 表3.26 tb_Admin的結(jié)構(gòu)</p><p> 公告信息表tb_Affiche主要用于記錄后臺(tái)調(diào)價(jià)的公共信息。表tb_Affiche的結(jié)構(gòu)如表3.27所示。 </p><p> 表3.27 tb_Affiche的結(jié)構(gòu)</p><p
45、><b> 4 功能實(shí)現(xiàn)</b></p><p> 4.1 系統(tǒng)界面的實(shí)現(xiàn)</p><p> 如果將網(wǎng)站比作一個(gè)人的話,服務(wù)器就像大腦,數(shù)據(jù)庫就像五臟六腑,其內(nèi)嵌的Java和JavaScript組合起來就像是細(xì)胞與神經(jīng),而網(wǎng)頁就是這個(gè)人的皮肉。網(wǎng)頁將網(wǎng)站的各個(gè)組成部分包裹起來,形成易懂并且美觀的外表展示給大家。瀏覽者登陸網(wǎng)站后看到的就是一個(gè)個(gè)網(wǎng)頁的組合。所
46、以設(shè)計(jì)和實(shí)現(xiàn)每一個(gè)網(wǎng)頁也是非常重要的工作。</p><p> 隨著科技的高速發(fā)展,眾多網(wǎng)頁制作的應(yīng)用軟件應(yīng)運(yùn)而生。相對于傳統(tǒng)的動(dòng)態(tài)網(wǎng)頁開發(fā)工具而言,由于繼承了Java語言的許多優(yōu)點(diǎn),用JSP開發(fā)動(dòng)態(tài)網(wǎng)站十分方便,開發(fā)效率較高。此外,JSP還具有強(qiáng)大的組件(Java Bean)支持功能,可以方便地實(shí)現(xiàn)組件復(fù)用,進(jìn)一步提高了開發(fā)效率。</p><p> 在整個(gè)網(wǎng)頁的制作過程中,都是結(jié)合使用
47、HTML語言來實(shí)現(xiàn)設(shè)計(jì)的。系統(tǒng)的頁面設(shè)計(jì)決定了網(wǎng)站的風(fēng)格, 制作好的網(wǎng)站不僅提供給營銷商,更多的要供瀏覽者瀏覽。所以整個(gè)網(wǎng)站系統(tǒng)應(yīng)注重的是:易導(dǎo)航性、易操作性和友好的交互界面。因此,網(wǎng)站的設(shè)計(jì)最好要簡潔、明了、格調(diào)清新、實(shí)用、易于使用和維護(hù)。在頁面的風(fēng)格上應(yīng)保持統(tǒng)一,這里采用CSS樣式表將所有頁面的字體、字號、顏色以及超鏈接的樣式做統(tǒng)一定義。</p><p> 4.2 前臺(tái)功能模塊的實(shí)現(xiàn)</p>
48、<p> 整個(gè)系統(tǒng)分為了前臺(tái)功能模塊和后臺(tái)功能模塊。下面詳細(xì)討論主要的幾個(gè)功能模塊的程序?qū)崿F(xiàn)。在每個(gè)模塊的介紹中,將具體說明一些涉及要點(diǎn)。</p><p> 前臺(tái)功能模塊分為用戶管理模塊、訂單查詢模塊、購物車模塊、修改個(gè)人資料模塊、留言板模塊5個(gè)部分。前臺(tái)首頁主要有以下幾個(gè)部分:</p><p> ?。?)網(wǎng)站導(dǎo)航:主要用戶顯示網(wǎng)站的旗幟廣告、各功能模塊導(dǎo)航;</p&g
49、t;<p> (2)用戶登錄:用戶在此注冊、登錄或找回密碼;</p><p> ?。?)商品分類搜索:用戶按商品類別進(jìn)行搜索顯示;</p><p> ?。?)銷售排行榜:按照商品的銷售數(shù)量顯示銷售排行信息;</p><p> (5)商品展示區(qū):按后臺(tái)添加商品的時(shí)間順序展示商品;</p><p> ?。?)友情鏈接:顯示友情鏈
50、接信息;</p><p> ?。?)后臺(tái)登錄入口:管理員可以通過該入口登錄后臺(tái)。</p><p> 首頁運(yùn)行結(jié)果如圖4.1所示。</p><p> 圖 4.1 首頁運(yùn)行結(jié)果</p><p> 4.2.1 用戶管理模塊</p><p> 用戶管理模塊主要實(shí)現(xiàn)用戶的注冊、登錄、找回密碼等功能。</p>
51、<p><b> ?。?)用戶注冊</b></p><p> 當(dāng)用戶第一次登錄時(shí)首先要在網(wǎng)站上注冊,成為會(huì)員用戶才可以在網(wǎng)站上購物,注冊頁面必須填寫一些用戶的基本信息,如用戶名、密碼、聯(lián)系電話等信息。要注意的是,在用戶注冊頁面user/index.htm中用戶自定義JavaScript檢驗(yàn)用戶注冊信息不允許為空。</p><p> 用戶注冊頁面user
52、/index.htm如圖4.2所示。</p><p> 圖 4.2 用戶注冊頁面運(yùn)行結(jié)果</p><p> 為了便于網(wǎng)站對用戶的管理,在index.htm用戶注冊頁面接收到的注冊信息要經(jīng)過嚴(yán)格的過濾,保證注冊用戶名的唯一性,在提交表單后需要對數(shù)據(jù)表中的數(shù)據(jù)進(jìn)行查詢,如果沒有找到,則在插入數(shù)據(jù)表時(shí)提示注冊成功,否則提示此用戶已被占用請重新注冊。</p><p>
53、 用戶注冊的流程圖如圖5.3所示。</p><p> 圖 4.3用戶注冊系統(tǒng)流程圖</p><p><b> ?。?)用戶登錄</b></p><p> 用戶登錄窗口設(shè)置在首頁上,主要用來接收用戶錄入的用戶名及密碼。單擊“注冊”按鈕時(shí),會(huì)提交到user/index.htm頁面執(zhí)行;單擊“登錄”按鈕時(shí),系統(tǒng)將對輸入的用戶名和密碼進(jìn)行驗(yàn)證,如果
54、數(shù)據(jù)表中用戶名和密碼存在就顯示登陸成功,并返回首頁,否則彈出錯(cuò)誤提示信息。</p><p> 用戶登錄的流程圖如圖4.4所示。</p><p> 圖 4.4 用戶登錄系統(tǒng)流程圖</p><p><b> ?。?)找回密碼</b></p><p> 當(dāng)密碼以外丟失會(huì)給用戶帶來不必要的麻煩,重新注冊一個(gè)新的用戶即浪費(fèi)了
55、時(shí)間,也浪費(fèi)網(wǎng)站的資源,如果用戶只記住自己注冊的用戶名及電子郵箱名并提供密碼提示的問題和答案就可以找回密碼。找回密碼頁面user/pass.htm如圖4.5所示。</p><p> 圖 4.5找回密碼頁面運(yùn)行結(jié)果</p><p> 用戶單擊“查找”按鈕,系統(tǒng)會(huì)將傷表中所示的數(shù)據(jù)表單提交到user/res.jsp中。user/res.jsp頁用來驗(yàn)證提交過來的四個(gè)條件是否完全符合數(shù)據(jù)庫中
56、的查找條件,只有符合才能顯示密碼結(jié)果,否則彈出“你輸入信息有誤”的提示對話框。</p><p> 4.2.2 個(gè)人資料修改模塊</p><p> 個(gè)人資料修改時(shí)為用戶更改個(gè)人信息所提供的窗口,用戶只有登錄網(wǎng)頁后才有權(quán)限修改個(gè)人資料信息。</p><p> 個(gè)人資料修改模塊在前臺(tái)主頁的導(dǎo)航條上,單擊“修改資料”鏈接,進(jìn)入用戶資料修改頁面,該頁面主要用戶修改用戶信
57、息。用戶資料修改頁面如圖4.6所示。</p><p> 圖 4.6 個(gè)人資料修改頁面運(yùn)行結(jié)果</p><p> 個(gè)人信息修改完畢后,要將修改后的數(shù)據(jù)信息更新到注冊數(shù)據(jù)表中,單擊“修改”按鈕,如果提交的數(shù)據(jù)無誤,將彈出“數(shù)據(jù)更新成功”的消息對話框;否則將彈出“更新失敗”的消息對話框。</p><p> 個(gè)人資料修改模塊流程圖如圖4.7所示。</p>
58、<p> 圖 4.7 個(gè)人資料修改模塊流程圖</p><p> 4.2.3 購物車模塊</p><p> 購物車模塊中,主要包含以下幾個(gè)功能,即:添加購物車、查看購物車、生成訂單和清空購物車。購物車頁運(yùn)行結(jié)果如圖4.8所示。</p><p> 圖4.8 購物車頁面運(yùn)行結(jié)果</p><p><b> (1)添加購
59、物車</b></p><p> 添加購物車就是把用戶選中的商品暫時(shí)存放在購物車中,當(dāng)用戶在前臺(tái)首頁中單擊商品展示區(qū)的“購買”按鈕時(shí),系統(tǒng)會(huì)將該商品的詳細(xì)信息展示在查看物品清單頁面中。用戶在單擊物品清單頁面下方的“放入購物車”鏈接,便可以將該商品放入購物車中。</p><p> 商品的代碼流程是從session中讀取shop對象,如果為空則說明還沒有進(jìn)行購物或者已經(jīng)清空了購物
60、車,需要新建購物車對象;將商品名稱與購物車列表中的商品名稱對比,如果已經(jīng)存在,則把商品數(shù)量加1。</p><p> 這段代碼流程中,還使用了集合類型。集合類型在Java中又稱為向量,是一元集合,可以加入重復(fù)數(shù)據(jù),它的作用和數(shù)組相同,可以保存一系列數(shù)據(jù),但集合類型也有它獨(dú)特的優(yōu)點(diǎn),就是可以方便地對集合內(nèi)的數(shù)據(jù)進(jìn)行查找、增加、刪除和修改等操作。</p><p><b> (2)查
61、看購物車</b></p><p> 為了方便用戶隨時(shí)查看購物情況,在網(wǎng)站的首頁加入了查看購物車的鏈接,通過它可以將用戶所有選中的商品信息放入購物車中顯示出來。在程序中使用了一組文本框記錄用戶購買的商品數(shù)量,用戶可以在文本框中輸入想要購買的數(shù)量然購單擊“修改”按鈕。如果欲刪除該商品,可以在數(shù)量文本框里輸入“0”,并需要單擊“修改”按鈕來更新購物車中商品的數(shù)量。</p><p>
62、 系統(tǒng)每次只會(huì)將1個(gè)商品放入購物車中,如果用戶需要多個(gè)同種商品,可以通過修改商品信息右側(cè)相應(yīng)文本框的值來完成。操作完成后需要通過單擊“修改”按鈕來保存操作。</p><p><b> ?。?)生成訂單</b></p><p> 生成訂單時(shí)網(wǎng)上購物商城的最終目的,前面所有功能的實(shí)現(xiàn)都是為最后生成一個(gè)用戶滿意的訂單作基礎(chǔ),在此要生成一個(gè)可供用戶隨時(shí)查詢的訂單號,還要保
63、存用戶訂單中所購買的商品信息。當(dāng)用戶確認(rèn)對購物車不再改變以后,就可以到收銀臺(tái)結(jié)帳并生成訂單。結(jié)帳的流程為:從購物車中讀取商品名稱,商品數(shù)量,商品價(jià)格信息,生成一個(gè)唯一的訂單號,同時(shí)也把用戶注冊的基本信息讀取出來,形成一個(gè)完整的訂單寫入數(shù)據(jù)庫。</p><p> 在生成訂單模塊中主要使用了調(diào)出用戶信息并生成唯一訂單號,調(diào)出用戶信息就是完全的對數(shù)據(jù)庫進(jìn)行操作,利用session對象把登錄后的用戶名保存起來,在訂單生
64、成時(shí)把保存的用戶名從數(shù)據(jù)庫的用戶標(biāo)中取出即可;生成唯一訂單號方法有很多,只要確保訂單號碼的唯一性及方便用戶記錄以便于查詢自己訂單的執(zhí)行狀態(tài)即可。</p><p> 訂單生成后,用戶單擊“提交”按鈕,便可以將錄入的訂單信息保存到數(shù)據(jù)庫中。</p><p><b> (4)清空購物車</b></p><p> 清空購物車是指當(dāng)用戶訂單生成后,
65、倘若還想繼續(xù)購物一定要清空購物車再進(jìn)行選購商品,這樣防止重復(fù)購物,其實(shí)清空購物車實(shí)現(xiàn)起來非常簡單,只需要將session中存儲(chǔ)的shop對象清空即可。</p><p> 購物車模塊流程圖如圖4.9所示。</p><p> 圖 4.9購物車模塊流程圖</p><p> 4.2.4 訂單查詢模塊</p><p> 用戶提交訂單后,通過產(chǎn)生
66、的訂單號查詢訂單信息及執(zhí)行狀態(tài)。用戶在購物中心首頁中單擊“訂單查詢”超鏈接,就可以進(jìn)入輸入訂單號頁面,在頁面的文本框中輸入訂單號并單擊“提交”按鈕,如果訂單號輸入無誤,系統(tǒng)將根據(jù)用戶錄入的訂單號在數(shù)據(jù)表中查詢處對應(yīng)的貨品信息并轉(zhuǎn)到訂單查詢顯示頁面將貨品信息顯示出來。</p><p> 訂單查詢模塊流程圖如圖4.10所示。</p><p> 圖 4.10 訂單查詢模塊流程圖</p&
67、gt;<p> 4.2.5 留言板模塊</p><p> 留言板模塊由瀏覽留言板和添加留言板兩部分組成。下面分別對這兩部分進(jìn)行介紹。</p><p><b> ?。?)瀏覽留言板</b></p><p> 單擊網(wǎng)站首頁的“留言板”超鏈接進(jìn)入留言板頁面,在該頁面中,主要顯示用戶所填寫的留言,以便其他用戶查閱。</p>
68、;<p> 留言板中顯示的數(shù)據(jù)是從數(shù)據(jù)表中檢索出來并顯示在網(wǎng)頁中的,為了方便查看網(wǎng)頁信息,使用了分頁顯示功能。對網(wǎng)頁進(jìn)行分頁顯示首先要確定記錄跨度,就是每頁所顯示的記錄數(shù),在這個(gè)網(wǎng)站的留言板中,設(shè)定了int pagesize=4,即每頁中只允許顯示4條留言信息,用戶可以通過單擊“上一頁”、“下一頁”、“最后一頁”、“第一頁”或則從文本框中鍵入一個(gè)數(shù)值跳轉(zhuǎn)到相應(yīng)頁瀏覽留言信息。</p><p>
69、記錄的總條數(shù)可以從數(shù)據(jù)庫中通過查詢語句</p><p> rs.last();rowcount=rs.getRow得到,而計(jì)算總頁數(shù)時(shí),根據(jù)總頁數(shù)=總記錄數(shù)/跨度,如果除不盡就加1的原理,設(shè)計(jì)代碼為:</p><p> pagecount=((rowcount%pagesize)==0?(rowcount/pagesize);(rowcount/pagesize)+1)。</p&
70、gt;<p> 如果獲取文本框中的數(shù)據(jù)不為空就把它轉(zhuǎn)換成整型數(shù)據(jù),然后賦值給當(dāng)前獲取頁再做進(jìn)一步判斷;如果獲取的頁數(shù)大于總頁數(shù)就把總頁數(shù)賦給獲取頁數(shù),否則就把獲取頁數(shù)值賦為1。而計(jì)算當(dāng)前記錄數(shù)時(shí),當(dāng)前記錄數(shù)=(獲取頁數(shù)-1)*跨度+1。代碼如下所示。</p><p> int showpage=1;</p><p> if(topage!=null){</p>
71、;<p> showpage=Integer.parseInt(topage);</p><p> if(showpage>pagecount){</p><p> showpage=pagecount;</p><p> }else if(showpage<=0){</p><p> showpage=1
72、;</p><p><b> }</b></p><p><b> }</b></p><p> rs.absolute((showpage-1)*pagesize+1);</p><p> 有了以上這幾個(gè)關(guān)鍵變量,網(wǎng)頁分頁顯示功能基本上已經(jīng)實(shí)現(xiàn)了,下一步就是在當(dāng)前記錄數(shù)位置開始循環(huán),當(dāng)數(shù)據(jù)
73、庫沒有記錄的時(shí)候一定要終止循環(huán)程序。代碼如下:</p><p> for(int i=1;i<=pagesize;i++){</p><p><b> ……</b></p><p> if(!rs.next())</p><p><b> break;</b></p>&
74、lt;p><b> }</b></p><p><b> ?。?)添加留言</b></p><p> 添加留言是用戶與用戶,以及用戶與網(wǎng)站之間的一種交流模式,只有把用戶想要表達(dá)的內(nèi)容添加至數(shù)據(jù)庫中,才能在瀏覽留言板中進(jìn)行顯示。</p><p> 用戶在留言板中單擊“添加留言”超鏈接就可以打開添加留言頁面,該頁面
75、主要用來提交用戶輸入的留言信息。用戶在添加留言頁中單擊“提交”按鈕,系統(tǒng)會(huì)將數(shù)據(jù)表單提交到admin/addle.jsp頁,該頁用來實(shí)現(xiàn)江留言內(nèi)容存入到數(shù)據(jù)庫中。</p><p> 留言板模塊的流程圖如圖4.11所示。</p><p> 圖 4.11 留言板模塊流程圖</p><p> 4.3 后臺(tái)功能模塊的設(shè)計(jì)實(shí)現(xiàn)</p><p>
76、 后臺(tái)功能只允許具有管理員權(quán)限的用戶使用,它是實(shí)現(xiàn)前臺(tái)功能的基礎(chǔ)。后臺(tái)包括管理員登錄模塊、添加商品模塊、訂單信息管理模塊、查詢用戶信息管理模塊、添加鏈接模塊。后臺(tái)首頁主要有以下幾個(gè)部分。</p><p> ?。?)后臺(tái)導(dǎo)航區(qū):放置管理員可操作項(xiàng)目的鏈接;</p><p> ?。?)操作區(qū):顯示所有后臺(tái)導(dǎo)航的鏈接信息。</p><p> 4.3.1 管理員登陸模塊&
77、lt;/p><p> 在前臺(tái)首頁單擊管理員入口,將轉(zhuǎn)到管理員登錄頁面,該頁面的功能是對管理員身份進(jìn)行驗(yàn)證。在管理登錄頁面中,是通過JavaScript來實(shí)現(xiàn)錄入數(shù)據(jù)完整性驗(yàn)證的。用戶輸入登錄ID和密碼后單擊“登錄”按鈕時(shí),如果錄入數(shù)據(jù)完整性驗(yàn)證通過,系統(tǒng)會(huì)將數(shù)據(jù)提交到Acheck.jsp登錄頁面,該頁面用來判斷輸入信息在數(shù)據(jù)庫中tb_Admin表是否存在提交的用戶名和密碼,如果登錄ID及密碼有效,就保存用戶名信息,
78、管理員有權(quán)對網(wǎng)站進(jìn)行維護(hù);反之則提示錯(cuò)誤。登錄頁面如圖4.12所示。流程圖如圖4.13所示。</p><p> 圖 4.12 管理員登錄頁面運(yùn)行結(jié)果</p><p> 圖 4.13 管理員登錄系統(tǒng)流程圖</p><p> 4.3.2 添加商品模塊</p><p> 單擊導(dǎo)航區(qū)中的“添加商品”超鏈接,系統(tǒng)將打開添加商品頁面,該頁面主要用
79、于將商品信息添加到數(shù)據(jù)庫中,以提供前臺(tái)首頁商品展示所需要的數(shù)據(jù)依據(jù)。用戶單擊“添加”按鈕后添加商品如圖4.14所示。</p><p> 圖 4.14 添加商品信息頁面運(yùn)行結(jié)果</p><p> 為了減少人為錯(cuò)誤,在提交商品信息時(shí),需要對數(shù)據(jù)的合法性進(jìn)行驗(yàn)證,輸入的商品價(jià)格不能使字符型,而輸入的圖片只支持Gif格式等,這些任務(wù)由腳本語言JavaScript的函數(shù)check()來完成。代碼
80、如下。</p><p> function check(){</p><p><b> ……</b></p><p> if(form1.image.value==""){</p><p> alert("請輸入展示圖片的路徑");</p><p>
81、 form1.image.focus();</p><p> return false;</p><p><b> }</b></p><p> if(isNaN(form1.wareprice.value)){</p><p> alert("商品價(jià)格輸入不正確");</p>
82、<p> form1.wareprice.focus();</p><p> return false;</p><p><b> }</b></p><p> 為了確保商品在數(shù)據(jù)表中的唯一性,在用戶提交表單時(shí),需要先根據(jù)用戶輸入的商品名稱對數(shù)據(jù)表進(jìn)行查詢,確保此商品在數(shù)據(jù)表中不存在后,方可執(zhí)行插入操作。這一功能由admin
83、/wcheck.jsp來完成。</p><p> 流程圖如圖4.15所示。</p><p> 圖 4.15 添加商品信息模塊流程圖</p><p> 4.3.3 訂單信息管理模塊</p><p> 用戶在前臺(tái)購物所產(chǎn)生的訂單并不能立即執(zhí)行,需要系統(tǒng)管理員在后臺(tái)進(jìn)行訂單信息管理審核以確認(rèn)它的執(zhí)行性。用戶單擊導(dǎo)航區(qū)中的“訂單信息管理”超鏈
84、接進(jìn)入用戶訂單處理頁面,該頁面上會(huì)顯示近期所有沒被處理的訂單。用戶訂單處理頁面顯示的是用戶基本信息,要想知道訂單中所涉及的商品,需要單擊對應(yīng)訂單號的超鏈接打開商品訂購詳單頁面才行。</p><p> 商品訂購詳單主要通過提交的訂單號從tb_Shop表中查詢處對應(yīng)的商品并顯示在頁面中,管理員審核后可通過復(fù)選框來設(shè)置訂單是否執(zhí)行。程序中利用admin/shop.jsp來完成這些功能。當(dāng)選中“是/否”復(fù)選框時(shí),系統(tǒng)會(huì)
85、根據(jù)提交的訂單號更新數(shù)據(jù)表,如果更新成功,則轉(zhuǎn)到spif.jsp也執(zhí)行。</p><p> 流程圖如圖4.16所示。</p><p> 圖 4.16 訂單信息管理模塊流程圖</p><p> 4.3.4 查詢用戶信息模塊</p><p> 查詢用戶信息模塊用來完成對注冊用戶的瀏覽及刪除功能。如果用戶蓄意性注冊或者在很長時(shí)間內(nèi)沒有訂單產(chǎn)
86、生,管理員就可以將該用戶信息刪除。單擊導(dǎo)航區(qū)中的“查詢用戶信息”超鏈接進(jìn)入用戶信息頁面,就可以看到用戶信息。在這一部分的設(shè)計(jì)中,也使用了分頁顯示功能。對于一些失信用戶只需要單擊右側(cè)的“刪除”超鏈接,即可轉(zhuǎn)到admin/deluser.jsp頁中做刪除處理。</p><p> 流程圖如圖4.17所示。</p><p> 圖 4.17 查詢用戶信息模塊流程圖</p><
87、p> 4.3.5 添加鏈接模塊</p><p> 用戶在后臺(tái)首頁導(dǎo)航區(qū)中單擊“添加鏈接”即可進(jìn)入添加友情鏈接頁面,該頁面用戶在前臺(tái)顯示友情鏈接信息。</p><p> 添加鏈接頁面如圖4.18所示。</p><p> 圖 4.18 添加鏈接頁面運(yùn)行結(jié)果</p><p> 用戶單擊“提交”按鈕后,系統(tǒng)將添加鏈接頁面的數(shù)據(jù)表單提交
88、admin/addlink.jsp頁面處理。若添加失敗,則提示故障信息,并返回頁面。</p><p> 流程圖如圖4.19所示。</p><p> 圖 4.19 添加鏈接模塊流程圖</p><p><b> 5 系統(tǒng)測試</b></p><p> 在完成某一功能模塊后,都要進(jìn)行一下系統(tǒng)測試。檢驗(yàn)所完成的這一模塊是
89、否能實(shí)現(xiàn)預(yù)計(jì)的功能。其目的是方便整個(gè)系統(tǒng)的實(shí)現(xiàn)。</p><p> 5.1 系統(tǒng)測試原理</p><p> 測試主要依據(jù)是被試系統(tǒng)的研制任務(wù)書和技術(shù)規(guī)格書,是對軟件雄體功能和性能的綜合測試與評估。測試原理是軟件測試活動(dòng)的理論基礎(chǔ),測試方法是鍘試原理的實(shí)際應(yīng)用和獲得測試數(shù)據(jù)的手段?;谲浖墓残?,對于軟件的測試要遵循一般軟件的測試原理和方法。同時(shí),針對軟件的特性,必須找到合適的測試方法。
90、</p><p> 測試用例的合理性對于軟件的測試與評估具有關(guān)鍵作用,而如何使設(shè)計(jì)的用例、合理并且典型有效并不容易。所以應(yīng)該與軟件的研制人員以及最終用戶一起,有針對性地研究實(shí)際操作環(huán)境并加以描述,形成合理的測試用例集。另一方面,軟件運(yùn)行環(huán)境的復(fù)雜程度對軟件評估具有重要作用,所以應(yīng)產(chǎn)生盡量逼真的運(yùn)行背景以便于研究。軟件測試的周期如圖5.1所示。</p><p> 圖5.1 軟件測試周期示
91、意圖</p><p> 5.2 系統(tǒng)測試原則</p><p> 序員應(yīng)避免測試自己編寫的程序;測試用例的設(shè)計(jì)必須包括預(yù)期的輸出結(jié)果;測試用例應(yīng)包括有效的和期望的輸入情況,也要包括無效的和不期望的輸入情況;所有的測試都應(yīng)追溯到用戶需求,所有測試活動(dòng)都應(yīng)該是有計(jì)劃的,并且計(jì)劃能夠得到保障。只檢查程序是否做了它應(yīng)該做的事這僅完成了測試工作的一半,另一半則是要檢查程序是否做了它不該做的事;一段
92、程序中存在錯(cuò)誤的概率與在這段程序中已發(fā)現(xiàn)的錯(cuò)誤數(shù)成比例;測試上作必須有明確的目標(biāo);盡早地和不斷地進(jìn)行軟件測試;窮舉測試是不可能的,充分覆蓋程序邏輯是有可能的。</p><p> 5.3 系統(tǒng)測試方法</p><p> 軟件測試的方法和技術(shù)是多種多樣的。對于軟件測試技術(shù),可以從不同的角度加以分類:從是否需要執(zhí)行被測軟件的角度,可分為靜態(tài)測試和動(dòng)態(tài)測試。從測試是否針對系統(tǒng)的內(nèi)部結(jié)構(gòu)和具體實(shí)
93、現(xiàn)算法的角度來看,可分為白盒測試和黑盒測試。</p><p><b> (1)黑盒測試</b></p><p> 黑盒測試也稱功能測試或數(shù)據(jù)驅(qū)動(dòng)測試或基于規(guī)范的測試,它是在己知產(chǎn)品所應(yīng)具有的功能的前提下,通過測試來檢測每個(gè)功能是否都能正常使用,在測試時(shí),把程序看作一個(gè)不能打開的黑盒子,在完全不考慮程序內(nèi)部結(jié)構(gòu)和內(nèi)部特性的情況下,測試者對程序接口進(jìn)行測試,它只檢查程
94、序功能是否按照需求規(guī)格說明書的規(guī)定正常使用,程序是否能適當(dāng)?shù)亟邮蛰斎霐?shù)據(jù)而產(chǎn)生正確的輸出信息,并且保持外部信息(如數(shù)據(jù)庫或文件)的完整性。黑盒測試方法主要有等價(jià)類劃分、邊值分析、因果圖、錯(cuò)誤推測等?!昂诤小狈ㄖ塾诔绦蛲獠拷Y(jié)構(gòu),不考慮內(nèi)部邏輯結(jié)構(gòu),只是針對軟件的界面和軟件需求規(guī)格說明中規(guī)定的功能進(jìn)行測試?!昂诤小狈ㄊ歉F舉輸入測試,只有把所有可能的輸入都作為測試情況使用,才能以這種方法查出程序中所有的錯(cuò)誤。實(shí)際上測試情況有無窮多個(gè),人們不
95、僅要測試所有合法的輸入,而且還要對那些不合法但是可能的輸入進(jìn)行測試。</p><p><b> ?。?)白盒測試</b></p><p> 白盒測試也稱結(jié)構(gòu)測試或邏輯驅(qū)動(dòng)測試或基于實(shí)現(xiàn)的測試,它是知道產(chǎn)品內(nèi)部工作過程。可通過測試來檢測產(chǎn)品內(nèi)部動(dòng)作是否按照規(guī)格說明書的規(guī)定止常進(jìn)行,按照程序內(nèi)部的結(jié)構(gòu)測試程序,檢驗(yàn)程序中的每條通路是否都能按預(yù)定要求正確工作。白盒測試的主
96、要方法有程序邏輯驅(qū)動(dòng)測試、基本路徑測試和數(shù)據(jù)流測試等。“白盒”法需要全面了解程序的內(nèi)部邏輯結(jié)構(gòu)、對所有邏輯路徑進(jìn)行測試。因此,白盒”法是窮舉路徑測試。但即使每條路徑都測試了仍然可能有錯(cuò)誤。第一,窮舉路徑測試不能查出程序違反了設(shè)計(jì)規(guī)范,即程序本身是個(gè)錯(cuò)誤的程序。第二,窮舉路徑測試不可能查出程序中因遺漏路徑而出錯(cuò)。第三,窮舉路徑測試可能發(fā)現(xiàn)不了一些與數(shù)據(jù)相關(guān)的錯(cuò)誤。</p><p><b> 5.4 本系
97、統(tǒng)測試</b></p><p> 這個(gè)網(wǎng)站系統(tǒng)要實(shí)現(xiàn)的功能有用戶注冊登陸、瀏覽商城信息、用戶購物并填寫訂單、管理員對網(wǎng)站信息的各方面操作和維護(hù)等。</p><p> 根據(jù)上面介紹的測試原則,使用測試用例文檔分別對系統(tǒng)進(jìn)行測試。</p><p> 測試部分包括網(wǎng)站對數(shù)據(jù)庫的訪問和更新測試;對網(wǎng)站查詢功能的測試;系統(tǒng)容錯(cuò)功能的測試。</p>
98、<p> 表5.1 網(wǎng)站對數(shù)據(jù)庫的訪問和更新測試用例</p><p> 表5.2 網(wǎng)站查詢功能的測試</p><p> 表5.3 對系統(tǒng)容錯(cuò)功能的測試之對客戶修改資料的檢測</p><p> 表6.4 對系統(tǒng)容錯(cuò)功能的測試之管理員對網(wǎng)站的維護(hù)的檢測</p><p><b> 五 設(shè)計(jì)總結(jié)</b>&
99、lt;/p><p> 我的課程設(shè)計(jì)說明書具體論述了網(wǎng)上購物系統(tǒng)的主要功能及體系結(jié)構(gòu),重點(diǎn)討論了系統(tǒng)的各項(xiàng)功能模塊、各模塊的系統(tǒng)流程,及模塊功能的實(shí)現(xiàn),每個(gè)模塊在都能完成其功能的結(jié)果下將其綜合成一個(gè)完整的系統(tǒng)。目前基于該模型的系統(tǒng)處于實(shí)驗(yàn)室階段,還存在許多問題與不足,如安全性能還不完善,缺少必要的數(shù)據(jù)加密系統(tǒng)等,,這些功能與技術(shù)還需要加以提高和實(shí)現(xiàn)。</p><p> 在編寫課程設(shè)計(jì)說明書的
100、時(shí)間里,我在不斷自學(xué)的基礎(chǔ)上利用JSP網(wǎng)絡(luò)開發(fā)語言、SQL Server 2008數(shù)據(jù)庫完成了網(wǎng)上購物系統(tǒng)的設(shè)計(jì)。期間我遇到了若干問題和解決了不少的問題。從配置Tomcat服務(wù)器和數(shù)據(jù)庫,到網(wǎng)站服務(wù),我對電子商務(wù)的認(rèn)識(shí)從無到有,有了較為具體詳細(xì)的了解。我所建立的網(wǎng)上購物系統(tǒng)只是一個(gè)稍顯簡單的網(wǎng)上購物系統(tǒng),真正電子商務(wù)所涉及到的方方面面的問題我未曾遇到或現(xiàn)有的條件限制而未能實(shí)現(xiàn)。網(wǎng)上購物系統(tǒng)并不是我想象的那么簡單,它包括了編寫程序、數(shù)據(jù)庫
101、設(shè)計(jì)、網(wǎng)頁制作、圖象處理、版面設(shè)計(jì)、數(shù)據(jù)采集、文本編輯、服務(wù)器管理等等,要搞好一個(gè)好的,完善的網(wǎng)站需要一個(gè)詳細(xì)的、合理的、可行性的規(guī)劃設(shè)計(jì)。</p><p> 在具體實(shí)施的過程中,在程序的調(diào)試上出現(xiàn)了很大的問題,要使用瀏覽器來瀏覽才能找出錯(cuò)誤所在,這一定程度上延長了調(diào)試時(shí)間。在開始的時(shí)候往往要為了找一個(gè)小錯(cuò)誤花上大半天的時(shí)間。經(jīng)過多寫程序,現(xiàn)在一定程度上已經(jīng)能快速的找出錯(cuò)誤,并能熟練的操作數(shù)據(jù)庫。</p&
102、gt;<p> 隨著Web技術(shù)的進(jìn)一步發(fā)展和Internet的逐漸大眾化,基于Internet的電子商務(wù)系統(tǒng)無疑比傳統(tǒng)商務(wù)具有更加廣闊的應(yīng)用前景。而如何提高電子商務(wù)系統(tǒng)中的數(shù)據(jù)訪問效率、交易平臺(tái)的安全性及事務(wù)處理的能力仍是當(dāng)前人們所關(guān)注的熱點(diǎn)問題。這些問題有待于以后作更深入的探討,相信在不久的將來電子商務(wù)將表現(xiàn)出越來越大的作用。在此要感謝我們的指導(dǎo)老師為課程設(shè)計(jì)說明書的最終成稿提供了很多寶貴的意見。</p>
103、<p><b> 參考文獻(xiàn)</b></p><p><b> 附錄</b></p><p> //錄入一個(gè)新商品,控制器類</p><p> public class addShopAction extends Action{</p><p> //在此方法中處理HTTP請求數(shù)
104、據(jù),并作響應(yīng)</p><p> public ActionForward execute(ActionMapping mapping, ActionForm form,</p><p> HttpServletRequest request, HttpServletResponse response) throws Exception {</p><p> A
105、ctionErrors errors=new ActionErrors();</p><p> shopOPBean shopOP=new shopOPBean();</p><p> int i=shopOP.insertShop(form);</p><p><b> if(i!=1){</b></p><p>
106、; errors.add("inserterror",new ActionMessage("addshop.insertError"));</p><p> saveErrors(request,errors);</p><p> return(new ActionForward(mapping.findForward("failur
107、e")));</p><p><b> }</b></p><p> request.removeAttribute(mapping.getAttribute());//刪除formBean</p><p> return mapping.findForward("success"); </p>
108、<p><b> }</b></p><p><b> }</b></p><p><b> //取消訂單</b></p><p> public class deleteOrderFormAction extends Action{</p><p>
109、//在此方法中處理HTTP請求數(shù)據(jù),并作響應(yīng)</p><p> public ActionForward execute(ActionMapping mapping, ActionForm form,</p><p> HttpServletRequest request, HttpServletResponse response) throws Exception {</p&g
110、t;<p> //接收要取消的訂單號</p><p> long order_form_id=0;</p><p><b> try{</b></p><p> order_form_id=Long.parseLong(request.getParameter("order_form_id"));<
111、;/p><p> }catch(Exception e){</p><p> e.printStackTrace();</p><p><b> }</b></p><p><b> //取消訂單</b></p><p> orderFormOPBean orderFo
112、rmOP=new orderFormOPBean();</p><p> orderFormOP.deleteOrderForm(order_form_id);</p><p> return mapping.findForward("orderForm"); </p><p><b> }</b></p>
113、;<p><b> }</b></p><p><b> //用戶登錄表單類</b></p><p> public class userLoginForm extends ActionForm{</p><p> String user_name=null;</p><p>
114、 String user_password=null;</p><p> String certCode=null;</p><p> //重置所有屬性的值</p><p> public void reset(ActionMapping mapping, HttpServletRequest request) {</p><p>
115、 user_name=null;</p><p> certCode=null;</p><p> user_password=null;</p><p><b> }</b></p><p><b> //驗(yàn)證屬性的值</b></p><p> public Ac
116、tionErrors validate(ActionMapping mapping, HttpServletRequest request) {</p><p> ActionErrors errors=new ActionErrors();</p><p><b> //用戶名校驗(yàn)</b></p><p> if(user_name==
117、null||user_name.trim().length()<1)</p><p> errors.add("username",new ActionMessage("user.userNameNull"));</p><p><b> //用戶密碼校驗(yàn)</b></p><p> if(us
118、er_password==null||user_password.trim().length()<1)</p><p> errors.add("user_password",new ActionMessage("user.userPasswordNull"));</p><p><b> //驗(yàn)證碼檢驗(yàn)</b><
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- jsp網(wǎng)上商城系統(tǒng)
- jsp網(wǎng)上商城畢業(yè)設(shè)計(jì)
- 網(wǎng)上商城系統(tǒng)(jsp+mysql)
- 基于java與jsp下的網(wǎng)上商城設(shè)計(jì)
- 基于java與jsp下的網(wǎng)上商城設(shè)計(jì)
- 基于jsp的網(wǎng)上商城系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) 上
- 網(wǎng)上商城畢業(yè)論文
- 網(wǎng)上商城畢業(yè)論文
- ssh框架下基于jsp網(wǎng)上商城系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
- 網(wǎng)上商城系統(tǒng)論文--論文
- 基于web的網(wǎng)上商城設(shè)計(jì)與實(shí)現(xiàn)論文
- 網(wǎng)上商城畢業(yè)設(shè)計(jì)論文
- 網(wǎng)上商城系統(tǒng)畢業(yè)論文
- android網(wǎng)上商城——畢業(yè)論文
- 網(wǎng)上商城系統(tǒng) 畢業(yè)論文
- 網(wǎng)上商城策劃
- 網(wǎng)上商城系統(tǒng)畢業(yè)論文
- 網(wǎng)上商城系統(tǒng)論文--論文.doc
- 網(wǎng)上商城系統(tǒng)
- 網(wǎng)上商城畢業(yè)論文--網(wǎng)上購物商城設(shè)計(jì)和實(shí)現(xiàn)
評論
0/150
提交評論