電子商務(wù)數(shù)據(jù)庫(kù)購(gòu)物系統(tǒng)設(shè)計(jì)畢業(yè)設(shè)計(jì)論文_第1頁(yè)
電子商務(wù)數(shù)據(jù)庫(kù)購(gòu)物系統(tǒng)設(shè)計(jì)畢業(yè)設(shè)計(jì)論文_第2頁(yè)
電子商務(wù)數(shù)據(jù)庫(kù)購(gòu)物系統(tǒng)設(shè)計(jì)畢業(yè)設(shè)計(jì)論文_第3頁(yè)
電子商務(wù)數(shù)據(jù)庫(kù)購(gòu)物系統(tǒng)設(shè)計(jì)畢業(yè)設(shè)計(jì)論文_第4頁(yè)
電子商務(wù)數(shù)據(jù)庫(kù)購(gòu)物系統(tǒng)設(shè)計(jì)畢業(yè)設(shè)計(jì)論文_第5頁(yè)
已閱讀5頁(yè),還剩125頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、摘 要隨著網(wǎng)絡(luò)技術(shù)的迅猛發(fā)展,越來(lái)越多的企業(yè)紛紛上網(wǎng)進(jìn)行產(chǎn)品的發(fā)布和銷售。針對(duì)國(guó)內(nèi)中小型電腦銷售公司的電腦銷售問(wèn)題,在對(duì)購(gòu)物網(wǎng)站系統(tǒng)功能分析的基礎(chǔ)上,采用J2EE技術(shù)和MySQL數(shù)據(jù)庫(kù)來(lái)開(kāi)發(fā)本系統(tǒng),它具有操作簡(jiǎn)單、系統(tǒng)安全性高、運(yùn)行穩(wěn)定、可移植性好等特點(diǎn)。在本系統(tǒng)中,顧客可以很方便的注冊(cè)成為會(huì)員,對(duì)商品進(jìn)行瀏覽檢索,查看商品的詳細(xì)資料,然后根據(jù)個(gè)人的喜好購(gòu)買商品。系統(tǒng)會(huì)自動(dòng)為顧客生成訂單,并按照顧客所填寫的信息提交訂單。系統(tǒng)管理員則可以對(duì)現(xiàn)有的商品進(jìn)行添加和編輯,審查已注冊(cè)的用戶并對(duì)提交的訂單進(jìn)行處理。通過(guò)本網(wǎng)站具體功能的實(shí)現(xiàn),很好的為客戶和商家之間搭建起一個(gè)網(wǎng)上交易的平臺(tái),并為將來(lái)類似網(wǎng)站的

2、開(kāi)發(fā)提供參考。關(guān)鍵詞 電子商務(wù) 數(shù)據(jù)庫(kù) 購(gòu)物系統(tǒng) AbstractWith the rapid development of network technology,more and more company issue and sell the products through the internet.In the light of computer selling problem of domestic computer company,and on the base of function analysis of internet shopping,useing the technolo

3、gy of J2EE and the database of MySQL to develop the system has the advantages of simple operation,system safely,run stably,good transplantion and so on.In the system,customer can register conveniently as the member,and proceeds to merchandise view index,look into favour that the merchandises detaile

4、d data,then purchase the adoring merchandise according to the everyone.System would automatically create order for the customer,and hand over the order to erupt goods according to the information for fill inning of customer.System manager can then add and edit the merchandise.Investigate already the

5、 registered customer combiner right hand over to proceeds to handle to current merchandise.According to achieve the function of website,it can build a online trading platform between client and seller,it also offer the reference for the website developing in the future.Key words E-commerce Database

6、Shopping System 目 錄摘 要IAbstractII第1章 緒 論11.1 電子商務(wù)概述11.2 選題背景及意義21.3 國(guó)內(nèi)外技術(shù)現(xiàn)狀分析31.3.1 國(guó)外技術(shù)狀況31.3.2 國(guó)內(nèi)技術(shù)狀況41.4 關(guān)于系統(tǒng)開(kāi)發(fā)技術(shù)41.4.1 關(guān)于Struts技術(shù)41.4.2 關(guān)于Hibernate技術(shù)51.4.3 關(guān)于MySQL數(shù)據(jù)庫(kù)6第2章 系統(tǒng)的可行性分析及需求分析82.1 可行性分析82.1.1 網(wǎng)站可行性分析概述82.1.2 經(jīng)濟(jì)可行性分析82.1.3 技術(shù)可行性分析92.2 需求分析10第3章 系統(tǒng)概要設(shè)計(jì)133.1 系統(tǒng)的選型133.2 系統(tǒng)的運(yùn)行架構(gòu)133.3 系統(tǒng)模塊的劃分

7、143.4 系統(tǒng)各組件功能的劃分16第4章 系統(tǒng)詳細(xì)設(shè)計(jì)184.1 數(shù)據(jù)庫(kù)設(shè)計(jì)184.1.1 概念結(jié)構(gòu)設(shè)計(jì)184.1.2 邏輯結(jié)構(gòu)設(shè)計(jì)224.2 系統(tǒng)各模塊詳細(xì)設(shè)計(jì)274.2.1 用戶注冊(cè)登錄管理模塊274.2.2 產(chǎn)品檢索查詢管理模塊284.2.3 購(gòu)物管理模塊284.2.4 產(chǎn)品信息管理模塊294.2.5 訂單管理模塊324.2.6 用戶信息管理模塊334.3 系統(tǒng)設(shè)計(jì)中的難點(diǎn)詳解33第章 系統(tǒng)的測(cè)試與維護(hù)355.1 測(cè)試概述355.1.1 測(cè)試的發(fā)展史355.1.2 測(cè)試的定義365.2 測(cè)試方法介紹375.2.1 白盒測(cè)試375.2.2 黑盒測(cè)試385.3 測(cè)試計(jì)劃395.3.1 測(cè)試

8、方案395.3.2 詳細(xì)計(jì)劃395.3.3 測(cè)試報(bào)告405.4 系統(tǒng)的維護(hù)40結(jié) 論42致 謝43參考文獻(xiàn)44附錄1 外文資料中文翻譯45附錄2 外文資料原文50附錄3 設(shè)計(jì)系統(tǒng)部分源代碼57VI第1章 緒 論1.1 電子商務(wù)概述電子商務(wù)是歐美在九十年代興起的一種全新的商業(yè)交易模式,特別是在九十年代后期伴隨著計(jì)算機(jī)和Internet逐漸在公司和家庭中的出現(xiàn),相當(dāng)一部分的公司為了尋求新的發(fā)展和經(jīng)營(yíng)管理模式,利用Internet紛紛在公司內(nèi)部建立了自己的網(wǎng)絡(luò),這樣就實(shí)現(xiàn)了公司同外界的信息交換,再加上人們?nèi)找嬖鲩L(zhǎng)的網(wǎng)上購(gòu)物欲望,第一代電子商務(wù)模式就應(yīng)運(yùn)而生,即企業(yè)對(duì)消費(fèi)者模式(B2C模式)。但這只是

9、發(fā)展的初期,電子商務(wù)網(wǎng)站還有很多不完善的,比如網(wǎng)站的安全性、支付的方式等相關(guān)技術(shù),這些關(guān)鍵技術(shù)一定程度上制約著電子商務(wù)網(wǎng)站的發(fā)展,但是隨著如今信息技術(shù)的不斷發(fā)展,人們教育水平和消費(fèi)理念的不斷提高,使得網(wǎng)絡(luò)商務(wù)活動(dòng)的制約因素得到了有效的解決,促使電子商務(wù)逐步走向成熟,并形成了多種新的發(fā)展模式,這其中就包括企業(yè)間營(yíng)銷模式(B2B模式)和個(gè)人間的交易模式(C2C模式)等1??偟膩?lái)說(shuō)電子商務(wù)向人們展示了一種全新的購(gòu)物理念,實(shí)現(xiàn)了交易的無(wú)紙化、效率化和自動(dòng)化等特點(diǎn)。關(guān)于對(duì)電子商務(wù)的定義可以從廣義和狹義這兩方面去理解。從廣義上看,電子商務(wù)活動(dòng)主要包括企業(yè)內(nèi)部生產(chǎn)、管理、銷售以及企業(yè)間的商務(wù)活動(dòng)等,它主要通

