基于javascript的男裝售賣(mài)網(wǎng)站的設(shè)計(jì)與實(shí)現(xiàn)——畢業(yè)論文_第1頁(yè)
已閱讀1頁(yè),還剩30頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  綏化學(xué)院</b></p><p>  本科畢業(yè)設(shè)計(jì)(論文)</p><p>  基于JavaScript的男裝售賣(mài)網(wǎng)站的設(shè)計(jì)與實(shí)現(xiàn)</p><p>  學(xué)生姓名: </p><p>  學(xué) 號(hào): </p><p>

2、;  專(zhuān) 業(yè): 計(jì)算機(jī)科學(xué)與技術(shù) </p><p>  年 級(jí): </p><p>  指導(dǎo)教師: </p><p><b>  摘 要</b></p><p>  如今,計(jì)算機(jī)和互聯(lián)網(wǎng)與人們的生活息息相關(guān),網(wǎng)上購(gòu)物這種方式已經(jīng)被人們所熟知,網(wǎng)上支付不

3、斷完善與物流行業(yè)的快速發(fā)展,用戶(hù)能夠在家購(gòu)買(mǎi)商品,節(jié)省了大量的時(shí)間和金錢(qián),這種網(wǎng)購(gòu)方式越來(lái)越受大家的青睞。本男裝售賣(mài)網(wǎng)站是基于JavaScript技術(shù),基于B/S架構(gòu),同時(shí)使用Java技術(shù),后臺(tái)數(shù)據(jù)庫(kù)選用MySQL 的基礎(chǔ)上進(jìn)行開(kāi)發(fā)。主要實(shí)現(xiàn)用戶(hù)的網(wǎng)上購(gòu)物功能。該商城系統(tǒng)頁(yè)面簡(jiǎn)潔,操作簡(jiǎn)單,便于使用。用戶(hù)可以在商城挑選和搜索自己喜歡的商品,后臺(tái)管理員可以管理整個(gè)商城的商品與用戶(hù)的信息。</p><p>  關(guān)鍵詞

4、:JavaScript;Java;電子商城</p><p><b>  Abstract</b></p><p>  Nowadays, the computer and the Internet and people's lives are closely related to online shopping this way has been well k

5、nown, online payment and improve the rapid development of the logistics industry, users can buy goods at home, saving a lot of time and money, this online shopping Way more and more by everyone's favor. The men's

6、 sales site is based on JavaScript technology, based on B / S architecture, while using Java technology, background database selection based on the development of MyS</p><p>  Keywords: JavaScript; Java; ele

7、ctronic mall</p><p><b>  目 錄</b></p><p><b>  摘 要I</b></p><p>  AbstractII</p><p>  第1章 緒 論1</p><p>  1.1 背景及意義1</p>&

8、lt;p>  1.2 國(guó)內(nèi)外發(fā)展現(xiàn)狀1</p><p>  第2章 需求分析2</p><p>  2.1 系統(tǒng)功能分析2</p><p>  2.2 可行性分析2</p><p>  2.3 開(kāi)發(fā)環(huán)境3</p><p>  第3章 系統(tǒng)設(shè)計(jì)4</p><p>  3.1 系統(tǒng)

