版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(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> 題目: 基于Java的網(wǎng)上購物系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) </p><p> 學(xué)院: </p><p> 班級(jí): </p><p> 姓名: <
2、;/p><p> 指導(dǎo)教師: 職稱: </p><p> 完成日期: 2013 年 06 月 02 日</p><p> 基于Java的網(wǎng)上購物系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)</p><p> 摘要:隨著人們生活方式和消費(fèi)觀念的改變,網(wǎng)上購物憑借其簡(jiǎn)單、快捷等特點(diǎn)已被越來越多的人所接受。本論文主要論述的是基于
3、Java的網(wǎng)上購物系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)。該系統(tǒng)是針對(duì)人們網(wǎng)上購物的需求設(shè)計(jì)與實(shí)現(xiàn)的。主要功能是把商品的交易流程納入信息化管理。系統(tǒng)可分為前后臺(tái)兩部分,前臺(tái)主要實(shí)現(xiàn)登錄、注冊(cè)、搜索、購物車和支付等操作;后臺(tái)主要實(shí)現(xiàn)會(huì)員管理、商品管理、訂單管理和公告管理等。整個(gè)過程以MyEclipse為開發(fā)工具,在MySQL的支持下實(shí)現(xiàn)。系統(tǒng)界面采用JSP、CSS、JS、Ajax等技術(shù),使得網(wǎng)上購物變得簡(jiǎn)單、安全、快捷。</p><p>
4、 關(guān)鍵詞:Java;MySQL;JSP</p><p> 代寫論文請(qǐng)登錄:www.bysj360.com 專業(yè)代寫機(jī)械制造 電氣工程 汽車維修 空調(diào)制冷 材料工程 管理等專業(yè)畢業(yè)設(shè)計(jì)/畢業(yè)論文。加qq:60466738獲取更多論文。</p><p><b> 目 錄</b></p><p><b> 1 緒論1
5、</b></p><p> 1.1 課題的研究意義1</p><p> 1.2 本論文的目的、內(nèi)容及作者的主要貢獻(xiàn)1</p><p> 2 研究現(xiàn)狀及設(shè)計(jì)目標(biāo)1</p><p> 2.1 相近研究課題的特點(diǎn)及優(yōu)缺點(diǎn)分析1</p><p> 2.2 現(xiàn)行研究存在的問題及解決辦法2</
6、p><p> 2.3 本課題要采用的相關(guān)技術(shù)2</p><p> 3 要解決的幾個(gè)關(guān)鍵問題3</p><p> 3.1 研究設(shè)計(jì)中要解決的問題3</p><p> 3.2 具體實(shí)現(xiàn)中采用的關(guān)鍵技術(shù)及復(fù)雜性分析6</p><p> 4 系統(tǒng)設(shè)計(jì)及結(jié)構(gòu)7</p><p> 4.1
7、數(shù)據(jù)庫設(shè)計(jì)7</p><p> 4.2 系統(tǒng)結(jié)構(gòu)圖10</p><p> 5 系統(tǒng)實(shí)現(xiàn)技術(shù)10</p><p> 5.1 分模塊詳述系統(tǒng)各部分的實(shí)現(xiàn)方法10</p><p> 5.2 程序流程16</p><p> 6 性能測(cè)試與分析17</p><p> 6.1 測(cè)試實(shí)
8、例(測(cè)試集)的研究與選擇17</p><p> 6.2 測(cè)試環(huán)境17</p><p> 6.3 性能分析17</p><p><b> 7 結(jié)束語17</b></p><p><b> 參考文獻(xiàn)19</b></p><p><b> 1 緒論&l
9、t;/b></p><p> 1.1 課題的研究意義</p><p> 近年來,網(wǎng)絡(luò)技術(shù)迅猛發(fā)展,人類已經(jīng)進(jìn)入了信息化社會(huì)。隨著人們消費(fèi)觀念和生活方式的改變,網(wǎng)上購物憑借其簡(jiǎn)單、快捷的特點(diǎn)逐漸融入了人們的生活中適應(yīng)了當(dāng)今社會(huì)快節(jié)奏地生活,使人們足不出戶便可以方便快捷輕松地選購自己喜歡的商品。</p><p> 本系統(tǒng)是一種具有交互功能的商業(yè)信息系統(tǒng),方便
10、商家和用戶及時(shí)傳遞信息。為了利用Internet這個(gè)平臺(tái),實(shí)現(xiàn)一種網(wǎng)上購物的方式,其目的是方便廣大網(wǎng)友購物,讓網(wǎng)友足不出戶就可以逛商城買商品,為此構(gòu)建了基于Java的網(wǎng)上購物系統(tǒng)。</p><p> 1.2 本論文的目的、內(nèi)容及作者的主要貢獻(xiàn)</p><p> 1.論文的目的、內(nèi)容</p><p> 基于Java的網(wǎng)上購物系統(tǒng)是人們進(jìn)行網(wǎng)上交易的重要工具,用來
11、傳遞商品信息,同時(shí)也是可以管理商品和用戶的系統(tǒng)。本系統(tǒng)主要針對(duì)愛好網(wǎng)上購物的人群,利用網(wǎng)絡(luò)完成商品交易。本系統(tǒng)采用MVC設(shè)計(jì)模式,使用當(dāng)前最流行的SSH框架進(jìn)行開發(fā)。本系統(tǒng)可被簡(jiǎn)單地劃分為前臺(tái)和后臺(tái)兩部分。前臺(tái)服務(wù)于用戶,為其提供了瀏覽、注冊(cè)、登錄、購物車、查看訂單等功能;后臺(tái)服務(wù)于管理員,其職責(zé)在于對(duì)網(wǎng)站的維護(hù)和管理,對(duì)商品信息進(jìn)行增、刪、查、改等。也可以查看訂單信息,以便及時(shí)地出貨和退貨。管理員同時(shí)還能對(duì)已注冊(cè)用戶信息進(jìn)行管理。&l
12、t;/p><p><b> 2.主要貢獻(xiàn)</b></p><p> 對(duì)銷售者而言,網(wǎng)上購物系統(tǒng)具有很大的優(yōu)勢(shì),它可以不受時(shí)間和地理?xiàng)l件的制約,消費(fèi)者可以在任何時(shí)間、任何地點(diǎn)查看商品并進(jìn)行購買;不需要支付使用傳統(tǒng)的場(chǎng)地所產(chǎn)生的種種費(fèi)用,例如房租、水電費(fèi)、店面裝潢和各種管理費(fèi)用等;也不需要承擔(dān)實(shí)體店經(jīng)營可能帶來的風(fēng)險(xiǎn),比如遭受盜竊、人為破壞、自然災(zāi)害等。</p>
13、;<p> 對(duì)消費(fèi)者而言,網(wǎng)上購物系統(tǒng)也為其提供了大量便利,沒有了“營業(yè)時(shí)間”的制約。網(wǎng)上支付的方式,使得足不出戶也可以看盡各地商品,省去了不必要的時(shí)間和金錢,實(shí)現(xiàn)了消費(fèi)者最小付出和最大回報(bào)的愿望。相對(duì)與傳統(tǒng)的交易模式,網(wǎng)上購物模式的發(fā)展比較穩(wěn)定,它降低了銷售者的運(yùn)行成本的同時(shí),也便利了消費(fèi)者。在購物交易中達(dá)到了雙贏[1]。</p><p> 2 研究現(xiàn)狀及設(shè)計(jì)目標(biāo)</p><
14、;p> 2.1 相近研究課題的特點(diǎn)及優(yōu)缺點(diǎn)分析</p><p> 實(shí)體商品搬上虛擬網(wǎng)絡(luò)已成為社會(huì)發(fā)展的必然。它充分發(fā)揮了計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的優(yōu)勢(shì),把傳統(tǒng)的商店直接“搬”回家,利用Internet直接購買自己需要的商品或者自己需要的服務(wù)。相比于傳統(tǒng)購物模式少了言語交流而有了更多的填單與確認(rèn)過程,讓人稍感不便外??偟膩碚f,不受時(shí)間、地域限制、便捷、安全、省時(shí)省力等優(yōu)點(diǎn)還是為買賣雙方帶來了不少好處,在新經(jīng)濟(jì)時(shí)期達(dá)
15、到“雙贏”效果的理想模式。隨著計(jì)算機(jī)技術(shù)的日趨成熟,更加成熟完善的網(wǎng)上購物系統(tǒng)也將應(yīng)運(yùn)而生[2]。</p><p> 2.2 現(xiàn)行研究存在的問題及解決辦法</p><p> 網(wǎng)上購物系統(tǒng)是比較常見而求被廣泛應(yīng)用的系統(tǒng),本系統(tǒng)的開發(fā)主要是購物車功能、訂單功能和支付的實(shí)現(xiàn),傳統(tǒng)的購物模式,最令人煩惱的問題就是——商品的進(jìn)貨、出貨、交易以及顧客對(duì)其所購商品不滿而引發(fā)的退貨問題等等。現(xiàn)在市場(chǎng)上
16、類似流行的網(wǎng)站或平臺(tái)有很多,例如:卓越,當(dāng)當(dāng),淘寶網(wǎng),京東商城等。這些網(wǎng)站都以比較大型的數(shù)據(jù)庫例如Oracle作為基礎(chǔ),用來儲(chǔ)存及處理大量信息。建立在此基礎(chǔ)之上,讓賣家在處理上述問題時(shí)帶來了很大的便利。網(wǎng)上購物相比于傳統(tǒng)購物模式還有一個(gè)更加明顯的問題就是顧客信息的安全問題,這些網(wǎng)站大多數(shù)在解決這個(gè)問題是采取的是登錄和支付時(shí),對(duì)用戶的輸入進(jìn)行驗(yàn)證,通過正則表達(dá)式并且限制了輸入次數(shù)防止惡意的SQL注入強(qiáng)制破解用戶密碼,保障顧客信息安全。&l
17、t;/p><p> 2.3 本課題要采用的相關(guān)技術(shù)</p><p><b> 1.JSP</b></p><p> JSP(java server page)是由SunMicrosystems公司倡導(dǎo),多家公司共同參與合作于1999年建立的一種動(dòng)態(tài)技術(shù)標(biāo)準(zhǔn)。JSP是新一代的動(dòng)態(tài)內(nèi)容編程技術(shù),它繼承Java技術(shù)的“一次編寫,隨處運(yùn)行”的特性,將
18、開發(fā)人員的開發(fā)和維護(hù)與平臺(tái)相分離[3]。由HTML,DHTML和XML等技術(shù),組成了信息豐富動(dòng)態(tài)的Web頁面。它使得Web開發(fā)人員搭建網(wǎng)絡(luò)平臺(tái)變得簡(jiǎn)單快捷,建立了功能強(qiáng)大的Web網(wǎng)站。JSP可以把用戶界面從內(nèi)容層次中分離出來,使得Web開發(fā)人員修改整體布局的時(shí)候避開了對(duì)底層動(dòng)態(tài)內(nèi)容的修改。</p><p> 插入JSP的Java程序段可以操作當(dāng)服務(wù)器上的一個(gè)JSP 頁面被第一次請(qǐng)求執(zhí)行時(shí),服務(wù)器上的JSP 引擎
19、首先將JSP 頁面文件轉(zhuǎn)譯成一個(gè)Java 文件,再將這個(gè)Java文件編譯生成字節(jié)碼文件,然后通過執(zhí)行字節(jié)碼文件響應(yīng)客戶的請(qǐng)求,而當(dāng)這個(gè)JSP再次被請(qǐng)求執(zhí)行時(shí),JSP引擎將直接執(zhí)行這個(gè)字節(jié)碼文件來響應(yīng)客戶,這也是JSP比ASP 速度快的一個(gè)原因。另外,JSP又在其它許多方面做了改進(jìn),具有動(dòng)態(tài)頁面與靜態(tài)頁面相分離,能夠脫離硬件平臺(tái)的束縛,以及編譯后運(yùn)行等優(yōu)點(diǎn),完全克服了ASP的腳本級(jí)執(zhí)行的缺點(diǎn)。</p><p>&l
20、t;b> 2.MySQL</b></p><p> 前MySQL是一個(gè)開放源碼的小型關(guān)聯(lián)式數(shù)據(jù)庫,由瑞典MySQL AB公司研發(fā)并實(shí)現(xiàn)[4]。目前MySQL已被大量地應(yīng)用到Internet上的各式網(wǎng)站中。憑借其體積小、速度快、總體擁有成本低開放源碼等特點(diǎn),被許多中小型網(wǎng)站所采納,將其作為網(wǎng)站數(shù)據(jù)庫[5]。</p><p> 與其他的大型數(shù)據(jù)庫例如Oracle、SQL
21、 Server等相比,MySQL自有它的一些不足,比如說規(guī)模較小、功能有限等。但是這些不足并不能減少它受歡迎的程度。MySQL提供的功能完全能夠滿足個(gè)人或者中小型企業(yè)的使用,最重要的一點(diǎn)MySQL是開放源碼軟件,因此很大程度上降低總體運(yùn)行成本。</p><p> ?。?)支持多線程,CPU資源得到充分利用。</p><p> ?。?)SQL算法得到優(yōu)化,查詢速度明顯提高。</p>
22、;<p> (3)可以作為一個(gè)獨(dú)立的程序應(yīng)用在客戶端和服務(wù)端環(huán)境中,也可以作為一個(gè)數(shù)據(jù)庫而鑲嵌到其他的軟件中。</p><p> ?。?)支持多種語言,常見的編碼如中文的GB 2312、BIG5,日文的Shift_JIS等。 </p><p> ?。?)數(shù)據(jù)庫連接途徑有TCP/IP、ODBC和JDBC等。</p><p> (6)提供用于管理、檢查
23、、優(yōu)化數(shù)據(jù)庫操作的管理工具。</p><p> ?。?)支持大型的數(shù)據(jù)庫??梢酝瑫r(shí)處理擁有成千上萬條記錄。</p><p> ?。?)支持多種存儲(chǔ)引擎。</p><p> 3 要解決的幾個(gè)關(guān)鍵問題</p><p> 3.1 研究設(shè)計(jì)中要解決的問題</p><p><b> 1.界面設(shè)計(jì)</b>
24、;</p><p> 界面布局設(shè)計(jì)是本系統(tǒng)中的一個(gè)重要的環(huán)節(jié),一個(gè)網(wǎng)站如果能有一個(gè)整潔漂亮的界面,是必更容易被顧客接受。本系統(tǒng)采用B/S結(jié)構(gòu),即(Browse/Server),瀏覽器/服務(wù)器模式[6]。顧客只需在本機(jī)上安裝一個(gè)瀏覽器,就能和服務(wù)機(jī)進(jìn)行數(shù)據(jù)交互。不需要安裝任何軟件,與C/S結(jié)構(gòu)相比,方便了不少。整體采用Java語言,并運(yùn)用一些如JSP、HTML、CSS等網(wǎng)頁制作技術(shù)。界面友好、整潔,任何顧客都能快
25、速地學(xué)會(huì)使用本系統(tǒng)。</p><p><b> 2.功能需求</b></p><p> 網(wǎng)上購物系統(tǒng)的功能模塊有很多,大體可被簡(jiǎn)單地劃分為兩部分:前臺(tái)模塊和后臺(tái)模塊[7]。</p><p> ?。?)前臺(tái)模塊:該模塊主要供顧客使用,包括登錄模塊、注冊(cè)模塊、搜索模塊、購物車模塊、支付模塊等。前臺(tái)模塊功能結(jié)構(gòu)圖如圖3.1所示。</p>
26、;<p> 圖3.1 前臺(tái)模塊結(jié)構(gòu)圖</p><p><b> ① 登錄模塊</b></p><p> 本系統(tǒng)的登錄模塊提供網(wǎng)站用戶的登錄功能,包括用戶名和密碼的輸入,此模塊連接數(shù)據(jù)庫,點(diǎn)擊登錄按鈕,驗(yàn)證核實(shí)之后進(jìn)入系統(tǒng)主界面。</p><p><b> ?、?注冊(cè)模塊</b></p>
27、<p> 本系統(tǒng)的注冊(cè)模塊提供網(wǎng)站游客的注冊(cè)功能,輸入個(gè)人資料,注冊(cè)成為網(wǎng)站會(huì)員。包括用戶名、密碼、確認(rèn)密碼、性別、年齡、電子郵箱、驗(yàn)證碼、地址和聯(lián)系方式。本模塊采用Ajax驗(yàn)證,各個(gè)輸入框都有限制條件,根據(jù)用戶輸入有不同的提醒。輸入無誤后點(diǎn)擊立即注冊(cè)按鈕,輸入信息寫入數(shù)據(jù)庫,操作者可成為網(wǎng)站用戶。</p><p><b> ?、?搜索模塊</b></p><
28、p> 本模塊提供了兩種搜索功能。包括模糊搜索和條件搜索。模糊搜索即關(guān)鍵字搜索,用戶輸入自己想要商品的關(guān)鍵字,點(diǎn)擊搜索按鈕,進(jìn)行搜索。條件搜索可以分為價(jià)格區(qū)間搜索和商品類型搜索。</p><p><b> ?、?購物車模塊</b></p><p> 購物車模塊相當(dāng)于現(xiàn)實(shí)中的購物車,用于暫時(shí)存放用戶挑選的商品。可以顯示所選商品的價(jià)格、數(shù)量、小計(jì)和總計(jì)。模塊功能包
29、括單件商品的增減及刪除,小計(jì)表示同類商品的價(jià)格,總計(jì)表示所選商品的總計(jì)價(jià)格。確認(rèn)無誤后,點(diǎn)擊結(jié)算,便可生成訂單。</p><p><b> ⑤ 支付模塊</b></p><p> 本模塊提供了網(wǎng)上購物系統(tǒng)的支付功能。用戶接收商品,確認(rèn)試用后,點(diǎn)擊支付,給予評(píng)價(jià),完成此次交易的最后一步。 </p><p> ?。?)后臺(tái)模塊:該模塊主要供
30、管理員使用,包括商品管理模塊、會(huì)員管理模塊、訂單管理模塊、公告模塊等。后臺(tái)模塊功能結(jié)構(gòu)圖如圖3.2所示。</p><p> 圖3.2 后臺(tái)模塊結(jié)構(gòu)圖</p><p><b> ?、?商品管理模塊</b></p><p> 網(wǎng)上購物系統(tǒng)的商品管理模塊主要為管理員提供商品管理功能。管理員可修改商品信息,包括價(jià)格、庫存、上架以及下架。</
31、p><p><b> ?、跁?huì)員管理模塊</b></p><p> 會(huì)員管理模塊為管理員提供了管理網(wǎng)站會(huì)員的功能??梢苑峙渚W(wǎng)站會(huì)員一定權(quán)限,也可刪除會(huì)員。</p><p><b> ③訂單管理模塊</b></p><p> 此模塊的功能主要為訂單處理功能。管理員查看訂單信息,給用戶派送商品,等用
32、戶支付之后,修改訂單狀態(tài),完成此次交易。</p><p><b> ④公告模塊</b></p><p> 公告模塊用來顯示網(wǎng)站的一些活動(dòng)、獎(jiǎng)勵(lì)、上架新品、特價(jià)商品以及下架通知等信息。</p><p><b> 3.數(shù)據(jù)庫的設(shè)計(jì)</b></p><p> 數(shù)據(jù)庫是所有信息類系統(tǒng)的基礎(chǔ)核心,它
33、把系統(tǒng)中出現(xiàn)的大量數(shù)據(jù)按照一定的規(guī)則存儲(chǔ)起來,提供檢索數(shù)據(jù)的功能[8]。然而往往由于龐大的數(shù)據(jù)量,讓數(shù)據(jù)庫設(shè)計(jì)變得異常復(fù)雜。開發(fā)網(wǎng)上購物系統(tǒng),必然涉及到大量的商品和顧客信息的存儲(chǔ)問題,這時(shí)候就需要有數(shù)據(jù)庫的支持。一個(gè)好的數(shù)據(jù)庫設(shè)計(jì),不僅能節(jié)省多余的存儲(chǔ)空間,還能有效的提升系統(tǒng)的運(yùn)行效率?,F(xiàn)在主要存在的問題是如何解決數(shù)據(jù)的結(jié)構(gòu)化、數(shù)據(jù)共享性高、獨(dú)立性強(qiáng)和管理統(tǒng)一。</p><p> 3.2 具體實(shí)現(xiàn)中采用的關(guān)鍵技
34、術(shù)及復(fù)雜性分析</p><p> 1.基于B/S的結(jié)構(gòu)模式</p><p> B/S結(jié)構(gòu)(Browser/Server,瀏覽器/服務(wù)器模式),是Web興起后的一種新型的網(wǎng)絡(luò)結(jié)構(gòu)模式,Web瀏覽器是客戶端最常見的一種的應(yīng)用軟件[9]。B/S模式解放了客戶端,它將系統(tǒng)的核心功能集中到服務(wù)器上,緩解了客戶端的壓力。用戶只需在客戶端上只要安裝一個(gè)瀏覽器,如IE、火狐等,服務(wù)器安裝Oracle
35、、Informix、SQL Server一類的數(shù)據(jù)庫。用戶通過瀏覽器與數(shù)據(jù)庫進(jìn)行數(shù)據(jù)信息的交互。</p><p> B/S最大的優(yōu)點(diǎn)在于用戶只要擁有一臺(tái)能上網(wǎng)的電腦,不需要安裝任何軟件,就可以在任何時(shí)間、地點(diǎn)操作系統(tǒng)??蛻舨挥冒惭b、維護(hù),系統(tǒng)的擴(kuò)展性也得到了提高。</p><p> 近年來,Ajax技術(shù)的發(fā)展突飛猛進(jìn),使得基于B/S結(jié)構(gòu)的系統(tǒng)越來越多。建立在此之上的程序在客戶端就可以進(jìn)
36、行部分的驗(yàn)證功能,這樣一來就減輕了服務(wù)端的負(fù)擔(dān)。局部的即時(shí)刷新功能,提高了交互性能。</p><p><b> 2.數(shù)據(jù)庫連接技術(shù)</b></p><p> 數(shù)據(jù)庫部分的難點(diǎn)在于它的連接,為此采用了JDBC,即JavaDataBaseConnectivity它是Java版本的ODBC。課題研究過程中,我們可以建立一個(gè)JDBC類,用來連接數(shù)據(jù)庫[10]。它的實(shí)現(xiàn)可以
37、分為5個(gè)步驟:</p><p> ?。?) 注冊(cè)驅(qū)動(dòng),根據(jù)不同數(shù)據(jù)庫注冊(cè)不同的驅(qū)動(dòng) </p><p> Class.forName("oracle.jdbc.driver.OracleDriver")</p><p> (mysql) “com.mysql.jdbc.Driver"</p><p> n
38、ew oracle.jdbc.driver.OracleDriver();</p><p> ?。?) 通過驅(qū)動(dòng)管理器獲得連接</p><p> Connection conn = DriverManager.getConnection(url,用戶名,密碼)</p><p> ?。╫racle)url = "jdbc:oracle:thin:@ip地址
39、:1521:數(shù)據(jù)庫名(orcl)</p><p> jdbc:oracle:thin:@192.168.11.188:1521:orcl</p><p> (mysql) jdbc:mysql://ip地址:3306/數(shù)據(jù)庫名(database對(duì)象的名字)</p><p> (3) 通過連接(Connection)生成語句(Statement)對(duì)象</p
40、><p> Statement stmt = conn.createStatement();</p><p> PreparedStatement pstmt = conn.prepareStatement(sql);</p><p> ?。?) 傳遞語句對(duì)象,并返回結(jié)果</p><p> String sql = "select
41、 * from emp";</p><p> ResultSet rs = stmt.executeQuery(sql);</p><p> //ResultSet rs = prepareStmt.executeQuery();</p><p> int n = stmt.executeUpdate(sql);</p><p&g
42、t; while(rs.next()){</p><p><b> }</b></p><p><b> ?。?) 釋放資源</b></p><p> rs.close();</p><p> stmt.close();</p><p> conn.close();
43、</p><p><b> 4 系統(tǒng)設(shè)計(jì)及結(jié)構(gòu)</b></p><p><b> 4.1 數(shù)據(jù)庫設(shè)計(jì)</b></p><p><b> 1.數(shù)據(jù)庫表的設(shè)計(jì)</b></p><p> (1)用戶信息表(User_id,User_name,Password,Real_nam
44、e,Age,Gender,Address,Email,Is_Admin,Phone),其中User_id為關(guān)鍵字。該表用來存儲(chǔ)用戶id、用戶名、密碼、真實(shí)姓名、年齡、性別、地址、電子郵箱、是否為管理員和聯(lián)系方式。</p><p> 表的結(jié)構(gòu)如表4-1 所示。</p><p> 表4-1 用戶信息表</p><p> ?。?)商品表(Product_id,Nam
45、e,Kind_id,Price,Uptime,Downtime,Count,Month_sell,Pro_picture,Describe),其中Product_id為主鍵,Kind_id為外鍵。該表用來存儲(chǔ)商品id、商品名稱、種類id、商品單價(jià)、上架時(shí)間、下架時(shí)間、庫存量、月銷量、商品圖片和商品描述。表的結(jié)構(gòu)如下表4-2所示。</p><p> 表4-2 商品信息表</p><p>
46、 ?。?)商品種類表(Kind_id,F(xiàn)ather_id,Kind_name,Kind_grade),其中Kind_id為主鍵。該表用來存儲(chǔ)種類id、父種類id、種類名稱和種類等級(jí)。表的結(jié)構(gòu)如表4-3所示。</p><p> 表4-3 商品種類表</p><p> ?。?)訂單項(xiàng)表(Item_id,Order_id,Product_id,Product_count,User_id),其
47、中Item_id為主鍵。該表存儲(chǔ)訂單項(xiàng)id、訂單id、商品id、商品數(shù)量、用戶id。表的結(jié)構(gòu)如表4-4所示。</p><p> 表4-4 訂單項(xiàng)表</p><p> ?。?) 訂單表(Order_id,Pay_way,Deliver_way,Address,Receive_name,Postcode,Receive_phone,User_id,State,isPaid),其中Order
48、_id是主鍵,User_id為外鍵。該表用來存儲(chǔ)訂單id、支付方式、送貨方式、送貨地址、收貨人姓名、收貨人聯(lián)系方式、郵政編碼、用戶id 、訂單狀態(tài)、是否付款。表結(jié)構(gòu)如表4-5所示。</p><p><b> 表4-5 訂單表</b></p><p> 2.數(shù)據(jù)庫表的關(guān)系圖</p><p> 圖4.1 數(shù)據(jù)庫表的關(guān)系圖</p>
49、<p><b> 4.2 系統(tǒng)結(jié)構(gòu)圖</b></p><p> 結(jié)構(gòu)圖以模塊的關(guān)系為線索,用自上而下的連線表示調(diào)用關(guān)系并注明參數(shù)傳遞的方向和內(nèi)容。</p><p> 圖4.2 網(wǎng)上購物系統(tǒng)總體模塊結(jié)構(gòu)圖</p><p><b> 5 系統(tǒng)實(shí)現(xiàn)技術(shù)</b></p><p> 5
50、.1 分模塊詳述系統(tǒng)各部分的實(shí)現(xiàn)方法</p><p><b> 1.登錄</b></p><p> 登錄界面如圖5.1所示。</p><p><b> 圖5.1 登錄界面</b></p><p> 對(duì)應(yīng)的部分程序代碼為:</p><p><b> @Ove
51、rride</b></p><p> protected void service(HttpServletRequest request, HttpServletResponse response)</p><p> throws ServletException, IOException {</p><p> request.setCharact
52、erEncoding("utf-8");</p><p> response.setContentType("text/html;charset=utf-8");</p><p> String username = request.getParameter("username");</p><p>
53、 String password = request.getParameter("password");</p><p> PrintWriter out=response.getWriter();</p><p><b> try {</b></p><p> User u = Userdao.getUser(use
54、rname);</p><p> if(u != null){</p><p> if(u.getUser_password().equals(password))</p><p><b> { </b></p><p> request.getSession().setAttribute("user&
55、quot;, u);</p><p> response.sendRedirect("/dog_heaven/jsp/main.jsp");</p><p><b> }else{</b></p><p> out.println("<script>alert('密碼錯(cuò)誤');wi
56、ndow.history.go(-1)</script>"); </p><p><b> }</b></p><p><b> }else{</b></p><p> out.println("<script>alert('用戶名不存在');window.
57、history.go(-1)</script>");</p><p><b> }</b></p><p> }catch (SQLException e) {</p><p> e.printStackTrace();</p><p><b> }</b></p
58、><p><b> }</b></p><p><b> 2.注冊(cè)</b></p><p> 如果用戶還不是本網(wǎng)站會(huì)員,就只能瀏覽商品,沒有購物車功能,也不購買商品。這時(shí)就需要注冊(cè)會(huì)員。本系統(tǒng)注冊(cè)界面如下圖所示。本界面采用Ajax驗(yàn)證,即時(shí)更新驗(yàn)證輸入的信息。完成個(gè)人信息的填寫后,單擊立即注冊(cè)按鈕,即可成為本網(wǎng)站會(huì)員。注
59、冊(cè)界面如圖5.2所示。</p><p> 圖5.2 注冊(cè)界面</p><p><b> 3.搜索</b></p><p> 本系統(tǒng)搜索功能如下圖所示,大體提供了兩種搜索功能。第一種:關(guān)鍵字查找(模糊查找),會(huì)員輸入關(guān)鍵字,單擊搜索按鈕進(jìn)行搜索;第二種:條件查找,具體可分為價(jià)格區(qū)間查找和商品類別查找。搜索界面如圖5.3所示。</p&
60、gt;<p> 圖5.3 搜索功能界面</p><p> 對(duì)應(yīng)的部分程序代碼為:</p><p><b> //關(guān)鍵字查找</b></p><p><b> @Override</b></p><p> private void keywords(HttpServletRe
61、quest request, HttpServletResponse response) throws SQLException, IOException {</p><p> String key = request.getParameter("keywords");</p><p> ArrayList<Dog> dogs = (ArrayList
62、)Dogdao.findKeyWordsDog(key);</p><p> PrintWriter out = response.getWriter();</p><p> out.println("<html>");</p><p> out.println("<head><title>&l
63、t;/title></head>");</p><p> out.println("<body>");</p><p> out.println(" <div style=\"background-image: url('image/main/memu.jpg');height: 60
64、0px; \">");</p><p> out.println("<table align=\"center\">");</p><p> if (dogs.size()==0) {</p><p> out.println("<br><br>&l
65、t;div align=\"center\"><h1>沒有符合條件的商品</h1></div><br>");</p><p> out.println("<div align=\"center\"><h2><a href=\"/dog_heaven/jsp/m
66、ain.jsp\">如有需要,請(qǐng)重新搜索</a></h2></div><br>");</p><p><b> return;</b></p><p><b> }else {</b></p><p> out.println("&l
67、t;br><br><div align=\"center\"><h1>商品如下</h1></div><br>");</p><p> out.println("<div align=\"center\"><h2><a href=\"/d
68、og_heaven/jsp/main.jsp\">返回首頁</a></h2></div><br>");</p><p> for (int i = 0; i < dogs.size(); i++) {</p><p> Dog d = dogs.get(i);</p><p> i
69、f(i == 0){ </p><p> out.println("<tr>"); </p><p><b> }</b></p><p> if(i%4==0&&i!=0){</p><p> out.println("</tr>
70、"); </p><p><b> }</b></p><p> out.println("<td>");</p><p> out.println("<table width=\" 200px\">");</p><p
71、> out.println("<tr><td colspan=\"2\"><a href=\"detailServlet?id="+d.getDog_id()+"\"><img width=\"180px\"; height=\"220px\"; src=\"image
72、/dog/"+d.getDog_picture()+"\"/></a></td></tr>");</p><p> out.println("<tr><td colspan=\"2\">"+d.getDog_describe()+"</td>&l
73、t;/tr>");</p><p> out.println("<tr> <td ><img src=\"image/main/price.jpg\"/></td> ");</p><p> out.println(" <td>"+d.getDog_
74、now_price()+"</td> </tr>");</p><p> out.println("</table></td>");</p><p><b> }</b></p><p> out.println("</div>
75、");</p><p> out.println("</body>");</p><p> out.println("</html>");</p><p> out.flush();</p><p> out.close();</p><p&
76、gt;<b> }</b></p><p><b> 4.購物車</b></p><p> 購物車模塊相當(dāng)于現(xiàn)實(shí)中的購物車,用于暫時(shí)存放用戶挑選的商品。顧客可以選擇單件商品數(shù)量或者刪除商品。小計(jì)表示同類商品的價(jià)格,總計(jì)表示所選商品的總計(jì)價(jià)格。確認(rèn)無誤后,點(diǎn)擊結(jié)算,生成訂單。購物車界面如圖5.4所示。</p><p>
77、 圖5.4 購物車界面</p><p> 對(duì)應(yīng)的部分程序代碼為: </p><p> private ArrayList<CartItem> printCartItem(PrintWriter out, ShoppingCart cart) {</p><p> ArrayList<CartItem> items = cart.get
78、Cart();</p><p> CartItem item = null;</p><p> out.println("<table width=\"500\" border=\"1\" >");</p><p> out.println("<tr>");
79、</p><p> out.println("<th width=\"100\">圖片</th>");</p><p> out.println("<th width=\"100\">價(jià)格</th>");</p><p> out.p
80、rintln("<th width=\"100\">數(shù)量</th>");</p><p> out.println("<th width=\"100\">小計(jì)</th>");</p><p> out.println("<th width=\&
81、quot;100\">操作</th>");</p><p> out.println("</tr>");</p><p> for (int i = 0; i < items.size(); i++) {</p><p> item = items.get(i);</p>
82、<p> out.println("<form action=\"jsp/memu.jsp?price="+item.getPrice()+"&&number="+item.getQuantity()+"&&dogid="+item.getId()+"\" >");</p&g
83、t;<p> out.println("<tr>");</p><p> out.println("<td><img width=\" 100px\"; height=\" 100px\"; src=\"image/dog/"+ item.getPic() + "\
84、" /></td>");</p><p> out.println("<td align=\"center\">"+item.getPrice()+"元</td>");</p><p> out.println("<td align=\"
85、center\"><font size=\"5\">" + item.getQuantity() + "</font></td>");</p><p> out.println("<td align=\"center\">" + item.getSum() +
86、 "元</td>");</p><p> out.println("<td align=\"center\"><a href=\"/dog_heaven/DelShoppingCartServlet?id="+ item.getId()+ "\"><font color=\&quo
87、t;red\">刪除</font></a></td>");</p><p> out.println("</tr>");</p><p> out.println("<tr>");</p><p> out.println("
88、<td colspan=\"3\" align=\"center\">總計(jì):<font color=\"red\"; size=\"6\";>"+ cart.getTotal() + "</font>元</td>");</p><p> out.print
89、ln("<td align=\"center\"><a href=\"/dog_heaven/RemoveAllServlet\">清空</a></td>");</p><p> out.println("<td align=\"center\"><inpu
90、t type=\"submit\" value=\"結(jié)算\"/></td>");</p><p> out.println("</tr>");</p><p> out.println("</form>");</p><p> o
91、ut.println("</table>");</p><p> return items;</p><p><b> 5.2 程序流程</b></p><p> 根據(jù)需求分析和詳細(xì)設(shè)計(jì)描述,能夠得出本系統(tǒng)的運(yùn)行流程,如圖5.5所示。</p><p> 圖5.5 系統(tǒng)程序流程圖&l
92、t;/p><p><b> 6 性能測(cè)試與分析</b></p><p> 6.1 測(cè)試實(shí)例(測(cè)試集)的研究與選擇</p><p> 該測(cè)試案例是以一個(gè)B/S的功能點(diǎn)為被測(cè)對(duì)象, 該測(cè)試用例為黑盒測(cè)試用例。所謂黑盒測(cè)試就是在程序接口進(jìn)行測(cè)試,它是檢查功能是否按要求實(shí)現(xiàn)各個(gè)功能,程序是否能適當(dāng)?shù)亟邮蛰斎霐?shù)據(jù)并產(chǎn)生正確的輸出信息。白盒測(cè)試與黑盒測(cè)試
93、相反,測(cè)試根據(jù)被測(cè)程序的內(nèi)部結(jié)構(gòu)設(shè)計(jì)測(cè)試用例,測(cè)試者需事先了解程序的結(jié)構(gòu)。 </p><p> 本系統(tǒng)的測(cè)試功能描述如下: </p><p> 1.用戶登錄界面輸入密碼,進(jìn)入購物網(wǎng)站主界面。</p><p> 2.選擇一件商品,放入購物車。 </p><p> 3.更改購物車中商品數(shù)量、種類,點(diǎn)擊結(jié)算按鈕,進(jìn)入訂單生成界面。</
94、p><p> 4.填寫訂單信息,點(diǎn)擊確定,完成訂單,等待賣家發(fā)貨。</p><p><b> 6.2 測(cè)試環(huán)境</b></p><p><b> 1.硬件環(huán)境</b></p><p> 硬件配置主要包括硬件的選擇。網(wǎng)上購物系統(tǒng)的硬件配置要根據(jù)用戶對(duì)系統(tǒng)的穩(wěn)定性要求、系統(tǒng)的容量來確定。</p
95、><p><b> 2.軟件環(huán)境</b></p><p> 網(wǎng)上購物系統(tǒng)的軟件配置要根據(jù)用戶對(duì)系統(tǒng)的穩(wěn)定性要求以及用戶的維護(hù)水平來確定。當(dāng)然,一般情況下,對(duì)微軟Windows界面比較熟悉,因此都使用Windows XP操作系統(tǒng)。</p><p><b> 6.3 性能分析</b></p><p>
96、 1.對(duì)系統(tǒng)用戶進(jìn)行管理。</p><p> 2.為了加強(qiáng)數(shù)據(jù)保密性,為用戶設(shè)置權(quán)限。</p><p> 3.系統(tǒng)最大限度地實(shí)現(xiàn)了易安裝性、易維護(hù)性和易操作性。</p><p> 4.系統(tǒng)運(yùn)行穩(wěn)定、安全可靠。</p><p><b> 7 結(jié)束語</b></p><p> 本系統(tǒng)是的設(shè)
97、計(jì)與研發(fā)基于軟件工程學(xué),用來對(duì)網(wǎng)上商品等信息進(jìn)行有效的管理。大體可分為兩大功能模塊,前臺(tái)模塊和后臺(tái)模塊。往下又可分為許多子模塊。前臺(tái)模塊提供了商品展示功能和用戶購物功能。后臺(tái)模塊提供了管理用戶信息,管理商品信息,以及處理訂單信息等功能。本系統(tǒng)至上而下功能層次分明,為用戶和管理員的使用提供了便利。</p><p> 本次畢業(yè)設(shè)計(jì)中,也體現(xiàn)出了自身的不足。首先,在開發(fā)網(wǎng)上購物系統(tǒng)的前期,由于對(duì)開發(fā)工具的掌握還不夠全
98、面,浪費(fèi)了不少時(shí)間。其次,前期研發(fā)時(shí)缺少對(duì)本系統(tǒng)的總體設(shè)計(jì),考慮的不夠全面,導(dǎo)致在底層功能擴(kuò)充時(shí),遇到了不少困難。再次,網(wǎng)站制作方面的知識(shí)比較缺乏,開發(fā)軟件的能力還有待提高。</p><p> 由于個(gè)人能力有限以及實(shí)踐經(jīng)驗(yàn)欠缺,系統(tǒng)基本滿足了網(wǎng)上購物的功能需求,本系統(tǒng)不可避免有不足之處,如一些系統(tǒng)功能過于簡(jiǎn)單,所以系統(tǒng)的功能還算不上很完善。希望老師和同學(xué)能給予建議和指導(dǎo)。</p><p>
99、;<b> 參考文獻(xiàn):</b></p><p> [1] 程雯.我國網(wǎng)絡(luò)購物現(xiàn)狀淺析[J].價(jià)格月刊,2009(09):18-26.</p><p> [2] 管晶晶.足不出戶購物是怎樣實(shí)現(xiàn)的?[J].今日科苑,2007(21):20-42.</p><p> [3] 來學(xué)偉.基于JSP的學(xué)生信息管理系統(tǒng)的設(shè)計(jì)[J].濟(jì)源職業(yè)技術(shù)學(xué)院學(xué)
100、報(bào),2010(11):1-160.</p><p> [4] 耿小芬,徐忠軍.Visual Basic中的數(shù)據(jù)訪問技術(shù)[J].中國教育信息化高職高教,2009,13:3-24.</p><p> [5] 崔巍陳國青.數(shù)據(jù)庫應(yīng)用與設(shè)計(jì)[M].北京:清華大學(xué)出版社,2009.</p><p> [6] 梁小曉.基于B/S結(jié)構(gòu)學(xué)生信息管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].成都
101、.電子科技大學(xué):2009.</p><p> [7] 鐘彩華.學(xué)生信息管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].江西.南昌大學(xué):2009.</p><p> [8] Freeman,Eric Freemar,Bert Bates,Katly Sierra.Head First Design Patterns[M].London:Cambridge University Press,2001. <
102、;/p><p> [9] Tiina Havana.Communication In The Software Vulnerability Reporting Process [M].Jyvaskyla:Jyvaskyla University Press,2008.</p><p> [10] 鞏康.JDBC,MySQL和JDBCProxy聯(lián)合實(shí)現(xiàn)Java數(shù)據(jù)庫[J],2010(10):
103、110-137.</p><p> Design And Implementation of A Java-Based Online Shopping System</p><p> Abstract: With changing lifestyles and consumer attitudes, online shopping, with its simple, fast and
104、so has been accepted by more and more people.This dissertation mainly discusses the design and implementation of Java-based online shopping system. This system is for the needs of people shopping online design and implem
105、entation. The system's main function is to flow into commodities trading information management. System can be divided into two parts front and back, front main achievement login</p><p> Key words: java
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于java的網(wǎng)上購物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 基于java的在線購物系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
- 基于java的在線購物系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)現(xiàn)
- 網(wǎng)上購物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 基于Java EE的購物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 基于jsp的網(wǎng)上購物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 基于web的網(wǎng)上購物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 網(wǎng)上購物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 基于java的網(wǎng)上商城系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
- 基于.net網(wǎng)上購物系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
- 基于Struts網(wǎng)上購物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 基于MSF的網(wǎng)上購物系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).pdf
- 基于java技術(shù)的網(wǎng)上招聘系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 基于java開發(fā)的網(wǎng)上購物商城
- 基于PKI的網(wǎng)上購物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 基于JSP技術(shù)的網(wǎng)上購物系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).pdf
- 網(wǎng)上購物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) (2)
- 網(wǎng)上購物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) (2)
- 基于java的在線購物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)(源代碼+系統(tǒng))
- 基于ssl安全協(xié)議的網(wǎng)上購物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
評(píng)論
0/150
提交評(píng)論