10、過(guò)Internet、Intranet、Extranet把買家、賣家、廠家和合作伙伴緊緊的聯(lián)系起來(lái)。從狹義上看,電子商務(wù)指的僅僅是通過(guò)Internet進(jìn)行交易的商務(wù)活動(dòng),通過(guò)Internet來(lái)買賣商品和提供相應(yīng)的服務(wù)。電子商務(wù)的主要目標(biāo)是通過(guò)計(jì)算機(jī)網(wǎng)絡(luò)的方式進(jìn)行商務(wù)活動(dòng)。它服務(wù)于商務(wù),滿足商務(wù)的需求。但它決不是人們?nèi)粘I盍?xí)以為常的商務(wù)活動(dòng)在計(jì)算機(jī)網(wǎng)絡(luò)環(huán)境中的完整復(fù)制,而是對(duì)現(xiàn)有的一成不變的商務(wù)體系的一種強(qiáng)有力的沖擊,它指出了信息時(shí)代商務(wù)活動(dòng)的發(fā)展方向,是推動(dòng)人類經(jīng)濟(jì)發(fā)展的新動(dòng)力。電子商務(wù)通過(guò)降低交易成本、優(yōu)化資源配置以及加速資金運(yùn)轉(zhuǎn)等措施改變并優(yōu)化傳統(tǒng)的商務(wù)模式,不斷增加現(xiàn)代商務(wù)活動(dòng)的合理性。

11、相信隨著社會(huì)的進(jìn)步和人們生活水平的不斷提高,上網(wǎng)購(gòu)物將逐漸成為一種潮流,越來(lái)越多的人們都會(huì)感到使用網(wǎng)絡(luò)銷售和購(gòu)買產(chǎn)品給他們帶來(lái)的方便和快捷。他們可以通過(guò)網(wǎng)絡(luò)在家中瀏覽網(wǎng)上商店,選擇合適的產(chǎn)品并完成購(gòu)物操作。企業(yè)則可以通過(guò)網(wǎng)絡(luò)實(shí)現(xiàn)網(wǎng)上洽談業(yè)務(wù)、網(wǎng)上采購(gòu)與接收訂單、電子支付等操作。電子商務(wù)在改變企業(yè)的生產(chǎn)與經(jīng)營(yíng)活動(dòng)的同時(shí),也帶來(lái)了人們生活方式、文化教育、政府職能等的轉(zhuǎn)變,電子商務(wù)的出現(xiàn)將真正的把人類帶入信息社會(huì)。1.2 選題背景及意義21世紀(jì)是一個(gè)高度信息化和網(wǎng)絡(luò)化的時(shí)代,電腦已經(jīng)進(jìn)入千家萬(wàn)戶,可以說(shuō)現(xiàn)在的網(wǎng)絡(luò)延伸到了社會(huì)的每一個(gè)角落,上網(wǎng)已成為了一種不可抗拒的歷史潮流。公司、組織、甚至個(gè)人都紛紛

12、上網(wǎng),網(wǎng)絡(luò)給他們提供了強(qiáng)大的功能。在過(guò)去,商務(wù)貿(mào)易手段十分的落后,往往需要建立起公司大樓、商場(chǎng)店鋪,招聘相關(guān)的工作人員,而且不可避免的要乘坐輪船、飛機(jī)等交通工具進(jìn)行業(yè)務(wù)方面的服務(wù),這樣既浪費(fèi)人力、物力,而且效率也不是很高。但是隨著電子商務(wù)的出現(xiàn),這種落后的貿(mào)易手段將會(huì)被逐漸地淘汰,電子商務(wù)網(wǎng)站不但可以使消費(fèi)者獲得優(yōu)質(zhì)的在線服務(wù),又可以使商家獲得無(wú)限的商機(jī),是一個(gè)能夠在網(wǎng)上完成供、產(chǎn)、銷等全部業(yè)務(wù)流程的虛擬市場(chǎng)。電子商務(wù)利用計(jì)算機(jī)網(wǎng)絡(luò)為營(yíng)銷環(huán)境,節(jié)約了大量的店面資金、人手;減少了庫(kù)存商品的資金占用、避免壓貨;縮短了動(dòng)作的周期,而且經(jīng)營(yíng)規(guī)模不受場(chǎng)地、時(shí)間、空間地域的限制,有利于降低成本,擴(kuò)大市場(chǎng)的

13、經(jīng)營(yíng)規(guī)模,從根本上增加了企業(yè)競(jìng)爭(zhēng)的優(yōu)勢(shì),發(fā)展了企業(yè)本身。目前電子商務(wù)網(wǎng)站利用計(jì)算機(jī)網(wǎng)絡(luò)可以播放視頻來(lái)介紹公司的形象和相關(guān)產(chǎn)品。例如,電腦公司可以從各個(gè)方面介紹電腦的參數(shù)、使用性能等。隨著網(wǎng)絡(luò)用戶的迅速膨脹,眾多的商家和廠家也紛紛將目光投向互聯(lián)網(wǎng),所以說(shuō)從長(zhǎng)遠(yuǎn)的戰(zhàn)略目標(biāo)來(lái)看,現(xiàn)在的商務(wù)網(wǎng)站不僅僅只是產(chǎn)品和服務(wù)的推廣,通過(guò)Internet、Intranet和Extranet,它還是廠家與銷售方、買方與賣方進(jìn)行交易的一個(gè)平臺(tái)?,F(xiàn)在的電腦市場(chǎng)有各種臺(tái)式機(jī)、筆記本,顧客在商店里購(gòu)買時(shí)對(duì)于商品的具體性能,以及和其他相關(guān)產(chǎn)品的對(duì)比往往缺少相關(guān)的資料,購(gòu)買的時(shí)候會(huì)猶豫不決,而本網(wǎng)站就致力于提供筆記本電腦產(chǎn)品的

14、展示以及提供以訂購(gòu)為核心的網(wǎng)上購(gòu)物服務(wù),使各個(gè)電腦銷售公司可以通過(guò)本網(wǎng)站宣傳最新的產(chǎn)品,將它們展示給客戶,讓客戶通過(guò)網(wǎng)站便能自由的選擇購(gòu)買電腦產(chǎn)品。而對(duì)于客戶來(lái)說(shuō)只要在網(wǎng)站上搜索自己想要的電腦品牌,就可以很直觀的了解相關(guān)的信息,通過(guò)對(duì)比之后就可以直接在網(wǎng)上進(jìn)行訂購(gòu),十分的方便。1.3 國(guó)內(nèi)外技術(shù)現(xiàn)狀分析1.3.1 國(guó)外技術(shù)狀況國(guó)際上,電子商務(wù)網(wǎng)站的開(kāi)發(fā)應(yīng)用已經(jīng)相當(dāng)?shù)膹V泛,Struts+Hibernate是這類網(wǎng)站的主要實(shí)現(xiàn)技術(shù)。而服務(wù)器一般選為Tomcat,采用的數(shù)據(jù)庫(kù)為Oracle。對(duì)于Struts技術(shù),目前國(guó)外Apache基金會(huì)發(fā)布的最新版本是Struts1.2.6,Struts是一種基于

15、MVC經(jīng)典設(shè)計(jì)模式的框架,是現(xiàn)在Web開(kāi)發(fā)中比較成熟的一種框架,MVC(Model-View-Controlller)模式,即模型-視圖-控制器模式。其中View部分國(guó)外一般采用AWT、JFC/Swing、JSP實(shí)現(xiàn),Model部分采用JavaBean、EJB來(lái)實(shí)現(xiàn),Controller部分用Servlet來(lái)實(shí)現(xiàn)。對(duì)于Hibernate技術(shù),目前國(guó)外最新的版本是Hibernate3.1,事實(shí)上Hibernate是一個(gè)開(kāi)放源代碼的對(duì)象關(guān)系映射框架。國(guó)外在利用Hibernate技術(shù)處理持久化對(duì)象時(shí),沒(méi)有直接調(diào)用持久化對(duì)象以及它的方法,而是利用CGLIB和Java反射技術(shù)來(lái)操縱持久化對(duì)象,用CGLI