9、結(jié)構(gòu)設(shè)計(jì)4</p><p>  3.2 功能模塊設(shè)計(jì)5</p><p>  3.3 `E-R圖設(shè)計(jì)5</p><p>  3.4 數(shù)據(jù)庫(kù)設(shè)計(jì)6</p><p>  第4章 系統(tǒng)詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)9</p><p>  4.1 系統(tǒng)前臺(tái)設(shè)計(jì)9</p><p>  4.2 后臺(tái)管理模塊設(shè)計(jì)

10、12</p><p>  第5章 系統(tǒng)測(cè)試15</p><p>  5.1 測(cè)試目的15</p><p>  5.2 動(dòng)態(tài)測(cè)試15</p><p>  5.3 測(cè)試用例18</p><p><b>  結(jié) 論19</b></p><p><b>  參

11、考文獻(xiàn)20</b></p><p>  附錄 部分源代碼21</p><p><b>  致 謝27</b></p><p><b>  第1章 緒 論</b></p><p><b>  1.1 背景及意義</b></p><p>

12、;  電腦和互聯(lián)網(wǎng)的普及,使人們的生活發(fā)生了翻天覆地的改變?;ヂ?lián)網(wǎng)作為當(dāng)今社會(huì)信息傳遞的媒介,能夠?yàn)樾畔⒔涣魈峁└颖憬荨?zhǔn)確的渠道,滿(mǎn)足了互聯(lián)網(wǎng)時(shí)代的需求?;ヂ?lián)網(wǎng)對(duì)于當(dāng)今社會(huì)來(lái)說(shuō),已經(jīng)不僅僅是簡(jiǎn)單的信息傳遞的媒介,同時(shí)也成為了一種網(wǎng)絡(luò)生活,如同互聯(lián)網(wǎng)經(jīng)濟(jì)一樣,改變了傳統(tǒng)人民的生活方式?;ヂ?lián)網(wǎng)已經(jīng)成為社會(huì)不可或缺的一種工具,人們的衣食住行都已經(jīng)離不開(kāi)互聯(lián)網(wǎng)的幫助。男裝售賣(mài)系統(tǒng),從結(jié)構(gòu)上講可以分為兩個(gè)部分:前臺(tái)用戶(hù)端和后臺(tái)管理端。主要涉及

13、到前、后臺(tái)的網(wǎng)頁(yè)設(shè)計(jì),以及與數(shù)據(jù)庫(kù)相關(guān)的操作[]。</p><p>  因此,本系統(tǒng)基于JavaScript和MySQL數(shù)據(jù)庫(kù)設(shè)計(jì)的這款男裝銷(xiāo)售網(wǎng)站,既可以避免地區(qū)局限性,又可以就近進(jìn)行商品的配送,送貨時(shí)間大大縮短。</p><p>  1.2 國(guó)內(nèi)外發(fā)展現(xiàn)狀</p><p>  在國(guó)內(nèi),電子商務(wù)的發(fā)展也很迅速。在上個(gè)世紀(jì)九十年代,國(guó)內(nèi)的商業(yè)企業(yè)就開(kāi)始涉足電子商務(wù)領(lǐng)

14、域,并推出了網(wǎng)上購(gòu)物的服務(wù)。經(jīng)過(guò)十幾年的發(fā)展,隨著我國(guó)網(wǎng)民人數(shù)的急劇上升,電子商務(wù)的交易量也呈幾何倍數(shù)上升?,F(xiàn)在,我國(guó)的網(wǎng)民人數(shù)早已超過(guò)七億,而電子商務(wù)的交易量,僅2016年“11·11”淘寶商城一天的交易量,就突破了一千二百億[]。 </p><p>  電子商務(wù)蘊(yùn)含著巨大的商機(jī),吸引了全球的關(guān)注。作為互聯(lián)網(wǎng)科技的先驅(qū)者,北美憑借著發(fā)達(dá)的技術(shù)和龐大的經(jīng)濟(jì)實(shí)力在全世界電子商務(wù)領(lǐng)域占得先機(jī)。我們熟知的亞

15、馬遜圖書(shū)網(wǎng)站,就是全球電子商城領(lǐng)取的領(lǐng)頭羊[],這個(gè)以世界上最長(zhǎng)河流為名的網(wǎng)絡(luò)巨鱷,擺脫了零售企業(yè)的舊框架。從亞馬遜的發(fā)展史可以看出,它的發(fā)展迅速。</p><p><b>  第2章 需求分析</b></p><p>  2.1 系統(tǒng)功能分析</p><p>  系統(tǒng)采用現(xiàn)在應(yīng)用廣泛的JavaScript + MySQL數(shù)據(jù)庫(kù)的架構(gòu)實(shí)現(xiàn)的,系

16、統(tǒng)分為前臺(tái)用戶(hù)端和后臺(tái)管理端。</p><p>  2.1.1 前臺(tái)會(huì)員模塊</p><p>  用戶(hù)模塊:其中包括用戶(hù)注冊(cè)、登錄、注銷(xiāo)等功能。</p><p>  商品展示模塊:其中包括分類(lèi)瀏覽、商品查看、按照商品名檢索等功能。 </p><p>  購(gòu)物車(chē)模塊:該模塊實(shí)現(xiàn)商品的添加、數(shù)量修改,商品刪除、結(jié)算。 </p>&

17、lt;p>  2.1.2 后臺(tái)管理模塊</p><p>  管理員模塊:管理員登錄、修改和安全退出。</p><p>  用戶(hù)管理模塊:主要實(shí)現(xiàn)查看用戶(hù)信息。</p><p>  商品管理模塊:主要實(shí)現(xiàn)查看商品列表、商品詳細(xì)信息、商品添加、修改以及刪除。 </p><p>  欄目管理模塊:首頁(yè)欄目的添加、修改以及刪除。</p&

18、gt;<p><b>  2.2 可行性分析</b></p><p>  2.2.1 JavaScript技術(shù)</p><p>  JavaScript語(yǔ)言是一個(gè)被廣泛應(yīng)用在客戶(hù)端網(wǎng)絡(luò)腳本中的語(yǔ)言[]。它的解釋器被稱(chēng)為JavaScript引擎,為瀏覽器的一部分,廣泛用于客戶(hù)端的腳本語(yǔ)言,最早是在HTML(標(biāo)準(zhǔn)通用標(biāo)記語(yǔ)言下的一個(gè)應(yīng)用)網(wǎng)頁(yè)上使用,用來(lái)給H

19、TML網(wǎng)頁(yè)增加動(dòng)態(tài)功能。JavaScript的優(yōu)點(diǎn)是讓網(wǎng)頁(yè)更活靈活現(xiàn)能補(bǔ)助與網(wǎng)頁(yè)實(shí)現(xiàn)各種功能和穿插。但JavaScript的局限性是過(guò)于簡(jiǎn)單。</p><p>  2.2.2 MySQL技術(shù)</p><p>  MySQL是一個(gè)關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),是最流行的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)之一,在WEB應(yīng)用方面,MySQL是最好的RDBMS (Relational Database Manageme

20、nt System,關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)) 應(yīng)用軟件。關(guān)系數(shù)據(jù)庫(kù)將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個(gè)大倉(cāng)庫(kù)內(nèi),這樣就增加了速度并提高了靈活性[5]。</p><p>  2.2.3 技術(shù)可行性</p><p>  基于JavaScript + MySQL結(jié)構(gòu),這種技術(shù)架構(gòu)已經(jīng)非常成熟,預(yù)計(jì)利用現(xiàn)有技術(shù)可以完成項(xiàng)目各項(xiàng)功能。網(wǎng)站上運(yùn)用JavaScript特效技術(shù),使平臺(tái)更為美觀、生

21、動(dòng)。MySQL數(shù)據(jù)庫(kù)其體積小、速度快、擁有成本低,開(kāi)發(fā)源代碼,免費(fèi)。</p><p><b>  2.3 開(kāi)發(fā)環(huán)境</b></p><p><b>  1)硬件環(huán)境要求:</b></p><p>  操作系統(tǒng): Windows8</p><p>  處理器:Intel酷睿i5 4200H</p

22、><p>  系統(tǒng)類(lèi)型:64位操作系統(tǒng)</p><p><b>  2)軟件環(huán)境要求:</b></p><p>  開(kāi)發(fā)平臺(tái):Ecilpse</p><p>  開(kāi)發(fā)語(yǔ)言:JavaScript、Java、HTML5、CSS3</p><p><b>  數(shù)據(jù)庫(kù):MySQL</b>

23、</p><p><b>  第3章 系統(tǒng)設(shè)計(jì)</b></p><p>  3.1 系統(tǒng)結(jié)構(gòu)設(shè)計(jì)</p><p>  根據(jù)系統(tǒng)要求購(gòu)物網(wǎng)站從結(jié)構(gòu)上具有劃分為前臺(tái)、后臺(tái)和數(shù)據(jù)庫(kù)三個(gè)部分。</p><p>  在系統(tǒng)前臺(tái)設(shè)計(jì)中,主要提供網(wǎng)站的主頁(yè)顯示,包括商品信息等內(nèi)容的顯示,并提供商品訂購(gòu)功能。用戶(hù)可以在頁(yè)面上搜索商品,并

24、點(diǎn)擊查看商品的具體信息。在系統(tǒng)的整個(gè)設(shè)計(jì)方案中,數(shù)據(jù)庫(kù)的設(shè)計(jì)也是很重要的一個(gè)組成部分,但只有管理員才具有在后臺(tái)操作數(shù)據(jù)庫(kù)的權(quán)限。前臺(tái)部分與系統(tǒng)的大部分功能模塊都有聯(lián)系,所涉及到的數(shù)據(jù)也很多,比如商品信息、用戶(hù)登錄信息等。前臺(tái)結(jié)構(gòu)如圖3—1所示。</p><p>  系統(tǒng)后臺(tái)部分的設(shè)計(jì),主要是圍繞網(wǎng)站信息的管理和后臺(tái)數(shù)據(jù)的維護(hù)。網(wǎng)站前臺(tái)頁(yè)面上的產(chǎn)品信息,都是通過(guò)后臺(tái)發(fā)布和更新的。系統(tǒng)后臺(tái)的功能設(shè)計(jì),關(guān)系到系統(tǒng)操作的

25、流程和便利性。后臺(tái)結(jié)構(gòu)如圖3—2所示。</p><p>  圖3—1 后臺(tái)結(jié)構(gòu)圖</p><p>  3.2 功能模塊設(shè)計(jì)</p><p>  在進(jìn)行系統(tǒng)功能模塊設(shè)計(jì)時(shí),首先根據(jù)業(yè)務(wù)類(lèi)型劃分出子系統(tǒng),在根據(jù)子系統(tǒng)的特點(diǎn),劃分出各個(gè)功能模塊。模塊具有I/O接口、邏輯處理能力,并能夠?qū)?shù)據(jù)進(jìn)行相應(yīng)的處理(比如存儲(chǔ)、計(jì)算等)。通過(guò)采用結(jié)構(gòu)化的設(shè)計(jì)方法,可以依據(jù)系統(tǒng)的功能特

26、點(diǎn),劃分出不同的功能模塊。系統(tǒng)功能模塊的劃分,有助于系統(tǒng)的整體設(shè)計(jì),同時(shí)也有利于提升系統(tǒng)開(kāi)發(fā)的效率,以及方便系統(tǒng)的維護(hù)。</p><p>  3.3 E-R圖設(shè)計(jì)</p><p>  E-R圖也稱(chēng)實(shí)體-聯(lián)系圖(Entity Relationship Diagram),提供了表示實(shí)體類(lèi)型、屬性和聯(lián)系的方法,用來(lái)描述現(xiàn)實(shí)世界的概念模型。它是描述現(xiàn)實(shí)世界概念結(jié)構(gòu)模型的有效方法,用矩形表示實(shí)體型,

27、矩形框內(nèi)寫(xiě)明實(shí)體名,用橢圓表示實(shí)體的屬性,并用無(wú)向邊將其與相應(yīng)的實(shí)體型連接起來(lái)。</p><p>  1)用戶(hù)信息的實(shí)體圖</p><p>  用戶(hù)信息主要具有用戶(hù)編號(hào)、用戶(hù)名、密碼等屬性,如圖3—2所示。</p><p>  圖3—2 用戶(hù)信息圖</p><p>  2)商品信息的實(shí)體圖</p><p>  商品信息

28、主要具有商品編號(hào)、商品名稱(chēng)、商品簡(jiǎn)介、原價(jià)、現(xiàn)價(jià)、圖片等屬性,如圖3—3所示。</p><p>  圖3—3 商品信息圖</p><p><b>  3.4 數(shù)據(jù)庫(kù)設(shè)計(jì)</b></p><p>  數(shù)據(jù)庫(kù)設(shè)計(jì)是支撐一個(gè)項(xiàng)目的根本。數(shù)據(jù)庫(kù)設(shè)計(jì)涉及到系統(tǒng)設(shè)計(jì)的許多方面,甚至可以影響到一個(gè)系統(tǒng)的設(shè)計(jì)是否成功。購(gòu)物網(wǎng)站系統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì)要包含如下幾方面:

29、</p><p>  1)明確數(shù)據(jù)庫(kù)設(shè)計(jì)的需求,是數(shù)據(jù)庫(kù)設(shè)計(jì)的第一步。只有明確了系統(tǒng)需求、用戶(hù)需求,才能把握好數(shù)據(jù)庫(kù)設(shè)計(jì)的方向。 </p><p>  2)數(shù)據(jù)建模。進(jìn)行數(shù)據(jù)庫(kù)的建模,需要使用到相應(yīng)的數(shù)據(jù)建模工具。 </p><p>  3)數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)。結(jié)構(gòu)設(shè)計(jì)是對(duì)數(shù)據(jù)模型進(jìn)行轉(zhuǎn)化的必要過(guò)程,能夠?qū)?shù)據(jù)模型與業(yè)務(wù)流程相結(jié)合。 </p><

30、;p>  4)數(shù)據(jù)庫(kù)的設(shè)計(jì)實(shí)現(xiàn)與維護(hù)。</p><p>  數(shù)據(jù)庫(kù)的設(shè)計(jì)實(shí)現(xiàn),與系統(tǒng)前后臺(tái)部分的功能模塊的設(shè)計(jì)與實(shí)現(xiàn)是密不可分的。對(duì)數(shù)據(jù)的處理,對(duì)信息的展示,是網(wǎng)站設(shè)計(jì)的核心部分,因此數(shù)據(jù)庫(kù)的設(shè)計(jì)也是整個(gè)網(wǎng)站系統(tǒng)設(shè)計(jì)的關(guān)鍵所在。</p><p>  3.4.1數(shù)據(jù)庫(kù)信息</p><p>  數(shù)據(jù)庫(kù)信息就是所需要表格內(nèi)信息,主要運(yùn)用關(guān)系數(shù)據(jù)庫(kù),因?yàn)殛P(guān)系數(shù)據(jù)庫(kù)中可

31、以直觀看出數(shù)據(jù)與數(shù)據(jù)之間、數(shù)據(jù)與表格直接、表格與表格之間的關(guān)系。</p><p>  1)用戶(hù)信息表(user)</p><p>  用戶(hù)信息表用來(lái)管理用戶(hù)信息主要存儲(chǔ)用戶(hù)索引、登錄名和用戶(hù)密碼。其結(jié)構(gòu)如表3—1所示。</p><p>  表3—1用戶(hù)信息表(user)</p><p>  2)首頁(yè)信息表(index_list)</p&

32、gt;<p>  首頁(yè)信息表用來(lái)存儲(chǔ)首頁(yè)信息,主要有商品索引、層級(jí)區(qū)分、商品圖片和標(biāo)示等功能。其結(jié)構(gòu)如表3—2所示。</p><p>  表3—2首頁(yè)信息表(index_list)</p><p>  3)購(gòu)物車(chē)信息表(shopping_cart)</p><p>  購(gòu)物車(chē)信息表用來(lái)存儲(chǔ)購(gòu)物車(chē)信息,主要有商品索引、商品編號(hào)、商品圖片、商品名稱(chēng)、數(shù)量、

33、價(jià)格和用戶(hù)。其結(jié)構(gòu)如表3—3所示。</p><p>  表3—3購(gòu)物車(chē)信息表(shopping_cart)</p><p>  4)通用信息表(shopping_cart)</p><p>  通用信息表主要用于存儲(chǔ)各頁(yè)面商品信息,主要有商品索引、商品編號(hào)、商品圖片、商品價(jià)格和商品標(biāo)簽。其結(jié)構(gòu)如表3—4所示。</p><p>  表3—4通用

34、信息表(index_list)</p><p>  第4章 系統(tǒng)詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)</p><p>  4.1 系統(tǒng)前臺(tái)設(shè)計(jì)</p><p>  4.2.1 首頁(yè)模塊的實(shí)現(xiàn)</p><p>  系統(tǒng)主頁(yè)面上使用了一些控件,比如輪播圖,以?xún)?yōu)化頁(yè)面的顯示效果。在首頁(yè)的頂端有導(dǎo)航條、用戶(hù)登錄入口、系統(tǒng)公告等,在頁(yè)面下方有商品分類(lèi)等模塊。在頁(yè)面正中是人氣

35、商品的展示區(qū)。如圖4—1所示。</p><p><b>  圖4-1 主頁(yè)信息</b></p><p>  4.2.2 用戶(hù)登錄/注冊(cè)模塊的實(shí)現(xiàn)</p><p>  用戶(hù)登錄頁(yè)面可以選擇用戶(hù)名和密碼方式登錄,如圖4—2所示。</p><p><b>  圖4-2 登錄信息</b></p>

36、<p>  用戶(hù)注冊(cè)頁(yè)面必須使用手機(jī)號(hào)注冊(cè),填寫(xiě)圖形驗(yàn)證碼后收取短信驗(yàn)證碼后設(shè)置登錄密碼。如圖4—3所示。</p><p><b>  圖4-3 注冊(cè)信息</b></p><p>  4.2.3 購(gòu)物車(chē)模塊的實(shí)現(xiàn)</p><p>  購(gòu)物車(chē)主要將用戶(hù)所挑選商品集中結(jié)算,其具有包含用戶(hù)所挑選商品名稱(chēng)、數(shù)量、價(jià)格、增減數(shù)量和刪除商品等

37、功能,增減購(gòu)物車(chē)內(nèi)商品購(gòu)物車(chē)角標(biāo)數(shù)量會(huì)動(dòng)態(tài)變化,還可以點(diǎn)擊商品進(jìn)入詳情頁(yè)面繼續(xù)購(gòu)買(mǎi),購(gòu)物車(chē)頁(yè)面,如圖4—4所示。</p><p>  圖4-4 購(gòu)物車(chē)信息</p><p>  4.2.4 商品搜索模塊的實(shí)現(xiàn)</p><p>  商品搜索主要通過(guò)關(guān)鍵字來(lái)搜索,搜索的關(guān)鍵字可以是商品名稱(chēng)或者商品名稱(chēng)中的某一個(gè)詞。如圖4—5所示。</p><p>

38、  圖4-5 搜索頁(yè)面信息</p><p>  4.2.5 列表分頁(yè)展示模塊的實(shí)現(xiàn)</p><p>  列表分類(lèi)主要展示商品分類(lèi)頁(yè)表信息可以點(diǎn)擊頁(yè)面下方的數(shù)字進(jìn)行下一頁(yè)切換。如圖4—6所示。</p><p>  圖4-6 分類(lèi)頁(yè)面信息</p><p>  4.2.6 商品詳情模塊的實(shí)現(xiàn)</p><p>  商品詳情頁(yè)主

39、要有商品信息、價(jià)格、商品圖片、商品細(xì)節(jié)放大等功能顯示,如圖4—7所示。</p><p>  圖4-7 詳情頁(yè)面信息</p><p>  4.2 后臺(tái)管理模塊設(shè)計(jì)</p><p>  4.2.1 后臺(tái)登錄模塊的實(shí)現(xiàn)</p><p>  后臺(tái)管理中心登錄模塊主要有管理員帳號(hào)、密碼和圖像驗(yàn)證碼登錄。如圖4—8所示。</p><p

40、>  圖4-8 后臺(tái)登錄信息</p><p>  4.2.2 后臺(tái)修改密碼模塊的實(shí)現(xiàn)</p><p>  后臺(tái)修改密碼主要為管理員提供修改密碼功能,其頁(yè)面主要有管理員帳號(hào)、原始密碼、新密碼和二次確認(rèn)密碼組成。如圖4—9所示。</p><p>  圖4-9 后臺(tái)修改密碼信息</p><p>  4.2.3 后臺(tái)用戶(hù)信息模塊的實(shí)現(xiàn)</

41、p><p>  后臺(tái)用戶(hù)管理主要為管理員提供顯示網(wǎng)站注冊(cè)用戶(hù)的序號(hào)、用戶(hù)名和密碼。以方便管理員對(duì)于用戶(hù)的管理。如圖4—10所示。</p><p>  圖4-10 后臺(tái)用戶(hù)信息</p><p>  4.2.4 后臺(tái)商品信息模塊的實(shí)現(xiàn)</p><p>  后臺(tái)商品信息主要為管理員提供網(wǎng)站商品的修改和刪除功能,以方便管理員對(duì)于網(wǎng)站商品的管理。如圖4—1

42、1所示。</p><p>  圖4-11 后臺(tái)商品信息</p><p>  4.3.5 后臺(tái)欄目管理模塊的實(shí)現(xiàn)</p><p>  后臺(tái)欄目管理主要為管理員提供改變頁(yè)面欄目信息功能,各欄目名稱(chēng)、修改和刪除,在添加新欄目時(shí)要輸入欄目名稱(chēng)、欄目圖片、英文標(biāo)題、關(guān)鍵字標(biāo)題和欄目關(guān)鍵字等信息。如圖4—12所示。</p><p>  圖4-12 欄目管

43、理信息</p><p><b>  第5章 系統(tǒng)測(cè)試</b></p><p><b>  5.1 測(cè)試目的</b></p><p>  軟件測(cè)試,是保證軟件運(yùn)行過(guò)程的可靠性、安全性的重要手段,在軟件未正式投入使用之前,需要對(duì)軟件編制過(guò)程中的需求分析、系統(tǒng)設(shè)計(jì)及編碼環(huán)節(jié)等進(jìn)行嚴(yán)格的、科學(xué)的二次審查。軟件測(cè)試的流程需要立足于軟

44、件開(kāi)發(fā)的流程及相關(guān)的要求,建立一定數(shù)量的測(cè)試用例。通過(guò)運(yùn)行測(cè)試用例,檢測(cè)出軟件設(shè)計(jì)中的弊端,從而進(jìn)行一定的軟件完善。進(jìn)行軟件測(cè)試的目的即最大可能的發(fā)現(xiàn)軟件設(shè)計(jì)過(guò)程中的不足,在系統(tǒng)正式運(yùn)行前進(jìn)行改善。</p><p>  軟件測(cè)試的目標(biāo)主要有以下三點(diǎn): </p><p>  1)最大限度的發(fā)現(xiàn)系統(tǒng)中出現(xiàn)的不足,進(jìn)而改正、優(yōu)化;</p><p>  2)優(yōu)良的測(cè)試方案不

45、僅能找到系統(tǒng)中出現(xiàn)的錯(cuò)誤,還可能是首次發(fā)現(xiàn)錯(cuò)誤的測(cè)試方案。</p><p>  3)成功的測(cè)試指的是能夠找到從未被發(fā)現(xiàn)的弊端的測(cè)試[7]。</p><p><b>  5.2 動(dòng)態(tài)測(cè)試</b></p><p>  動(dòng)態(tài)測(cè)試主要分為白盒測(cè)試(結(jié)構(gòu)測(cè)試)與黑盒測(cè)試(功能測(cè)試)。</p><p>  1)白盒測(cè)試,是把測(cè)試對(duì)象

46、看做一個(gè)透明的盒子,它允許測(cè)試人員利用程序內(nèi)部的邏輯結(jié)構(gòu)及有關(guān)信息,設(shè)計(jì)或選擇測(cè)試用例,對(duì)程序所有邏輯路徑進(jìn)行測(cè)試。白盒測(cè)試的主要測(cè)量指標(biāo)有分支覆蓋率,語(yǔ)句覆蓋率和過(guò)程函數(shù)覆蓋率等。</p><p>  2)黑盒測(cè)試,是把測(cè)試對(duì)象看做一個(gè)黑盒子,測(cè)試人員完全不考慮程序內(nèi)部的邏輯結(jié)構(gòu)和內(nèi)部特性,只依據(jù)程序的需求規(guī)格說(shuō)明書(shū),檢查程序的功能是否符合它的功能說(shuō)明。黑盒測(cè)試的測(cè)量指標(biāo)主要是通過(guò)檢查被測(cè)軟件的輸出結(jié)果是否與預(yù)

47、期的設(shè)想的狀態(tài)一致[8]。</p><p>  本次測(cè)試主要針對(duì)用戶(hù)注冊(cè)過(guò)程進(jìn)行了詳細(xì)的黑盒測(cè)試,用戶(hù)注冊(cè)測(cè)試用例表,如表5—1所示。</p><p>  表5—1 用戶(hù)注冊(cè)測(cè)試用例</p><p>  在注冊(cè)過(guò)程中各驗(yàn)證項(xiàng)內(nèi)容須符合要求,輸入內(nèi)容不符合要求時(shí)會(huì)做出相應(yīng)的錯(cuò)誤提示,注冊(cè)頁(yè)面失敗測(cè)試結(jié)果,如圖5—1所示。</p><p>  圖

48、5-1 注冊(cè)頁(yè)面失敗測(cè)試用例</p><p>  在注冊(cè)過(guò)程中各驗(yàn)證項(xiàng)內(nèi)容符合要求時(shí)可以進(jìn)行注冊(cè),注冊(cè)頁(yè)面成功測(cè)試結(jié)果,如圖5—2所示。</p><p>  圖5-2 注冊(cè)頁(yè)面成功測(cè)試用例</p><p>  注冊(cè)成功后跳轉(zhuǎn)登錄頁(yè)面,如圖5—3所示。</p><p>  圖5-3 注冊(cè)頁(yè)面成功跳轉(zhuǎn)</p><p>&l

49、t;b>  5.3 測(cè)試用例</b></p><p>  通過(guò)對(duì)商城的多方面測(cè)試,前臺(tái)用戶(hù)系統(tǒng)沒(méi)有漏洞,可以進(jìn)行登錄/注冊(cè)、首頁(yè)連接其他頁(yè)面、列表頁(yè)實(shí)現(xiàn)功能、詳情頁(yè)正確顯示和購(gòu)物車(chē)的增、刪、改。都可以正確生效。各頁(yè)面加載速度達(dá)到預(yù)期效果,無(wú)卡頓。</p><p><b>  結(jié) 論</b></p><p>  本網(wǎng)站基本可以

50、滿(mǎn)足用戶(hù)對(duì)商品的需求,整個(gè)網(wǎng)頁(yè)以簡(jiǎn)潔風(fēng)格為主,頁(yè)面操作便捷,會(huì)讓用戶(hù)準(zhǔn)確找到自己需要的商品。開(kāi)發(fā)階段運(yùn)用了一些框架,實(shí)現(xiàn)了一些交互。主要運(yùn)用Javascript和后臺(tái)數(shù)據(jù)庫(kù)連接等關(guān)鍵技術(shù)。線(xiàn)上購(gòu)物網(wǎng)站無(wú)論在開(kāi)發(fā)階段,還是日后的維護(hù)中,都要嚴(yán)格要求,以保證網(wǎng)站的服務(wù)質(zhì)量。由于系統(tǒng)還在初級(jí)階段,還存在一些不足之處,例如安全性能不夠完善,缺少必要的加密系統(tǒng)等。由于技術(shù)原因,待日后時(shí)間充足時(shí)完善其他功能。</p><p>

51、;<b>  參考文獻(xiàn)</b></p><p>  [1] 陳方岳,基于J2EE的鍍鋅鋼管銷(xiāo)售管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) [D],廈門(mén)大學(xué),2015.</p><p>  [2] 易揚(yáng),基于ASP.NET的網(wǎng)上購(gòu)物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) [D],電子科技大學(xué),2016.</p><p>  [3] 甘亞麗,淺談我國(guó)移動(dòng)電子商務(wù)的發(fā)展 [J],商情,2014

52、:50-51.</p><p>  [4] `Sun Microsystems , Netscape Inc, Netscape and Sun announce JavaScript [M],The open,cross-platform object scripting language for enterprise networks and the Internet 2010.</p><