16、B的編程接口來(lái)替換持久化類的對(duì)象和方法。國(guó)外的這種技術(shù)就可以很容易地處理大量不同類別的持久化對(duì)象,增加開(kāi)發(fā)的效率。1.3.2 國(guó)內(nèi)技術(shù)狀況在國(guó)內(nèi),商務(wù)網(wǎng)站開(kāi)發(fā)大都是照搬國(guó)外的開(kāi)發(fā)模式。由于國(guó)內(nèi)大都是中小型企業(yè),所以一般采用SQL Server數(shù)據(jù)庫(kù)。采用Struts技術(shù)的網(wǎng)站很少,它在國(guó)內(nèi)還未成為一種主流的開(kāi)發(fā)技術(shù),其中最主要原因是由于國(guó)內(nèi)很多服務(wù)器平臺(tái)都是WINNT/WINDOWS2K,并且ICP服務(wù)商并未提供相關(guān)服務(wù)。ASP技術(shù)是國(guó)內(nèi)商務(wù)網(wǎng)站的主要實(shí)現(xiàn)技術(shù),其中運(yùn)用Ad Rotator組件、Browser Capabilities組件、File Access組件這三個(gè)組件來(lái)實(shí)現(xiàn)ASP程序的

17、主要功能,同時(shí)運(yùn)用VBScript和Jscript腳本語(yǔ)言來(lái)完成Web應(yīng)用程序的開(kāi)發(fā)。同國(guó)外的實(shí)現(xiàn)技術(shù)相比,無(wú)論是在網(wǎng)站的可移植性上,還是在開(kāi)發(fā)效率上都有一定的差距。1.4 關(guān)于系統(tǒng)開(kāi)發(fā)技術(shù)1.4.1 關(guān)于Struts技術(shù)本網(wǎng)站的開(kāi)發(fā)在技術(shù)上主要采用的是J2EE技術(shù),其中主要包括的是Struts和Hibernate技術(shù),首先介紹一個(gè)Struts技術(shù)的相關(guān)內(nèi)容。Struts是一個(gè)基于Sun J2EE平臺(tái)的MVC框架,是Apache基金會(huì)項(xiàng)目下屬的一個(gè)子項(xiàng)目,Struts的前身是Craig R.McClanahan編寫的JSP Model2架構(gòu)之Application Framework。Stru

18、ts在英文中的意思是支架、支撐的意思,這體現(xiàn)出Struts在開(kāi)發(fā)Web應(yīng)用程序過(guò)程所起到的重要作用,開(kāi)發(fā)人員可以使用Struts為業(yè)務(wù)應(yīng)用的每一層提供框架支持,其中主要采用的是Servlet和JSP技術(shù)來(lái)實(shí)現(xiàn)的,Struts可以簡(jiǎn)化遵循MVC設(shè)計(jì)模式的Web應(yīng)用的開(kāi)發(fā)工作,很好地實(shí)現(xiàn)代碼重用,使開(kāi)發(fā)人員從繁瑣的工作中解脫出來(lái),快速開(kāi)發(fā)具有強(qiáng)可擴(kuò)展性的Web應(yīng)用。從而能夠縮短開(kāi)發(fā)周期、提高開(kāi)發(fā)效率。Struts作為一個(gè)經(jīng)典的MVC框架,其核心思想是將整個(gè)程序代碼分成相對(duì)獨(dú)立而又能協(xié)同工作的3個(gè)組成部分,即模型-視圖-控制器2。(1)模型(Model)即業(yè)務(wù)邏輯層。它實(shí)現(xiàn)具體的業(yè)務(wù)邏輯、狀態(tài)管理的

19、功能。一般Model模型部分從概念上可以分為系統(tǒng)的內(nèi)部狀態(tài)和改變系統(tǒng)狀態(tài)的動(dòng)作這兩類。Struts中的Model部分一般由JavaBean以及EJB(即企業(yè)級(jí)JavaBean)組成。(2)視圖(View)即表示層。通過(guò)與用戶實(shí)現(xiàn)交互的界面,實(shí)現(xiàn)數(shù)據(jù)的輸入和輸出功能。Struts中的View視圖部分依然采用JSP來(lái)實(shí)現(xiàn)。此外,Struts還提供了豐富的自定義標(biāo)記庫(kù),View部分使用這些自定義標(biāo)記同樣可以實(shí)現(xiàn)Model部分的有效交互并能夠增強(qiáng)顯示功能。(3)控制器(Controller)即控制層。它起到控制整個(gè)業(yè)務(wù)流程的作用,實(shí)現(xiàn)View和Model部分的協(xié)同工作。Struts中的Controll

20、er控制器部分是通過(guò)專門的Servlet來(lái)實(shí)現(xiàn)的,該Servlet是一個(gè)Struts API中提供的ActionServlet類型的一個(gè)實(shí)例,ActionServlet類主要是通過(guò)繼承javax.servlet.http.HttpServlet類,因此該類實(shí)例可以和普通的Servlet一樣工作,其作用是接收客戶端瀏覽器的請(qǐng)求,然后選擇執(zhí)行相應(yīng)的業(yè)務(wù)邏輯,再把響應(yīng)結(jié)果送回客戶端。此層中的Action對(duì)象是開(kāi)發(fā)者定義的類(該類必須是Struts API中提供的Action類的子類)的實(shí)例。在繼承該類的過(guò)程中開(kāi)發(fā)者可以加入具體業(yè)務(wù)邏輯或調(diào)用業(yè)務(wù)邏輯模塊。Action對(duì)象在進(jìn)行了業(yè)務(wù)邏輯的處理以后會(huì)將

21、應(yīng)用程序流程轉(zhuǎn)到合適的View組件,最終將響應(yīng)回送到瀏覽器客戶端。1.4.2 關(guān)于Hibernate技術(shù)Hibernate是一個(gè)面向Java開(kāi)發(fā)環(huán)境的對(duì)象/關(guān)系數(shù)據(jù)庫(kù)映射工具,它提供了一個(gè)符合Java面向?qū)ο缶幊趟枷?、易于使用的?shù)據(jù)庫(kù)持久化解決方案。在Hibernate之前,開(kāi)發(fā)人員要將面向?qū)ο蟮慕M件和關(guān)系數(shù)據(jù)庫(kù)結(jié)合在一起,這往往會(huì)非常麻煩。而借助Hibernate對(duì)象/關(guān)系數(shù)據(jù)庫(kù)映射(ORM)技術(shù),可以很輕松地以面向?qū)ο笏枷氲姆绞桨逊庋b對(duì)象的各個(gè)狀態(tài)數(shù)據(jù)映射到基于SQL的關(guān)系模型數(shù)據(jù)結(jié)構(gòu)中去,在Hibernate中最核心的技術(shù)就是ORM,所謂ORM,簡(jiǎn)單地說(shuō)就是將Java中的對(duì)象與對(duì)象的關(guān)系

22、,對(duì)應(yīng)到關(guān)系型數(shù)據(jù)庫(kù)中的表格與表格之間的關(guān)系,Hibernate提供了這個(gè)過(guò)程中自動(dòng)化對(duì)應(yīng)轉(zhuǎn)換的方案,在Java程序與數(shù)據(jù)庫(kù)之間進(jìn)行轉(zhuǎn)換時(shí),只需要事先定義好對(duì)象與數(shù)據(jù)庫(kù)表格之間的對(duì)應(yīng),那么以后就可以直接用面向?qū)ο蟮脑O(shè)計(jì)方法編寫程序了,而不需要進(jìn)行特定的與SQL之間的轉(zhuǎn)換,這樣就可以減少SQL和JDBC處理數(shù)據(jù)的時(shí)間。Hibernate本身不僅僅是一種簡(jiǎn)單的軟件開(kāi)發(fā)的架構(gòu),更是一種值得推廣的數(shù)據(jù)持久化解決方案3。1.4.3 關(guān)于MySQL數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)技術(shù)從60年代中期一直到現(xiàn)在,它的發(fā)展速度之快是其他技術(shù)所不及的。它已由第一代的層次型、網(wǎng)狀型數(shù)據(jù)庫(kù),第二代的關(guān)系型數(shù)據(jù)庫(kù)發(fā)展到今天以面向?qū)ο鬄橹饕?/p>

23、模型的數(shù)據(jù)庫(kù),即第三代數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)技術(shù)、網(wǎng)絡(luò)通信技術(shù)、面向?qū)ο缶幊碳夹g(shù)和并行計(jì)算機(jī)技術(shù)都促進(jìn)了數(shù)據(jù)庫(kù)的廣泛應(yīng)用。在現(xiàn)在,比較流行的數(shù)據(jù)庫(kù)有Oracle、MySQL、Sybase、Access等。相比較其它數(shù)據(jù)庫(kù)而言,MySQL數(shù)據(jù)庫(kù)可以稱得上是目前運(yùn)行速度最快的SQL語(yǔ)言數(shù)據(jù)庫(kù)之一,它的快速和靈活性足以滿足一個(gè)網(wǎng)站的信息管理工作。由于該數(shù)據(jù)庫(kù)是完全免費(fèi)的產(chǎn)品,不必支付任何費(fèi)用,所以MySQL數(shù)據(jù)庫(kù)應(yīng)用是開(kāi)發(fā)中小型網(wǎng)站的絕佳選擇,本網(wǎng)站就采用MySQL數(shù)據(jù)庫(kù)。MySQL數(shù)據(jù)庫(kù)是由瑞典的MySQL AB公司開(kāi)發(fā)、發(fā)布和支持的一個(gè)數(shù)據(jù)庫(kù)管理系統(tǒng)。MySQL具有快速性、多線程和健壯性的特點(diǎn),并且支持

24、不同的后端、多個(gè)不同的客戶程序和庫(kù)、管理工具和廣泛的應(yīng)用程序程序接口。在MySQL 5.0中開(kāi)始支持存儲(chǔ)過(guò)程、觸發(fā)器、視圖、信息架構(gòu)視圖等新特性。這為MySQL數(shù)據(jù)庫(kù)的使用者提供了更方便和完善的數(shù)據(jù)庫(kù)開(kāi)發(fā)技術(shù)。其中MySQL中最具代表性的特點(diǎn)有以下幾個(gè)方面。(1)MySQL支持在不同操作系統(tǒng)下的運(yùn)行。簡(jiǎn)單地說(shuō),MySQL可以支持Windows95/98/NT/2000以及UNIX、Linux和SUN OS等多種操作系統(tǒng)平臺(tái)。這就實(shí)現(xiàn)了在一個(gè)操作系統(tǒng)中實(shí)現(xiàn)的應(yīng)用可以很方便地移植到其他的操作系統(tǒng)中。(2)MySQL有一個(gè)非常靈活而且安全的權(quán)限和口令系統(tǒng)。當(dāng)客戶與MySQL服務(wù)器連接時(shí),其中所有的口

25、令傳送被加密。同時(shí)MySQL數(shù)據(jù)庫(kù)支持ODBC for Windows,支持所有的ODBC 2.5函數(shù)和其他許多函數(shù),這就使得MySQL的應(yīng)用被大大地?cái)U(kuò)展4。(3)MySQL支持大型的數(shù)據(jù)庫(kù)。它可以方便地支持上千萬(wàn)條記錄的數(shù)據(jù)庫(kù)。作為一個(gè)開(kāi)放源代碼的數(shù)據(jù)庫(kù),MySQL可以針對(duì)不同的應(yīng)用進(jìn)行相應(yīng)的修改。 (4)MySQL擁有一個(gè)非??焖俣曳€(wěn)定的基于線程的內(nèi)存分配系統(tǒng),可以持續(xù)使用而不必?fù)?dān)心其穩(wěn)定性。事實(shí)上,MySQL的穩(wěn)定性足以應(yīng)付一個(gè)超大規(guī)模的數(shù)據(jù)庫(kù)。同時(shí)MySQL數(shù)據(jù)庫(kù)具有強(qiáng)大的查詢功能,支持查詢的SELECT和WHERE語(yǔ)句的全部運(yùn)算符和函數(shù),并且可以在同一查詢中調(diào)用來(lái)自不同數(shù)據(jù)庫(kù)的表,

26、從而使得查詢變得快捷和方便。第2章 系統(tǒng)的可行性分析及需求分析2.1 可行性分析2.1.1 網(wǎng)站可行性分析概述可行性分析(Feasibility Analysis)也稱為可行性研究,是在系統(tǒng)調(diào)查的基礎(chǔ)上,針對(duì)新系統(tǒng)的開(kāi)發(fā)是否具備必要性和可能性,從技術(shù)、經(jīng)濟(jì)、社會(huì)等方面進(jìn)行分析和研究,以避免投資失誤,保證新系統(tǒng)的開(kāi)發(fā)成功??尚行匝芯康哪康木褪怯米钚〉拇鷥r(jià)在盡可能短的時(shí)間內(nèi)確定問(wèn)題是否能夠解決?,F(xiàn)在人們的消費(fèi)水平越來(lái)越高,特別是年輕人對(duì)電子類產(chǎn)品的需求進(jìn)一步擴(kuò)大,再加上現(xiàn)在電腦產(chǎn)品的不斷更新,越來(lái)越多的電腦銷售廠家加入到網(wǎng)上銷售的行列,因此開(kāi)發(fā)一個(gè)電腦購(gòu)物網(wǎng)站還是可行的。本網(wǎng)站開(kāi)發(fā)之前主要對(duì)系統(tǒng)開(kāi)

27、發(fā)的經(jīng)濟(jì)可行性和技術(shù)可行性兩方面進(jìn)行分析。2.1.2 經(jīng)濟(jì)可行性分析首先,從經(jīng)濟(jì)角度來(lái)分析構(gòu)建網(wǎng)上電腦銷售網(wǎng)站是否可行。由于網(wǎng)絡(luò)應(yīng)用的普及,網(wǎng)上購(gòu)物隊(duì)伍不斷擴(kuò)大,在網(wǎng)上購(gòu)物的人大多數(shù)為年輕人,對(duì)新事物的追求使他們更多地傾向于電子類產(chǎn)品的消費(fèi),這是一項(xiàng)長(zhǎng)期的可觀的收益。同時(shí)通過(guò)構(gòu)建電腦銷售的購(gòu)物網(wǎng)站,不僅僅使企業(yè)節(jié)省大量的廣告費(fèi)用,更是在無(wú)形中樹(shù)立了企業(yè)的形象,建立起企業(yè)的品牌效益,這也是一項(xiàng)持續(xù)性的收益。因此,相對(duì)于項(xiàng)目支出的一次性較大費(fèi)用來(lái)說(shuō),公司獲得的收益將是長(zhǎng)期的、持續(xù)性的。在開(kāi)發(fā)本網(wǎng)站所用的開(kāi)發(fā)工具方面,目前在Windows操作系統(tǒng)下有多個(gè)免費(fèi)開(kāi)發(fā)工具供JAVA程序開(kāi)發(fā)人員選擇。其中I

28、BM公司更是把其原有的商業(yè)軟件Visual Age For Java 實(shí)行開(kāi)放源碼化,建立一個(gè)新的組織并開(kāi)發(fā)了Eclipse開(kāi)發(fā)工具供JAVA開(kāi)發(fā)人員免費(fèi)下載使用,再加上Apache基金會(huì)的核心項(xiàng)目Tomcat也是完全免費(fèi)和開(kāi)源的,這樣就為整個(gè)網(wǎng)站的開(kāi)發(fā)節(jié)省了大量的投資。因此,公司網(wǎng)上電腦購(gòu)物網(wǎng)站的構(gòu)建在經(jīng)濟(jì)上可行。2.1.3 技術(shù)可行性分析本系統(tǒng)采用的是基于B/S(瀏覽器/服務(wù)器)的模型進(jìn)行設(shè)計(jì),因?yàn)榛跒g覽器客戶端的應(yīng)用程序比傳統(tǒng)的基于客戶機(jī)/服務(wù)器的應(yīng)用程序有許多優(yōu)點(diǎn)。這些優(yōu)點(diǎn)包括幾乎沒(méi)有限制的客戶端訪問(wèn)(只需要通過(guò)瀏覽器,而不需要為系統(tǒng)開(kāi)發(fā)專有的客戶端程序)和極其簡(jiǎn)化的應(yīng)用程序部署和管