53、;p>  [5] 王國(guó)強(qiáng),郇濤,姜明,淺談網(wǎng)站建設(shè)相關(guān)技術(shù) [J],消費(fèi)電子,2013.</p><p>  [6] 陳頡,基于IOS系統(tǒng)購(gòu)物型App的設(shè)計(jì) [J],辦公自動(dòng)化,2016:42-44.</p><p>  [7] 陳會(huì)霞 周利華,關(guān)于軟件測(cè)試的淺議 [J],中國(guó)測(cè)試技術(shù),2005:57-58.</p><p>  [8] 喬克婷. 基于Test

54、Bed的軟件動(dòng)態(tài)測(cè)試分析[J],經(jīng)營(yíng)管理者,2017:235-236.</p><p><b>  附錄I</b></p><p><b>  部分源代碼</b></p><p><b>  登錄/注冊(cè)</b></p><p>  * @RequestMapping(value

55、 = "xxx", method="GET",params = "method=oo")</p><p><b>  */</b></p><p>  @RequestMapping (value="registerUser", method = RequestMethod.GET)<

56、;/p><p>  @ResponseBody</p><p>  public String register(HttpServletRequest request,String name,String pass) throws Exception{</p><p><b>  try{</b></p><p>  Str

57、ing message = "000000";</p><p>  JSONArray jsonArr = new JSONArray();</p><p>  JSONObject returnMessage = new JSONObject();</p><p>  List<User> user1 = userRepositor

58、y.findAll();</p><p>  System.out.println(user1);</p><p>  JSONArray json = JSONArray.fromObject(user1); </p><p>  for(int i = 0;i < json.size();i++){</p><p>  JSONOb

59、ject jso = json.getJSONObject(i);</p><p>  if(jso.get("name").toString().equals(name.toString())){</p><p>  message = "111111";</p><p><b>  }</b><

60、/p><p><b>  }</b></p><p>  if(message.equals("000000")){</p><p>  User user = new User();</p><p>  user.setName(name);</p><p>  user.set

61、Password(pass);</p><p>  userRepository.save(user);</p><p><b>  }</b></p><p>  returnMessage.put("returnCode", message);</p><p>  jsonArr.add(retu

62、rnMessage);</p><p>  return mapper.writeValueAsString(jsonArr);</p><p>  }catch(Exception e){</p><p>  String message = "999999";</p><p>  JSONArray jsonArr

63、= new JSONArray();</p><p>  JSONObject returnMessage = new JSONObject();</p><p>  returnMessage.put("returnCode", message);</p><p>  jsonArr.add(returnMessage);</p>

64、<p>  return mapper.writeValueAsString(jsonArr);</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  /**</b></p><p><b>  *登陸

65、驗(yàn)證?</b></p><p><b>  * @return</b></p><p>  * @throws Exception</p><p><b>  */</b></p><p>  @RequestMapping(value="loginUser", me

66、thod = RequestMethod.GET)</p><p>  @ResponseBody</p><p>  public String login(HttpServletRequest request,String name,String pass) throws Exception {</p><p><b>  try{</b>

67、</p><p>  String message = "111111";</p><p>  //返回message</p><p>  JSONArray returnArr = new JSONArray();</p><p>  JSONObject returnMessage = new JSONObject()

68、;</p><p>  List<User> user = userRepository.findAll();</p><p>  JSONArray json = JSONArray.fromObject(user); </p><p>  for(int i = 0;i < json.size();i++){</p><p&

69、gt;  JSONObject jso = json.getJSONObject(i);</p><p>  if(jso.get("name").toString().equals(name.toString())&&jso.get("password").toString().equals(pass.toString())){</p>&l

70、t;p>  message = "000000";</p><p><b>  }</b></p><p><b>  }</b></p><p>  returnMessage.put("returnCode", message);</p><p> 

71、 returnArr.add(returnMessage);</p><p>  return mapper.writeValueAsString(returnArr);</p><p>  }catch(Exception e){</p><p>  String message = "999999";</p><p>

72、;  JSONArray returnArr = new JSONArray();</p><p>  JSONObject returnMessage = new JSONObject();</p><p>  returnMessage.put("returnCode", message);</p><p>  returnArr.add(r

73、eturnMessage);</p><p>  return mapper.writeValueAsString(returnArr);</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  向數(shù)據(jù)庫(kù)中插入數(shù)據(jù)</b>&l

74、t;/p><p>  @RequestMapping (value="registerUser", method = RequestMethod.GET)</p><p>  @ResponseBody</p><p>  public String register(HttpServletRequest request,String name,St

75、ring pass) throws Exception{</p><p><b>  try{</b></p><p>  String message = "000000";</p><p>  JSONArray jsonArr = new JSONArray();</p><p>  JSONO

76、bject returnMessage = new JSONObject();</p><p>  List<User> user1 = userRepository.findAll();</p><p>  JSONArray json = JSONArray.fromObject(user1); </p><p>  for(int i = 0;i

77、< json.size();i++){</p><p>  JSONObject jso = json.getJSONObject(i);</p><p>  if(jso.get("name").toString().equals(name.toString())){</p><p>  message = "111111&qu

78、ot;;</p><p><b>  }</b></p><p><b>  }</b></p><p>  if(message.equals("000000")){</p><p>  User user = new User();</p><p> 

79、 user.setName(name);</p><p>  user.setPassword(pass);</p><p>  userRepository.save(user);</p><p><b>  }</b></p><p>  returnMessage.put("returnCode"

80、;, message);</p><p>  jsonArr.add(returnMessage);</p><p>  return mapper.writeValueAsString(jsonArr);</p><p>  }catch(Exception e){</p><p>  String message = "999

81、999";</p><p>  JSONArray jsonArr = new JSONArray();</p><p>  JSONObject returnMessage = new JSONObject();</p><p>  returnMessage.put("returnCode", message);</p>

82、<p>  jsonArr.add(returnMessage);</p><p>  return mapper.writeValueAsString(jsonArr);</p><p><b>  }</b></p><p><b>  }</b></p><p><b>

83、;  刪除數(shù)據(jù)庫(kù)中數(shù)據(jù)</b></p><p>  @RequestMapping (value="deleteCart",method = RequestMethod.GET)</p><p>  @ResponseBody</p><p>  @Transactional</p><p>  public

84、String deleteCart(HttpServletRequest request,String catId,String user) throws Exception{</p><p><b>  try{</b></p><p>  catId = new String(catId.getBytes("ISO-8859-1"),"

85、;UTF-8");</p><p>  user = new String(user.getBytes("ISO-8859-1"),"UTF-8");</p><p>  shoppingCartRepository.deleteByCatIdAndUser(catId, user);</p><p>  Strin

86、g message = "000000";</p><p>  JSONArray jsonArr = new JSONArray();</p><p>  JSONObject returnMessage = new JSONObject();</p><p>  returnMessage.put("returnCode"

87、;, message);</p><p>  jsonArr.add(returnMessage);</p><p>  return mapper.writeValueAsString(jsonArr);</p><p>  }catch(Exception e){</p><p>  String message = "999

88、999";</p><p>  JSONArray jsonArr = new JSONArray();</p><p>  JSONObject returnMessage = new JSONObject();</p><p>  returnMessage.put("returnCode", message);</p>

89、<p>  jsonArr.add(returnMessage);</p><p>  return mapper.writeValueAsString(jsonArr);</p><p><b>  }</b></p><p><b>  }</b></p><p><b>

90、;  修改數(shù)據(jù)庫(kù)中數(shù)據(jù)</b></p><p>  @RequestMapping (value="updateCart",method = RequestMethod.GET)</p><p>  @ResponseBody</p><p>  @Transactional</p><p>  public

91、String updateCart(HttpServletRequest request,String catId,String num,String user) throws Exception{</p><p><b>  try{</b></p><p>  catId = new String(catId.getBytes("ISO-8859-1&q

92、uot;),"UTF-8");</p><p>  num = new String(num.getBytes("ISO-8859-1"),"UTF-8");</p><p>  user = new String(user.getBytes("ISO-8859-1"),"UTF-8");&

93、lt;/p><p>  shoppingCartRepository.updateByCatIdAndUser(num, catId, user);</p><p>  String message = "000000";</p><p>  JSONArray jsonArr = new JSONArray();</p><p

94、>  JSONObject returnMessage = new JSONObject();</p><p>  returnMessage.put("returnCode", message);</p><p>  jsonArr.add(returnMessage);</p><p>  return mapper.writeValu

95、eAsString(jsonArr);</p><p>  }catch(Exception e){</p><p>  String message = "999999";</p><p>  JSONArray jsonArr = new JSONArray();</p><p>  JSONObject retur

96、nMessage = new JSONObject();</p><p>  returnMessage.put("returnCode", message);</p><p>  jsonArr.add(returnMessage);</p><p>  return mapper.writeValueAsString(jsonArr);<

97、;/p><p><b>  }</b></p><p><b>  }</b></p><p><b>  查詢(xún)數(shù)據(jù)庫(kù)中數(shù)據(jù)</b></p><p>  @RequestMapping (value="findCart",method = RequestMeth

98、od.GET)</p><p>  @ResponseBody</p><p>  public String findCart(HttpServletRequest request,String user) throws Exception{</p><p><b>  try{</b></p><p>  List&

99、lt;ShoppingCart> shoppingCart = shoppingCartRepository.findAll();</p><p>  JSONArray json = JSONArray.fromObject(shoppingCart); </p><p>  JSONArray goodsArr = new JSONArray();</p><

100、p>  for(int i = 0;i < json.size();i++){</p><p>  JSONObject jso = json.getJSONObject(i);</p><p>  if(jso.get("user").toString().equals(user.toString())){</p><p>  go

101、odsArr.add(jso);</p><p><b>  }</b></p><p><b>  }</b></p><p>  return mapper.writeValueAsString(goodsArr);</p><p>  }catch(Exception e){</p>

102、;<p>  String message = "999999";</p><p>  JSONArray jsonArr = new JSONArray();</p><p>  JSONObject returnMessage = new JSONObject();</p><p>  returnMessage.put(&q

103、uot;returnCode", message);</p><p>  jsonArr.add(returnMessage);</p><p>  return mapper.writeValueAsString(jsonArr);</p><p><b>  }</b></p><p><b> 

104、 }</b></p><p><b>  致 謝</b></p><p>  六月,總是陽(yáng)光燦爛。六月,總要曲終人散。在論文完稿之際在此由衷的感謝指導(dǎo)老師的耐心指導(dǎo),無(wú)論是為人還是學(xué)習(xí),他總是我學(xué)習(xí)的楷模。在勞累的工作之余,悉心的對(duì)我的輔導(dǎo)與幫助。從論文的選題、開(kāi)題報(bào)告的撰寫(xiě)、資料的查找、到結(jié)構(gòu)的完善、都不厭其煩的給予我?guī)椭?,使我順利成文。時(shí)光荏苒,歲月

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論