29、理(要更新一個(gè)應(yīng)用程序,管理人員只需要更改一個(gè)基于服務(wù)器的程序,而不是成千上萬(wàn)的安裝在客戶端的應(yīng)用程序)??紤]到系統(tǒng)的可移植性,所以采用當(dāng)今比較成熟并且比較流行的Java Web開(kāi)發(fā)技術(shù),如JSP、Servlet、Hibernate等,隨著越來(lái)越多的供應(yīng)商將Java Web技術(shù)支持添加到他們的產(chǎn)品中,我們可以使用自己所選擇的服務(wù)器和工具,而更改工具或服務(wù)器并不影響當(dāng)前的應(yīng)用。在數(shù)據(jù)庫(kù)服務(wù)器上選用中小企業(yè)常用的靈活穩(wěn)定的MySQL數(shù)據(jù)庫(kù),它能夠處理大量的數(shù)據(jù)并且保持?jǐn)?shù)據(jù)的完整性以及提供許多高級(jí)管理功能。在硬件方面,現(xiàn)在的硬件更新速度越來(lái)越快,可靠性也越來(lái)越高,價(jià)格也很便宜,其硬件的平臺(tái)完全能夠滿

30、足本系統(tǒng)的需要。再加上隨著我國(guó)信息技術(shù)的不斷發(fā)展,相繼建立了如中國(guó)公眾多媒體通信網(wǎng)、China Net等網(wǎng)絡(luò)基礎(chǔ)設(shè)施,這為商務(wù)網(wǎng)站的開(kāi)發(fā)提供了很好的網(wǎng)絡(luò)基礎(chǔ)設(shè)施。大家都知道,作為一個(gè)購(gòu)物網(wǎng)站,它的安全性是非常重要的,現(xiàn)在的加密算法、CA數(shù)字認(rèn)證等技術(shù)很好的解決了這個(gè)問(wèn)題,網(wǎng)絡(luò)安全技術(shù)實(shí)現(xiàn)了網(wǎng)絡(luò)傳輸數(shù)據(jù)的安全性、完整性以及交易雙方的不可毀約性、身份認(rèn)證等功能5。關(guān)于交易雙方在支付技術(shù)上可以通過(guò)采用支付網(wǎng)關(guān)實(shí)現(xiàn)雙方的電子貨幣結(jié)算,加速交易過(guò)程的實(shí)現(xiàn)。在電子商務(wù)法律保障方面,國(guó)家頒布了一系列的電子商務(wù)法,這樣就解決了電子商務(wù)活動(dòng)中的法律技術(shù)問(wèn)題,有利于交易的正常進(jìn)行,使網(wǎng)上購(gòu)物的經(jīng)營(yíng)活動(dòng)得到法律的保

31、護(hù)。因此,有了像這些網(wǎng)絡(luò)安全技術(shù)、Web開(kāi)發(fā)技術(shù)、以及各種安全協(xié)議技術(shù),本網(wǎng)站的開(kāi)發(fā)在技術(shù)上是可行的。2.2 需求分析在進(jìn)行完可行性分析之后,就需要對(duì)整個(gè)系統(tǒng)進(jìn)行需求分析。由于本網(wǎng)站要實(shí)現(xiàn)網(wǎng)上查詢商品、購(gòu)買商品、用戶信息注冊(cè)登錄管理等功能。這就要求系統(tǒng)中數(shù)據(jù)庫(kù)結(jié)構(gòu)能夠充分滿足各種信息的輸出和輸入,收集基本的數(shù)據(jù)、數(shù)據(jù)結(jié)構(gòu)以及數(shù)據(jù)處理的流程。系統(tǒng)處理數(shù)據(jù)流程圖如圖2-1所示。圖2-1 系統(tǒng)處理數(shù)據(jù)流程圖系統(tǒng)需求分析中所需的數(shù)據(jù)字典設(shè)計(jì)如下。(1)商品基本信息,其中包括商品編號(hào)、商品分類編號(hào)、商品名稱、商品價(jià)格、銷售價(jià)格、商品描述,商品詳細(xì)介紹、銷售數(shù)量、上貨日期、商品圖片存放路徑這幾個(gè)數(shù)據(jù)項(xiàng)。(

32、2)商品類別信息,其中包括商品分類編號(hào)、商品分類名稱這兩個(gè)數(shù)據(jù)項(xiàng)。(3)會(huì)員基本信息,其中包括用戶編號(hào)、用戶名、密碼、用戶姓名、用戶電話、用戶地址、郵政編碼、用戶郵件地址這幾個(gè)數(shù)據(jù)項(xiàng)。(4)訂單信息,其中包括訂單編號(hào)、生成訂單的編號(hào)、用戶編號(hào)、收貨人姓名,收貨地址、郵政編碼、聯(lián)系電話、付款方式、價(jià)格、備注說(shuō)明等數(shù)據(jù)項(xiàng)。(5)訂單細(xì)目信息,其中包括有編號(hào)、訂單編號(hào)、商品編號(hào)、訂購(gòu)數(shù)量等數(shù)據(jù)項(xiàng)。(6)管理員基本信息,其中包括用戶編號(hào)、用戶名、密碼這幾個(gè)數(shù)據(jù)項(xiàng)。由于本系統(tǒng)需要實(shí)現(xiàn)網(wǎng)上查詢商品、購(gòu)買商品、產(chǎn)生相應(yīng)訂單等功能,根據(jù)系統(tǒng)需要所要完成的具體任務(wù)如下。(1)對(duì)于商品查詢功能,需要實(shí)現(xiàn)當(dāng)用戶進(jìn)入

33、網(wǎng)上電腦商城時(shí),可以通過(guò)主頁(yè)面的分類查看最新的商品信息,例如:按照不同的筆記本電腦的品牌查看,同時(shí)還應(yīng)該提供按照商品名稱或者型號(hào)等關(guān)鍵字快速查詢所需商品信息的功能。(2)對(duì)于購(gòu)物車管理功能,需要實(shí)現(xiàn)當(dāng)用戶選擇購(gòu)買某種商品時(shí),能夠?qū)?duì)應(yīng)商品的價(jià)格、數(shù)量等信息記錄到購(gòu)物車中,并允許用戶返回到其他商品信息查詢頁(yè)面,繼續(xù)選擇其他商品。同時(shí)用戶還應(yīng)該可以在購(gòu)物車中執(zhí)行刪除所購(gòu)商品、添加新商品及清除購(gòu)物車等操作。(3)對(duì)于訂單查看功能,需要實(shí)現(xiàn)在用戶選擇去收銀臺(tái)之后,提示用戶選擇送貨方式及付款方式,最終生成對(duì)應(yīng)的訂單記錄。(4)對(duì)于會(huì)員信息管理功能,主要是為了實(shí)現(xiàn)網(wǎng)上商城相關(guān)用戶信息的注冊(cè)及身份驗(yàn)證,同時(shí)

34、也應(yīng)該允許用戶修改自己的相關(guān)資料。(5)對(duì)于商品分類管理功能,主要是為了能夠使管理人員可以根據(jù)需要增加新的商品類別,也可以對(duì)己有的類別進(jìn)行修改、刪除等操作。(6)對(duì)于商品基本信息管理功能,主要是為了確保網(wǎng)上電腦商城中商品信息的實(shí)效性,管理人員可以隨時(shí)增加新的商品信息,同時(shí)也可以對(duì)原有的商品信息進(jìn)行修改及刪除等操作。(7)對(duì)于訂單處理功能,主要是為了管理人員能夠及時(shí)的查詢訂單信息,以便于網(wǎng)站配貨人員依據(jù)訂單信息進(jìn)行后續(xù)的出貨、送貨的處理。圖2-2 網(wǎng)站前臺(tái)用例圖(8)對(duì)于會(huì)員管理功能,主要是為了管理人員能夠查詢對(duì)應(yīng)的用戶信息,并可以刪除指定用戶的相關(guān)信息,這對(duì)于確保用戶信息的有效性會(huì)非常的有幫助

35、。本購(gòu)物網(wǎng)站所需前臺(tái)用例圖如圖2-2所示。第3章 系統(tǒng)概要設(shè)計(jì)3.1 系統(tǒng)的選型所謂系統(tǒng)的選型實(shí)際上也就是根據(jù)系統(tǒng)功能的實(shí)際需求,選擇合適的軟件架構(gòu)及開(kāi)發(fā)工具。對(duì)于購(gòu)物網(wǎng)站來(lái)說(shuō),系統(tǒng)的可靠性和穩(wěn)定性的要求比較高?,F(xiàn)在開(kāi)發(fā)此類網(wǎng)站比較流行的B/S設(shè)計(jì)有基于JSP、ASP、PHP、CGI及J2EE等模式。相比較而言PHP的功能比較簡(jiǎn)單,不適合做大的程序。而CGI的效率較低,所以也不考慮。選擇J2EE模式就可以方便的對(duì)系統(tǒng)原有的基礎(chǔ)平臺(tái)進(jìn)行擴(kuò)展,從而實(shí)現(xiàn)與其它系統(tǒng)的交互,而且開(kāi)發(fā)效率也非常的高,所以考慮使用J2EE的模式。在實(shí)現(xiàn)技術(shù)上選擇Struts架構(gòu)作為開(kāi)發(fā)的主體框架,利用經(jīng)典的MVC設(shè)計(jì)模式。

36、在數(shù)據(jù)庫(kù)處理上考慮到Hibernate技術(shù)有著很高的開(kāi)發(fā)效率、及具有代碼重用性高、易于維護(hù)等優(yōu)點(diǎn),所以把Hibernate作為數(shù)據(jù)持續(xù)性處理層的實(shí)現(xiàn)技術(shù)6。開(kāi)發(fā)工具主要使用免費(fèi)的Eclipse開(kāi)發(fā)工具。3.2 系統(tǒng)的運(yùn)行架構(gòu)為了增加系統(tǒng)的可擴(kuò)展性和數(shù)據(jù)吞吐量,提高并發(fā)處理的客戶請(qǐng)求數(shù)量,本網(wǎng)站在設(shè)計(jì)開(kāi)發(fā)的過(guò)程中選用了Tomcat作為后臺(tái)服務(wù)器,對(duì)于數(shù)據(jù)庫(kù)方面,考慮到并不需要在數(shù)據(jù)層借助存儲(chǔ)過(guò)程及數(shù)據(jù)庫(kù)服務(wù)器端函數(shù)封裝過(guò)多的業(yè)務(wù)邏輯數(shù)據(jù)庫(kù),因此選用了相對(duì)小巧但功能強(qiáng)大的MySQL數(shù)據(jù)庫(kù)。如果要想把該網(wǎng)站布置到其他的主機(jī)上,那么該主機(jī)必須具備如下條件。(1)在服務(wù)器操作系統(tǒng)選擇上,客戶端需要Mic

37、roSoft Windows 2000、 Window XP或者Linux操作系統(tǒng)等。(2)在數(shù)據(jù)庫(kù)選擇上,需要MySQL 5.0及以上版本。(3)在Web服務(wù)器選擇上,需要Tomcat 5.0.19及以上版本,配合Struts開(kāi)發(fā)架構(gòu)及Hibernate開(kāi)發(fā)架構(gòu)。(4)在客戶端運(yùn)行環(huán)境選擇上,需要能運(yùn)行IE4以上或Netscape4.5以上瀏覽器的操作系統(tǒng)。(5)在客戶端運(yùn)行工具選擇上,需要可以使用IE4以上的任意版本瀏覽器。本網(wǎng)站采用JSP+Servlet+Struts+Hibernate為網(wǎng)站實(shí)現(xiàn)技術(shù),建立基于MySQL數(shù)據(jù)庫(kù)系統(tǒng)的核心動(dòng)態(tài)網(wǎng)頁(yè),實(shí)現(xiàn)電子商務(wù)網(wǎng)站購(gòu)物的各個(gè)功能模塊。本網(wǎng)站

38、的表示層均采用完全符合HTML4.0、DHTML及Struts標(biāo)記庫(kù)的頁(yè)面實(shí)現(xiàn)技術(shù),也采用了優(yōu)化頁(yè)面的代碼和圖片技術(shù)7。3.3 系統(tǒng)模塊的劃分經(jīng)過(guò)對(duì)系統(tǒng)的需求分析、可行性分析等相關(guān)工作,結(jié)合本購(gòu)物網(wǎng)站的實(shí)際,首先對(duì)網(wǎng)頁(yè)中欄目進(jìn)行設(shè)定。(1)在首頁(yè)中需要提供以下幾個(gè)操作界面,本網(wǎng)站熱點(diǎn)推薦產(chǎn)品顯示、各子欄目的導(dǎo)航、客戶的注冊(cè)登錄界面、產(chǎn)品分類查詢及關(guān)鍵字搜索界面和熱銷產(chǎn)品排行榜。(2)用戶注冊(cè)登錄管理主要用來(lái)實(shí)現(xiàn)用戶的注冊(cè)及登錄管理的功能。此外,還應(yīng)提供修改用戶資料的操作界面。(3)產(chǎn)品檢索主要提供產(chǎn)品分類顯示、按照產(chǎn)品名稱關(guān)鍵字進(jìn)行搜索,熱銷產(chǎn)品排行榜顯示等。(4)用戶購(gòu)物管理主要提供用戶購(gòu)物

39、車的顯示和管理、訂單生成及查看、付款方式的顯示信息等。(5)管理員產(chǎn)品信息管理主要提供產(chǎn)品信息的增加、刪除及修改。以及產(chǎn)品類別的增加、刪除及修改功能。(6)管理員訂單管理主要是接收客戶最新訂單,并對(duì)訂單進(jìn)行有效分配、處理。(7)管理員對(duì)用戶管理主要是提供網(wǎng)站管理員用戶信息的維護(hù)管理功能。商務(wù)網(wǎng)站后臺(tái)系統(tǒng)的開(kāi)發(fā),一般是依據(jù)根據(jù)前臺(tái)網(wǎng)頁(yè)中欄目的設(shè)定來(lái)進(jìn)行功能模塊的劃分,因此針對(duì)以上網(wǎng)站中各個(gè)欄目的相關(guān)設(shè)置,可以確定出本購(gòu)物網(wǎng)站的各個(gè)功能模塊,對(duì)應(yīng)的網(wǎng)站開(kāi)發(fā)模塊圖如圖3-1所示。各個(gè)模塊的主要功能如下所述。(1)用戶注冊(cè)登錄管理模塊,主要用于建立企業(yè)固定的客戶群體,并能詳細(xì)記錄客戶檔案,以便于通過(guò)客

40、戶檔案庫(kù)將企業(yè)新產(chǎn)品與企業(yè)動(dòng)態(tài)方便地傳達(dá)給每一個(gè)客戶。(2)產(chǎn)品檢索查詢管理模塊,主要便于用戶搜索所需商品,并了解相關(guān)的商品信息。同時(shí)將對(duì)應(yīng)產(chǎn)品銷售情況即使反饋給客戶,以引導(dǎo)客戶的購(gòu)物選擇。(3)購(gòu)物管理模塊,該模塊主要用于宣傳公司產(chǎn)品,讓客戶通過(guò)網(wǎng)站便能自由地選擇購(gòu)買企業(yè)的產(chǎn)品。(4)產(chǎn)品信息管理模塊,主要是為了確保網(wǎng)上電腦商城中商品信息的時(shí)效性而提供的一個(gè)商品信息維護(hù)管理模塊。(5)訂單管理模塊,該模塊主要用于接收客戶最新訂單,并對(duì)訂單進(jìn)行有效分配、處理。(6)用戶信息管理模塊,該模塊主要用于實(shí)現(xiàn)對(duì)網(wǎng)站維護(hù)管理用戶的增加、刪除及修改8。3.4 系統(tǒng)各組件功能的劃分有了上一節(jié)中對(duì)系統(tǒng)功能模塊

41、的劃分,就可以對(duì)系統(tǒng)中所用到的各個(gè)組件的功能進(jìn)行劃分,由于本系統(tǒng)開(kāi)發(fā)過(guò)程中采用的是Strut和Hibernate技術(shù),其中所用到的組件主要有控制器組件、視圖組件、模型組件和數(shù)據(jù)庫(kù)關(guān)系映射組件這四種組件,在控制器組件上采用的是Servlet組件來(lái)實(shí)現(xiàn),在視圖組件上采用的是JSP組件來(lái)實(shí)現(xiàn),在模型組件上采用的是JavaBean組件來(lái)實(shí)現(xiàn),在數(shù)據(jù)庫(kù)關(guān)系映射組件上采用的是Hibernate組件來(lái)實(shí)現(xiàn)9。對(duì)于系統(tǒng)中使用的Servlet組件,它是Struts架構(gòu)的核心,該控制器實(shí)際上是模型組件和視圖組件之間的橋梁,是整個(gè)Web應(yīng)用程序的“控制中樞”,該組件根據(jù)本系統(tǒng)的功能所要實(shí)現(xiàn)的功能如下。(1)接受瀏覽

42、器客戶端的處理請(qǐng)求。(2)根據(jù)用戶的不同請(qǐng)求,通過(guò)Struts中的映射文件調(diào)用對(duì)應(yīng)的模型組件來(lái)執(zhí)行相應(yīng)的業(yè)務(wù)邏輯。(3)獲取模型組件業(yè)務(wù)邏輯的處理結(jié)果。(4)根據(jù)當(dāng)前的狀態(tài)數(shù)據(jù)及業(yè)務(wù)邏輯的處理結(jié)果,選擇合適的視圖組件呈現(xiàn)在瀏覽器客戶端。對(duì)于系統(tǒng)中使用的JSP組件,總體上來(lái)說(shuō)主要負(fù)責(zé)為瀏覽器客戶端提供動(dòng)態(tài)頁(yè)面,它在本系統(tǒng)中還具有接受用戶輸入的表單數(shù)據(jù)、表單驗(yàn)證及錯(cuò)誤處理等功能10。對(duì)于系統(tǒng)中使用的JavaBean組件,它主要是封裝和維護(hù)系統(tǒng)狀態(tài)信息,通過(guò)定義相應(yīng)的屬性來(lái)實(shí)現(xiàn)。在本系統(tǒng)中主要作用是維護(hù)單個(gè)顧客的購(gòu)物信息,包括顧客當(dāng)前已選購(gòu)的商品項(xiàng)目信息、顧客的個(gè)人信息等。還需要維護(hù)請(qǐng)求表單中的數(shù)據(jù)

43、,保存MySQL數(shù)據(jù)庫(kù)中的數(shù)據(jù)。以上對(duì)本系統(tǒng)中使用的各個(gè)組件功能進(jìn)行了簡(jiǎn)要的分析,下面通過(guò)本網(wǎng)上購(gòu)物系統(tǒng)的部分組成表,更好的從宏觀上了解各個(gè)組件的功能。本系統(tǒng)組成表如表3-1所示。表3-1 系統(tǒng)部分組成表用戶表示層控制處理層數(shù)據(jù)持續(xù)層業(yè)務(wù)邏輯層basket.jspBuyAction.javahibernate.cfg.xmlShopCart.javacashOk.jspDetailAction.javamodel.hbm.xmlOrder.javaerror.jspExitAction.javaDbOperate.javaMember.javadetail.jspFirstAction.jav

44、aHibernateUtil.javaProduct.javaleft.jspweb.xmlConstants.javamain.jspstrut-config.xmlViewList.javaorderOk.jspLoginAction.javaright.jspserchActon.javatop.jspOrderListAction.javawrong.jspViewOrderAction.javalogin.jspViewSortAction.javaindex.jspDelSortAction.javabottom.jspDelProductAction.javalistMain.j

45、spCreateOrderAction.java第4章 系統(tǒng)詳細(xì)設(shè)計(jì)4.1 數(shù)據(jù)庫(kù)設(shè)計(jì)4.1.1 概念結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)結(jié)構(gòu)概念結(jié)構(gòu)設(shè)計(jì)是將分析得到的用戶需求抽象為概念模型的過(guò)程。即在需求分析的基礎(chǔ)上,設(shè)計(jì)出能夠滿足用戶需求的各種實(shí)體以及它們之間的相互關(guān)系概念結(jié)構(gòu)設(shè)計(jì)模型。這樣能夠更好地、更準(zhǔn)確地用某一個(gè)DBMS實(shí)現(xiàn)這些需求,它是整個(gè)數(shù)據(jù)庫(kù)設(shè)計(jì)的關(guān)鍵。概念結(jié)構(gòu)的主要特點(diǎn)是能真實(shí)而充分地反映現(xiàn)實(shí)世界,易于理解,易于更改,易于向關(guān)系、網(wǎng)狀、層次型等各種數(shù)據(jù)模型進(jìn)行轉(zhuǎn)換11。描述概念模型的有效工具是E-R模型。通常設(shè)計(jì)概念結(jié)構(gòu)有以下四類方法。(1)自頂向下方法,即首先需要定義全局概念結(jié)構(gòu)的框架,然后進(jìn)行逐

46、步細(xì)化。(2)自底向上方法,即定義各局部應(yīng)用的概念結(jié)構(gòu),然后將它們集成起來(lái),得到全局概念結(jié)構(gòu)。(3)逐步擴(kuò)張方法,即首先定義最重要的核心概念結(jié)構(gòu),然后向外擴(kuò)充,以滾雪球的方式逐步生成其他概念結(jié)構(gòu),直至總體概念結(jié)構(gòu)。(4)混合策略方法,即將自頂向下和自底向上相結(jié)合,用自頂向下策略設(shè)計(jì)一個(gè)全局概念結(jié)構(gòu)的框架,以它為骨架集成由自底向上策略中設(shè)計(jì)的各局部概念設(shè)計(jì)。根據(jù)第二章數(shù)據(jù)庫(kù)需求分析中給出的數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu)之后就可以設(shè)計(jì)出相應(yīng)的本購(gòu)物網(wǎng)站所需要的數(shù)據(jù)信息實(shí)體,具體的實(shí)體包括訂單細(xì)目信息實(shí)體、會(huì)員基本信息實(shí)體、商品基本信息實(shí)體、管理員基本信息實(shí)體、訂單信息實(shí)體、商品類別信息實(shí)體這六個(gè)信息實(shí)體。由于本

47、系統(tǒng)在進(jìn)行概念結(jié)構(gòu)設(shè)計(jì)時(shí)采用了混合策略的方法,所以需要先對(duì)整個(gè)系統(tǒng)進(jìn)行概念結(jié)構(gòu)的框架設(shè)計(jì),系統(tǒng)的整體E-R圖如圖4-1所示。圖4-1 系統(tǒng)整體E-R圖訂單細(xì)目信息實(shí)體中應(yīng)包含編號(hào)、訂單編號(hào)、商品編號(hào)、訂購(gòu)數(shù)量和價(jià)格信息。訂單細(xì)目信息實(shí)體圖如圖4-2所示。圖4-2 訂單細(xì)目信息實(shí)體圖會(huì)員基本信息實(shí)體中應(yīng)包含用戶編號(hào)、用戶名、用戶密碼、用戶姓名、用戶電話、用戶地址、郵政編碼、郵件地址信息。會(huì)員基本信息實(shí)體如圖4-3所示。圖4-3 會(huì)員信息實(shí)體圖商品基本信息實(shí)體中應(yīng)包含商品編號(hào)、商品分類編號(hào)、商品名稱、商品價(jià)格、商品銷售數(shù)量、銷售價(jià)格、商品上貨日期等信息。商品基本信息實(shí)體圖如圖4-4所示。圖4-4

48、商品基本信息實(shí)體圖管理員信息實(shí)體中應(yīng)包含用戶編號(hào)、用戶名、密碼信息。管理員信息實(shí)體圖如圖4-5所示。圖4-5 管理員信息實(shí)體圖訂單信息實(shí)體中應(yīng)包含訂單編號(hào)、生成訂單號(hào)、用戶編號(hào)、收貨人姓名、收貨地址、郵政編碼、聯(lián)系電話、付款方式、郵件地址、備注說(shuō)明、價(jià)格訂單生成時(shí)間、訂單是否處理這些信息。其具體的訂單信息實(shí)體圖如圖4-6所示。圖4-6 訂單信息實(shí)體圖商品類別實(shí)體中應(yīng)包含商品分類編號(hào)和商品分類名稱這兩項(xiàng)信息,商品類別實(shí)體圖如圖4-7所示。圖4-7 商品類別實(shí)體圖4.1.2 邏輯結(jié)構(gòu)設(shè)計(jì)概念結(jié)構(gòu)是獨(dú)立于任何一種數(shù)據(jù)模型的信息結(jié)構(gòu)。而邏輯結(jié)構(gòu)的任務(wù)就是把在概念結(jié)構(gòu)設(shè)計(jì)階段設(shè)計(jì)好的基本E-R圖轉(zhuǎn)換為具

49、體的數(shù)據(jù)庫(kù)管理系統(tǒng)支持的數(shù)據(jù)模型,也就是導(dǎo)出與特定的DBMS產(chǎn)品所支持的數(shù)據(jù)模型相符合的邏輯結(jié)構(gòu),在功能、性能、完整性和一致性約束方面滿足應(yīng)用要求。特定的DBMS可以支持的數(shù)據(jù)模型包括層次模型、網(wǎng)狀模型、關(guān)系模型、面向?qū)ο竽P偷?。一般?lái)說(shuō),設(shè)計(jì)數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)時(shí)要分如下兩步進(jìn)行。(1)將概念結(jié)構(gòu)設(shè)計(jì)所得的E-R圖轉(zhuǎn)換為關(guān)系模型。關(guān)系模型是由一組關(guān)系組成,而E-R模型則是由實(shí)體、實(shí)體屬性、實(shí)體間的關(guān)系三個(gè)要素組成。所以要將E-R模型轉(zhuǎn)換為關(guān)系模型,就是將實(shí)體、屬性和聯(lián)系都要轉(zhuǎn)換為相應(yīng)的關(guān)系模型。主要的原則是一個(gè)實(shí)體類型轉(zhuǎn)換為一個(gè)關(guān)系模型、一個(gè)1:1聯(lián)系可以轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式、一個(gè)1:n聯(lián)系可

50、以轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式、一個(gè)m:n聯(lián)系轉(zhuǎn)換為一個(gè)關(guān)系模式、三個(gè)或三個(gè)以上實(shí)體間的一個(gè)多元聯(lián)系可以轉(zhuǎn)換為一個(gè)關(guān)系模式、具有相同碼的關(guān)系模式可以合并這幾個(gè)方面。(2)對(duì)關(guān)系模型進(jìn)行優(yōu)化。邏輯結(jié)構(gòu)設(shè)計(jì)的結(jié)果并不是唯一的,為了進(jìn)一步提高數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的性能,還應(yīng)該根據(jù)應(yīng)用的需要對(duì)邏輯數(shù)據(jù)模型進(jìn)行適當(dāng)?shù)男薷暮驼{(diào)整,這就是數(shù)據(jù)模型的優(yōu)化。其具體的方法有確定各屬性間的數(shù)據(jù)依賴、判斷每個(gè)關(guān)系模式的范式、分析這些模式是否適用于特定的應(yīng)用環(huán)境,以提高數(shù)據(jù)的操作效率和存儲(chǔ)空間的利用率。首先確立各個(gè)表的主鍵字段,對(duì)于商品基本信息表選擇商品編號(hào)為主鍵,對(duì)于商品分類基本信息表選擇商品分類編號(hào)為主鍵,對(duì)于用戶基本信息表

51、選擇用戶編號(hào)為主鍵,對(duì)于訂單信息表選擇訂單編號(hào)為主鍵,對(duì)于訂單條目信息表選擇編號(hào)為主鍵,而對(duì)于管理員基本信息表則選擇用戶編號(hào)為主鍵。在確立了各個(gè)表的主鍵字段之后,就可以建立各表之間的關(guān)系,其中商品基本信息表中的分類編號(hào)“sortid”與商品類別表中的“id”為相關(guān)字段,訂單表中的“id”與訂單細(xì)目表中的“orderid”是相關(guān)字段,而訂單細(xì)目表中的“productid”與商品表中的“id”相關(guān)。會(huì)員表中的“id”與訂單表中的“userid”為相關(guān)字段,對(duì)應(yīng)的數(shù)據(jù)庫(kù)關(guān)系圖如圖4-8所示。圖4-8 數(shù)據(jù)庫(kù)關(guān)系圖接著需要將數(shù)據(jù)庫(kù)概念結(jié)構(gòu)轉(zhuǎn)化為MySQL數(shù)據(jù)庫(kù)系統(tǒng)所支持的實(shí)際數(shù)據(jù)模型,也就是數(shù)據(jù)庫(kù)的邏

52、輯結(jié)構(gòu)。以下給出了各個(gè)數(shù)據(jù)庫(kù)表中所包含的字段及描述信息。(1)商品表基本信息表是用來(lái)保存網(wǎng)上電腦商城中每一種商品基本信息的數(shù)據(jù)表,是顯示、維護(hù)及管理商品數(shù)據(jù)的依據(jù),具體的字段及描述信息如表4-1所示。表4-1 商品基本信息表字段名描述類型長(zhǎng)度是否為空是否主鍵id商品編號(hào)INTEGER否是sortid商品分類編號(hào)INTEGER否否name商品名稱VARCHAR50否否price商品價(jià)格DOUBLE否否saleprice銷售價(jià)格DOUBLE4否否descript商品描述TEXT500否否contents商品詳細(xì)介紹TEXT2000是否saledate上貨日期DATE否否salecount銷售數(shù)量I

53、NTEGER是否image商品圖片存放路徑VARCHAR250是否(2)訂單條目信息表用于存放與訂單相關(guān)的具體條目信息,主要包括某訂單中所涉及商品的價(jià)格、訂單的編號(hào)以及訂購(gòu)的數(shù)量等,同時(shí)也方便以后管理員對(duì)客戶的訂單進(jìn)行查詢等相關(guān)的操作。其具體的字段及描述信息如表4-2所示。表4-2 訂單條目信息表字段名描述類型長(zhǎng)度是否為空是否主鍵id編號(hào)INTEGER否是orderid訂單編號(hào)INTEGER否否productid商品編號(hào)INTEGER否否count訂購(gòu)數(shù)量INTEGER否否price該條目對(duì)應(yīng)價(jià)格INTEGER否否(3)商品類別表主要記錄了網(wǎng)上電腦商城中商品分類的相關(guān)信息,以便于對(duì)商品的信息進(jìn)

54、行分類顯示,也便于管理員對(duì)商品進(jìn)行管理,其具體的字段及描述信息如表4-3所示。表4-3 商品類別表字段名描述類型長(zhǎng)度是否為空是否主鍵id商品分類編號(hào)INTEGER否是name商品分類名稱VARCHAR40否否(4)會(huì)員表主要用于存放網(wǎng)上電腦商城中注冊(cè)用戶的信息,包括用戶的姓名、用戶地址、郵政編碼等相關(guān)信息,具體的字段及描述信息如表4-4所示。表4-4 會(huì)員表字段名描述類型長(zhǎng)度是否為空是否主鍵id用戶編號(hào)INTEGER否是username用戶名VARCHAR20否否password密碼VARCHAR20否否realname用戶姓名VARCHAR20是否tel用戶電話VARCHAR20是否addr

55、ess用戶地址VARCHAR100是否zip郵政編碼VARCHAR6是否email郵件地址VARCHAR50是否(5)訂單信息表用于存放在用戶購(gòu)買商品并且確認(rèn)相應(yīng)的訂單之后,所產(chǎn)生的具體訂單信息,包括訂單編號(hào)、用戶編號(hào)等信息。其中具體的字段及描述信息如表4-5所示。表4-5 訂單信息表字段名描述類型長(zhǎng)度是否為空是否主鍵id訂單編號(hào)INTEGER否是orderno生成訂單的編號(hào)VARCHAR50否否userid用戶編號(hào)INTEGER否否realname收貨人姓名VARCHAR20否否address收貨地址VARCHAR100否否zip郵政編碼VARCHAR6是否tel聯(lián)系電話VARCHAR20是否payment付款方式VARCHAR20是否email電子郵件

溫馨提示

  • 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ù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論