版權(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> 畢 業(yè) 設(shè) 計(jì)</b></p><p> 題 目: 在線交易平臺(tái)設(shè)計(jì)與實(shí)現(xiàn)</p><p> 院、 系: 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 計(jì)算機(jī)系</p><p> 姓 名: </p><p> 指導(dǎo)教師: </p><p
2、> 系主任: </p><p> 2010年6月23日</p><p> 畢業(yè)設(shè)計(jì)(論文)評(píng)語(yǔ)</p><p> 畢業(yè)設(shè)計(jì)(論文)任務(wù)書(shū)</p><p> 在線交易平臺(tái)設(shè)計(jì)與實(shí)現(xiàn)</p><p><b> 摘 要</b></p><p&g
3、t; 隨著Internet技術(shù)的飛速發(fā)展,人們的生活和Internet的關(guān)系越來(lái)越密切,如何通過(guò)Internet抓住商機(jī)成為擺在人們面前的一個(gè)重要話題。電子商務(wù)代表著未來(lái)貿(mào)易方式的發(fā)展方向,其應(yīng)用和推廣將給社會(huì)和經(jīng)濟(jì)帶來(lái)極大的效益。因此,一個(gè)能夠?qū)崿F(xiàn)在線購(gòu)物功能的系統(tǒng)的開(kāi)發(fā)就成了當(dāng)務(wù)之急。</p><p> 本購(gòu)物系統(tǒng)是一個(gè)基于Internet,采用B2C(Business to Consumers)模式,并
4、根據(jù)現(xiàn)有的網(wǎng)上購(gòu)物系統(tǒng)的現(xiàn)狀而設(shè)計(jì)開(kāi)發(fā)的電子商務(wù)平臺(tái)。它不但可以擴(kuò)大商家的規(guī)模和市場(chǎng)影響力,而且可以減少企業(yè)的經(jīng)營(yíng)成本,提高工作效率。為用戶(hù)提供了會(huì)員注冊(cè),購(gòu)物車(chē)管理,商品搜索,用戶(hù)資料修改等功能。</p><p> 本文主要介紹該系統(tǒng)是如何實(shí)現(xiàn),并詳細(xì)介紹了系統(tǒng)分析、系統(tǒng)設(shè)計(jì)和數(shù)據(jù)庫(kù)設(shè)計(jì)的一些思路和方法。另外,在系統(tǒng)設(shè)計(jì)這一章節(jié)作者列出了實(shí)現(xiàn)在線購(gòu)物過(guò)程的詳細(xì)流程。該系統(tǒng)憑借WEB服務(wù)器和客戶(hù)的瀏覽器,利用電
5、子工具高效率、低成本的特點(diǎn),為客戶(hù)提供交易平臺(tái)、在Internet上發(fā)布商業(yè)信息,使用戶(hù)可以查閱商品、搜索商品、訂購(gòu)商品,為客戶(hù)提供全天候的、更好、更快的商務(wù)活動(dòng)空間。</p><p> 關(guān)鍵詞 電子商務(wù);在線購(gòu)物;JavaWeb</p><p> Design and Implementation of Online Trading </p><p><
6、;b> Abstract</b></p><p> With the fast development of the Internet technology, the relationship between people’s life and Internet is becoming more and more intimate. How to grasp commercial oppor
7、tunity through the Internet is becoming an important topic. The E-Commerce represent the developing direction of the future type of trading. It’s application and popularization will bring great benefit to the society and
8、 economic. So,the development of a system which is able to implement online shopping is becoming an immediate</p><p> The system has mainly provided users with the following functions: membership registrat
9、ion、shopping car management、goods search、information modify etc. It has also provided managers with goods management、customer information management、news management 、ad management and so on. It has been designed with B/S
10、 mode of three-tier structure, JSP technology in dynamic page design. Considering from the security and reusing code of the system, key codes has been secured by JavaBean technology. MySQL dat</p><p> The p
11、aper mainly introduced this, detailed introduced some thoughts and method of system analysis,system design and database analysis.Besides,in the chapter of system design,author listed the detailed algorithm of how to impl
12、ement online shopping.The system rely on Web server and client’s broswer,making use of the electronic instrument’s characteristics of high-efficiency and low-cost,providing a trading flat for client,release bussiness inf
13、ormation in the Internet,enable the user to look up, se</p><p> Keywords E-Commerce;Online Shopping;JavaWeb</p><p><b> 目 錄</b></p><p><b> 摘 要I</b>&l
14、t;/p><p> AbstractII</p><p><b> 第1章 緒論1</b></p><p> 1.1 選題目的和意義1</p><p> 1.2 國(guó)內(nèi)外文獻(xiàn)綜述2</p><p> 1.3 論文研究?jī)?nèi)容3</p><p> 第2章 需求分析
15、4</p><p><b> 2.1 引言4</b></p><p> 2.1.1 背景分析4</p><p> 2.1.2 術(shù)語(yǔ)定義4</p><p> 2.2 任務(wù)概述5</p><p> 2.3 可行性分析5</p><p> 2.3.1 社會(huì)
16、可行性5</p><p> 2.3.2 經(jīng)濟(jì)可行性6</p><p> 2.3.3 技術(shù)可行性6</p><p> 2.4 系統(tǒng)功能分析6</p><p> 2.5 本章小結(jié)6</p><p> 第3章 系統(tǒng)設(shè)計(jì)7</p><p> 3.1 總體結(jié)構(gòu)設(shè)計(jì)7</p&
17、gt;<p> 3.2 系統(tǒng)架構(gòu)設(shè)計(jì)7</p><p> 3.3 設(shè)計(jì)目標(biāo)與用例分析10</p><p> 3.3.1 設(shè)計(jì)目標(biāo)10</p><p> 3.3.2 用例分析10</p><p> 3.4 模塊功能詳細(xì)設(shè)計(jì)11</p><p> 3.4.1 權(quán)限管理模塊功能設(shè)計(jì)11
18、</p><p> 3.4.2 商品顯示模塊功能設(shè)計(jì)15</p><p> 3.4.3 交易模塊功能設(shè)計(jì)18</p><p> 3.4.4 搜索模塊功能設(shè)計(jì)21</p><p> 3.4.5 商品討論模塊功能設(shè)計(jì)21</p><p> 3.5 數(shù)據(jù)庫(kù)數(shù)據(jù)設(shè)計(jì)22</p><p&g
19、t; 3.5.1 數(shù)據(jù)庫(kù)主要實(shí)體類(lèi)圖22</p><p> 3.5.2 數(shù)據(jù)主要實(shí)體描述24</p><p> 3.6本章小結(jié)26</p><p> 第4章 系統(tǒng)實(shí)現(xiàn)27</p><p> 4.1 總體實(shí)現(xiàn)27</p><p> 4.2 后臺(tái)邏輯實(shí)現(xiàn)28</p><p>
20、 4.2.1 持久層實(shí)現(xiàn)28</p><p> 4.2.2 事務(wù)處理28</p><p> 4.2.3 業(yè)務(wù)邏輯層實(shí)現(xiàn)29</p><p> 4.2.4 控制層實(shí)現(xiàn)29</p><p> 4.3 主要模塊功能實(shí)現(xiàn)29</p><p> 4.3.1 權(quán)限管理模塊實(shí)現(xiàn)29</p>&l
21、t;p> 4.3.2 商品顯示模塊實(shí)現(xiàn)30</p><p> 4.3.3 交易模塊功能實(shí)現(xiàn)30</p><p> 4.3.4 搜索模塊功能實(shí)現(xiàn)31</p><p> 4.3.5 商品討論模塊功能實(shí)現(xiàn)31</p><p> 4.3.6 其他功能實(shí)現(xiàn)31</p><p> 4.4 部分頁(yè)面展示
22、32</p><p> 4.5本章小結(jié)35</p><p> 第5章 系統(tǒng)測(cè)試36</p><p> 5.1 測(cè)試用例設(shè)計(jì)與測(cè)試用例的運(yùn)行過(guò)程及測(cè)試結(jié)果分析36</p><p> 5.1.1 模塊測(cè)試36</p><p> 5.1.2 集成測(cè)試36</p><p> 5.1
23、.3 驗(yàn)收測(cè)試37</p><p><b> 5.2 評(píng)價(jià)37</b></p><p> 5.3本章小結(jié)37</p><p><b> 結(jié)論38</b></p><p><b> 致謝39</b></p><p><b>
24、參考文獻(xiàn)40</b></p><p><b> 附錄41 </b></p><p><b> 第1章 緒論</b></p><p> 1.1 選題目的和意義</p><p> 隨著中國(guó)市場(chǎng)經(jīng)濟(jì)的日趨成熟和計(jì)算機(jī)技術(shù)和網(wǎng)絡(luò)技術(shù)的發(fā)展,人們對(duì)信息的獲知程度和廣度都提出了更高的要求
25、。尤其是近年來(lái),商品的種類(lèi)變得五花八門(mén),人們?cè)诓少?gòu)貨物的時(shí)候?qū)ι唐奉?lèi)別、型號(hào)、用途的要求也各不相同,如果采用傳統(tǒng)的將各種類(lèi)別不同型號(hào)的商品都配送至每個(gè)可能需要該商品的地區(qū),就會(huì)增加很多配送方面的成本;同時(shí),買(mǎi)家必須到商店里面去親自選購(gòu)所需的商品也是傳統(tǒng)購(gòu)物方式的弊端。因此網(wǎng)上購(gòu)物這種新的商業(yè)運(yùn)營(yíng)模式就被越來(lái)越多的商家運(yùn)用到競(jìng)爭(zhēng)中去,并得到了大多數(shù)客戶(hù)的認(rèn)可,這種基于瀏覽器、服務(wù)器實(shí)現(xiàn)的購(gòu)物方式已經(jīng)初具規(guī)模,一些在線購(gòu)物網(wǎng)站的成立,改變了
26、人們以往傳統(tǒng)的購(gòu)物觀念。</p><p> 圖1-1是根據(jù)CNNIC(中國(guó)互聯(lián)網(wǎng)絡(luò)信息中心)公布的中國(guó)B2C電子商務(wù)發(fā)展報(bào)告來(lái)進(jìn)一步分析目前的網(wǎng)上購(gòu)物的現(xiàn)狀(主要引用其中的關(guān)于進(jìn)行網(wǎng)絡(luò)購(gòu)物原因的分析圖表)。 </p><p> 圖1-1網(wǎng)絡(luò)購(gòu)物原因調(diào)查圖表</p><p> 從圖1-1可以看出網(wǎng)上購(gòu)物選擇節(jié)約時(shí)間和操作方便的分別占46.7%和44.2%,這說(shuō)明
27、隨著生活節(jié)奏的加快,人們?cè)絹?lái)越希望擁有簡(jiǎn)單快捷的購(gòu)物方式。因此,一個(gè)允許買(mǎi)家在家里就可以瀏覽商家發(fā)布的所有商品信息的在線購(gòu)物系統(tǒng)將大大減輕商家的工作量、降低投資成本。</p><p> 本系統(tǒng)是結(jié)合當(dāng)前傳統(tǒng)購(gòu)物方式消耗大量人力物力的弊端、以當(dāng)前市場(chǎng)上已經(jīng)存在的B2C、C2C等在線購(gòu)物網(wǎng)站為模型,開(kāi)發(fā)出適合于大部分中小型企業(yè)以及個(gè)體用戶(hù)的網(wǎng)上購(gòu)物系統(tǒng)。該系統(tǒng)是在學(xué)習(xí)Java Web相關(guān)知識(shí)的基礎(chǔ)上,熟悉MyEcl
28、ipse開(kāi)發(fā)環(huán)境并能熟練使用Java編程語(yǔ)言的同時(shí),運(yùn)用軟件工程理論知識(shí),開(kāi)發(fā)出的一套基于Java Web的在線購(gòu)物系統(tǒng)。在系統(tǒng)開(kāi)發(fā)的過(guò)程中能夠應(yīng)用所學(xué)的知識(shí),并促進(jìn)本人更深入的學(xué)習(xí)Java Web的相關(guān)特性、積累更多MySQL的相關(guān)應(yīng)用知識(shí),這樣不僅能將所學(xué)的書(shū)面知識(shí)和實(shí)際應(yīng)用結(jié)合起來(lái)達(dá)到學(xué)以致用的目的,同時(shí)也為以后的工作和學(xué)習(xí)積累經(jīng)驗(yàn)[1]。 </p><p> 1.2 國(guó)內(nèi)外文獻(xiàn)綜述</p>
29、<p> 在線交易平臺(tái)即是電子商務(wù)中的一個(gè)分支,學(xué)界普遍認(rèn)為,電子商務(wù)最早產(chǎn)生于60年代,發(fā)展于90年代。近30年來(lái),計(jì)算機(jī)的處理速度越來(lái)越快,處理能力越來(lái)越強(qiáng),價(jià)格越來(lái)越低,應(yīng)用越來(lái)越廣泛,這為電子商務(wù)的應(yīng)用提供了基礎(chǔ);由于INTERNET逐漸成為全球通信與交易的媒體,全球上網(wǎng)用戶(hù)呈級(jí)數(shù)增長(zhǎng)趨勢(shì),快捷、安全、低成本的特點(diǎn)為電子商務(wù)的發(fā)展提供了應(yīng)用條件;信用卡以其方便、快捷、安全等優(yōu)點(diǎn)而成為人們消費(fèi)支付的重要手段,并由此形
30、成了完善的全球性信用卡計(jì)算機(jī)網(wǎng)絡(luò)支付與結(jié)算系統(tǒng),使"一卡在手,走遍全球"成為可能,同時(shí)也為電子商務(wù)中的網(wǎng)上支付提供的重要的手段;1997年5月31日,由美國(guó)VISA和Mastercard國(guó)際組織等聯(lián)合指定的SET(Secure Electronic Transfer Protocol)即電子安全交易協(xié)議的出臺(tái),以及該協(xié)議得到大多數(shù)廠商的認(rèn)可和支持,為在開(kāi)發(fā)網(wǎng)絡(luò)上的電子商務(wù)提供了一個(gè)關(guān)鍵的安全環(huán)境;自1997年歐盟發(fā)布
31、了歐洲電子商務(wù)協(xié)議,美國(guó)隨后發(fā)布"全球電子商務(wù)綱要"以后,電子商務(wù)受到世界各國(guó)政府的重視,許多國(guó)家的政府開(kāi)始嘗試"網(wǎng)上采購(gòu)",這為電子商務(wù)的發(fā)展提供了有利的支持。</p><p> 電子商務(wù)作為一種新型的交易方式,將生產(chǎn)企業(yè)、流通企業(yè)以及消費(fèi)者和政府帶入了一個(gè)網(wǎng)絡(luò)經(jīng)濟(jì)、數(shù)字化生存的新天地;在電子商務(wù)環(huán)境中,人們不再受地域的限制,客戶(hù)能以非常簡(jiǎn)捷的方式完成過(guò)去較為繁雜的商務(wù)
32、活動(dòng),如通過(guò)網(wǎng)絡(luò)銀行能夠全天侯地存取資金帳戶(hù)、查詢(xún)信息等,同時(shí)使得企業(yè)對(duì)客戶(hù)的服務(wù)質(zhì)量可以大大提高;電子商務(wù)能夠規(guī)范事務(wù)處理的工作流程,將人工操作和電子信息處理集成為一個(gè)不可分割的整體,這樣不僅能提高人力和物力的利用,也可以提高系統(tǒng)運(yùn)行的嚴(yán)密性;在電子商務(wù)中,安全性是一個(gè)至關(guān)重要的核心問(wèn)題,它要求網(wǎng)絡(luò)能提供一種端到端的安全解決方案,如加密機(jī)制、簽名機(jī)制、安全管理、存取控制、防火墻、防病毒保護(hù)等等,這與傳統(tǒng)的商務(wù)活動(dòng)有著很大的不同;商務(wù)活
33、動(dòng)本身是一種協(xié)調(diào)過(guò)程,它需要客戶(hù)與公司內(nèi)部、生產(chǎn)商、批發(fā)商、零售商間的協(xié)調(diào),在電子商務(wù)環(huán)境中,它更要求銀行、配送中心、通訊部門(mén)、技術(shù)服務(wù)等多個(gè)部門(mén)的通力協(xié)作,往往電子商務(wù)的全過(guò)程是一氣呵成的。</p><p> 關(guān)于電子商務(wù)方面,我參考查閱了《國(guó)際電子商務(wù)概論》、《電子商務(wù)營(yíng)銷(xiāo)案例》、《網(wǎng)上開(kāi)店行銷(xiāo)指南》、《電子商務(wù)導(dǎo)論》、《電子商務(wù)萬(wàn)事通》、《電子商務(wù)基礎(chǔ)》、《電子商務(wù)教程》、《電子商務(wù)原理》、《中國(guó)電子商務(wù)
34、發(fā)展研究報(bào)告》等電子書(shū)籍、文獻(xiàn),還查看了"電子商務(wù)直通車(chē)網(wǎng)"和"電子商務(wù)研究網(wǎng)",這些的內(nèi)容涵蓋了電子商務(wù)的產(chǎn)生、發(fā)展、概念、性質(zhì)、目標(biāo)和任務(wù)、作用、地位、特點(diǎn)、功能并提供了許多相關(guān)電子商務(wù)的案例。讓我了解到了近現(xiàn)代電子商務(wù)理論和實(shí)踐的基本內(nèi)容和發(fā)展?fàn)顩r,深刻認(rèn)識(shí)到電子商務(wù)的重要性,為論文的寫(xiě)作奠定了理論基礎(chǔ)。</p><p> 1.3 論文研究?jī)?nèi)容</p>
35、<p> 本論文主要研究在線交易平臺(tái)如何設(shè)計(jì)并使用JavaWeb實(shí)現(xiàn)。</p><p> 現(xiàn)在流行的網(wǎng)上購(gòu)物系統(tǒng)不僅要有漂亮的網(wǎng)頁(yè),更要有嚴(yán)謹(jǐn)?shù)囊?guī)劃,注重每一個(gè)細(xì)小的環(huán)節(jié),這樣才能使得在電子交易時(shí)避免不必要錯(cuò)誤發(fā)生。本系統(tǒng)將使用HTML、JSP等技術(shù)來(lái)編輯網(wǎng)頁(yè),并運(yùn)用Hibernate把數(shù)據(jù)庫(kù)和動(dòng)態(tài)網(wǎng)頁(yè)相關(guān)聯(lián)。傳統(tǒng)的管理信息系統(tǒng)信息獲取方法是由專(zhuān)業(yè)文字錄入人員將信息輸入到管理系統(tǒng)的數(shù)據(jù)庫(kù)中,這種方
36、法在數(shù)據(jù)量不大時(shí)有很多的應(yīng)用場(chǎng)合。當(dāng)數(shù)據(jù)量比較大,并且有較強(qiáng)的專(zhuān)業(yè)性時(shí),錄入的費(fèi)用和出錯(cuò)的可能性都相應(yīng)上升。本設(shè)計(jì)在實(shí)際應(yīng)用中的解決方案是建立網(wǎng)站,以及自己的數(shù)據(jù)庫(kù),使得所需商品信息可以及時(shí)的保存、更新,可以更好的及時(shí)了解商品買(mǎi)賣(mài)的情況。</p><p><b> 第2章 需求分析</b></p><p><b> 2.1 引言</b><
37、;/p><p> 本系統(tǒng)使用Struts2+Hibernate3+Ajax+J2EE技術(shù)完成的一個(gè)網(wǎng)上在線購(gòu)物系統(tǒng),模仿新豆網(wǎng)(xindou.com)制作完成,該項(xiàng)目主要完成在線購(gòu)物平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)。</p><p> 2.1.1 背景分析</p><p> 電子商務(wù)的出現(xiàn),是網(wǎng)絡(luò)經(jīng)濟(jì)對(duì)我們現(xiàn)存經(jīng)濟(jì)社會(huì)的體制挑戰(zhàn),尤其是對(duì)企業(yè)傳統(tǒng)的宣傳、經(jīng)營(yíng)模式和理念將會(huì)造成強(qiáng)烈
38、的沖擊。企業(yè)運(yùn)營(yíng)模式的各種問(wèn)題都一個(gè)個(gè)的滋生出來(lái),給企業(yè)帶來(lái)了經(jīng)營(yíng)上的各種匱乏,乃至企業(yè)覆滅的沉重代價(jià);如果企業(yè)能有效解決這些問(wèn)題,在網(wǎng)絡(luò)構(gòu)建全球市場(chǎng)競(jìng)爭(zhēng)的平臺(tái)上,企業(yè)的優(yōu)勢(shì)則會(huì)無(wú)限地放大,使企業(yè)從降低成本、有效商業(yè)信息、高效商業(yè)決策和加快產(chǎn)品流通等方面都會(huì)得到長(zhǎng)足的發(fā)展。</p><p> 真正的電子商務(wù)解決方案應(yīng)是基于客戶(hù)網(wǎng)下現(xiàn)有的資源,為客戶(hù)建立一整套的網(wǎng)上商業(yè)模式。而建立網(wǎng)站只是用技術(shù)的手段使已定的商業(yè)
39、模式在網(wǎng)上得以實(shí)現(xiàn)。</p><p> 面對(duì)對(duì)網(wǎng)站開(kāi)發(fā)擁有不同知識(shí)層面的客戶(hù),項(xiàng)目的負(fù)責(zé)人對(duì)用戶(hù)需求的理解程度在很大程度上決定了此類(lèi)平臺(tái)實(shí)現(xiàn)的成敗。因此如何更好地的了解、分析、明確用戶(hù)需求,并且能夠準(zhǔn)確、清晰以文檔的形式表達(dá)給參與項(xiàng)目開(kāi)發(fā)的每個(gè)成員,保證開(kāi)發(fā)過(guò)程按照滿(mǎn)足用戶(hù)需求為目的正確項(xiàng)目開(kāi)發(fā)方向進(jìn)行,是每個(gè)網(wǎng)站開(kāi)發(fā)項(xiàng)目管理者需要面對(duì)的問(wèn)題,也是需求分析的目的所在。</p><p>
40、 2.1.2 術(shù)語(yǔ)定義</p><p> 1. Java是由Sun Microsystems公司于1995年5月推出的一種程序設(shè)計(jì)語(yǔ)言和該語(yǔ)言平臺(tái)的總稱(chēng)[2]。</p><p> 2. 面向?qū)ο笫浅绦蛟O(shè)計(jì)中采用封裝、繼承、抽象、多態(tài)等設(shè)計(jì)方法[3]。</p><p> 3. servlet是一種服務(wù)器端的Java應(yīng)用程序,具有獨(dú)立于平臺(tái)和協(xié)議的特性,可以生成動(dòng)
41、態(tài)的Web頁(yè)面。</p><p> 4. JSP是Java Server Pages的簡(jiǎn)寫(xiě),是由Sun Microsystems公司倡導(dǎo)、許多公司參與一起建立的一種動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)標(biāo)準(zhǔn)。</p><p> 5. AJAX是Asynchronous JavaScript and XML的簡(jiǎn)寫(xiě),異步JavaScript和XML,AJAX并非縮寫(xiě)詞,而是由Jesse James Gaiiett創(chuàng)
42、造的名詞,是指一種創(chuàng)建交互式網(wǎng)頁(yè)應(yīng)用的網(wǎng)頁(yè)開(kāi)發(fā)技術(shù)[5]。</p><p> 6. Struts最早是作為Apache Jakarta項(xiàng)目的組成部分,是目前非常流行的一種動(dòng)態(tài)web開(kāi)源框架技術(shù)[6]。</p><p> 7. Hibernate是一個(gè)開(kāi)放源代碼的對(duì)象關(guān)系映射框架,使得Java程序員可以隨心所欲的使用對(duì)象編程思維來(lái)操縱數(shù)據(jù)庫(kù)。</p><p>
43、8. Browser/Server,瀏覽器/服務(wù)器,簡(jiǎn)稱(chēng)B/S。 </p><p> 9. Client/Server,客戶(hù)端/服務(wù)器,簡(jiǎn)稱(chēng)C/S。 </p><p> 10.Business to Business(B2B)商家對(duì)商家,電子商務(wù)的一種業(yè)務(wù)形式。 </p><p> 11.Business to Consumer(B2C)商家對(duì)顧客,電子商務(wù)的
44、一種業(yè)務(wù)形式。 </p><p> 12.Consumer to Consumer(C2C)顧客對(duì)顧客,電子商務(wù)的一種業(yè)務(wù)形式。 </p><p><b> 2.2 任務(wù)概述</b></p><p> 任務(wù)目標(biāo):實(shí)現(xiàn)在線交易網(wǎng)站,可以使用戶(hù)方便,輕松的進(jìn)行購(gòu)物(買(mǎi)家)、討論、評(píng)價(jià)等和發(fā)布自己的商品(網(wǎng)站使用者)、信息、公告等。</p
45、><p><b> 用戶(hù)特點(diǎn):</b></p><p> 買(mǎi)家特點(diǎn):買(mǎi)家都喜歡便宜,關(guān)心商品的質(zhì)量,怕買(mǎi)到的是假貨、次貨,但是網(wǎng)絡(luò)購(gòu)物只能看圖片,看評(píng)論,看說(shuō)明,看買(mǎi)過(guò)的人評(píng)價(jià)。這方面要給買(mǎi)家提供詳細(xì)的信息。圖片有大中小縮略圖、商品各種評(píng)價(jià)、打分、討論、排行等,給買(mǎi)家一個(gè)最好的用戶(hù)體驗(yàn)。</p><p> 賣(mài)家特點(diǎn)(站長(zhǎng)):及時(shí)的宣傳自己新商
46、品,熱賣(mài)商品等,讓用戶(hù)知道自己的商品,對(duì)于某些商品盡快脫銷(xiāo),需要促銷(xiāo)活動(dòng)等,都需要使買(mǎi)家盡快知道這些消息等。這方面要給賣(mài)家(站長(zhǎng))提供大量新聞,廣告信息(宣傳自己商品),在首頁(yè)使用公告,排行等方式醒目的顯示給買(mǎi)家。</p><p><b> 2.3 可行性分析</b></p><p> 可行性分析主要包括社會(huì)可行性、經(jīng)濟(jì)可行性、技術(shù)可行性。</p>
47、<p> 2.3.1 社會(huì)可行性</p><p> 首先從當(dāng)前社會(huì)商業(yè)市場(chǎng)運(yùn)作情況來(lái)看,商業(yè)企業(yè)在運(yùn)營(yíng)的過(guò)程中,經(jīng)常會(huì)受到以下一些條件的限制:</p><p> 1. 產(chǎn)品的宣傳受到限制,采購(gòu)商或顧客只能通過(guò)上門(mén)咨詢(xún)、電話溝通等方式進(jìn)行各種信息的獲取,受到一定的時(shí)間與物理空間的局限并且成本較高,龐大的商業(yè)經(jīng)濟(jì)周轉(zhuǎn)。</p><p> 2. 復(fù)雜的產(chǎn)
48、品周轉(zhuǎn)渠道:從看樣品、談價(jià)格到支付貨款等一系列的產(chǎn)品周轉(zhuǎn)渠道過(guò)于復(fù)雜,企業(yè)與客戶(hù)之間缺乏一個(gè)全面的溝通與快捷運(yùn)營(yíng)的平臺(tái)系統(tǒng);商業(yè)企業(yè)中根據(jù)季節(jié)的變化,熱銷(xiāo)商品在銷(xiāo)售高峰到來(lái)時(shí)貨源緊張,企業(yè)需要實(shí)時(shí)了解商品的銷(xiāo)售情況,保證熱銷(xiāo)商品的要貨滿(mǎn)足率。</p><p> 基于商家在傳統(tǒng)銷(xiāo)售模式中遇到的以上困難,作者擬開(kāi)發(fā)在線購(gòu)物系統(tǒng)。商家在使用該系統(tǒng)后,只需將需要推廣的產(chǎn)品信息錄入數(shù)據(jù)庫(kù),即可達(dá)到向購(gòu)買(mǎi)者推銷(xiāo)的目的,節(jié)省
49、了大量的人力資源。同時(shí)可以根據(jù)在線購(gòu)物的多少、實(shí)時(shí)查看庫(kù)存信息,實(shí)現(xiàn)商品周轉(zhuǎn)渠道的最簡(jiǎn)潔化。因此,在社會(huì)方面,本系統(tǒng)的開(kāi)發(fā)是可行的。</p><p> 2.3.2 經(jīng)濟(jì)可行性</p><p> 由于使用開(kāi)源框架開(kāi)發(fā)本系統(tǒng),且在windows操作系統(tǒng)下完成本系統(tǒng)的開(kāi)發(fā),所以開(kāi)發(fā)成本僅為作者的時(shí)間,并未投入其他物質(zhì)成本。且在傳統(tǒng)的銷(xiāo)售模式中,企業(yè)要投入大量的人力物力用于商品的配送,并且還不
50、能有效做到合理的供貨。而本系統(tǒng)為商家提供了隨時(shí)隨地查看所有商品信息的功能,是商家在短時(shí)間內(nèi)充分了解當(dāng)前市場(chǎng)貨物的供需情況,從而制定合理的配送計(jì)劃,達(dá)到配送成本最小化、供貨效率最大化。這樣就能為企業(yè)節(jié)約大量的人力資源投入,本系統(tǒng)的未來(lái)前景美好。所以在經(jīng)濟(jì)方面,該系統(tǒng)的開(kāi)發(fā)是可行的。</p><p> 2.3.3 技術(shù)可行性</p><p> Struts2、Hibernate3、Ajax
51、、JSP等技術(shù)比較成熟,常見(jiàn)功能可以輕易實(shí)現(xiàn),且對(duì)windows系統(tǒng)有良好的支持,開(kāi)發(fā)環(huán)境容易搭建,后期部署方便;該系統(tǒng)開(kāi)發(fā)完成后在1024*768的瀏覽器下能夠達(dá)到最佳的瀏覽效果,在其他分辨率下亦不影響系統(tǒng)的正常功能;另外需要瀏覽該系統(tǒng)的計(jì)算機(jī)聯(lián)入Internet,而這些方面在當(dāng)前條件下是完全能夠?qū)崿F(xiàn)的,所以在技術(shù)方面,該系統(tǒng)的技術(shù)是可行的。</p><p> 2.4 系統(tǒng)功能分析</p>&l
52、t;p> 商家具有通過(guò)本系統(tǒng)發(fā)布商品、發(fā)布公告、了解商品銷(xiāo)售情況、銷(xiāo)售趨勢(shì),與買(mǎi)家互動(dòng)等功能。滿(mǎn)足賣(mài)家快速及時(shí)的出售自己商品的需求。</p><p> 買(mǎi)家具有注冊(cè)、方便的瀏覽、查詢(xún)、購(gòu)買(mǎi)、討論和評(píng)價(jià)商品等功能。滿(mǎn)足買(mǎi)家購(gòu)買(mǎi)到自己喜歡合適的商品需求。</p><p> 根據(jù)在線購(gòu)物的邏輯過(guò)程,同時(shí)參考、分析目前市場(chǎng)上已有的在線購(gòu)物網(wǎng)站,本系統(tǒng)的主要功能需求分為權(quán)限管理、商品展示
53、、交易、商品搜索和商品討論五大模塊。各個(gè)功能均參考當(dāng)前互聯(lián)網(wǎng)主流門(mén)口網(wǎng)站實(shí)現(xiàn)的功能。</p><p> 權(quán)限管理模塊包含登錄、登出、查看用戶(hù)信息、以及增刪查改的功能;</p><p> 商品顯示模塊包含商品的分類(lèi)查看、查詢(xún)、訂購(gòu)功能;</p><p> 交易模塊包含購(gòu)物車(chē)中商品的添加、刪除,修改,訂單生成等功能;</p><p> 商
54、品搜索模塊包含根據(jù)商品名稱(chēng)、分類(lèi)、品牌搜索詳細(xì)商品信息功能;</p><p> 商品討論模塊模擬論壇實(shí)現(xiàn)的,包含商品討論,打分,關(guān)注等功能。</p><p><b> 2.5 本章小結(jié)</b></p><p> 本章主要介紹了背景分析、術(shù)語(yǔ)定義、可行性分析與功能分析,從需求上確定了系統(tǒng)開(kāi)發(fā)的主要功能模塊,從技術(shù)上確定了系統(tǒng)需要用到的編程語(yǔ)
55、言和開(kāi)發(fā)環(huán)境等,為后續(xù)設(shè)計(jì)與實(shí)現(xiàn)奠定基礎(chǔ)。</p><p><b> 第3章 系統(tǒng)設(shè)計(jì)</b></p><p> 本章的總體目標(biāo)是將上一章需求分析階段得到的功能需求轉(zhuǎn)換為詳細(xì)的業(yè)務(wù)邏輯模型,具體將從系統(tǒng)的結(jié)構(gòu)設(shè)計(jì)和數(shù)據(jù)庫(kù)設(shè)計(jì)兩方面進(jìn)行設(shè)計(jì),即根據(jù)上一章節(jié)中需求分析的”做什么”,確定系統(tǒng)應(yīng)該”怎么做”。</p><p> 3.1 總體結(jié)構(gòu)設(shè)
56、計(jì)</p><p> 系統(tǒng)結(jié)構(gòu)和功能是系統(tǒng)設(shè)計(jì)的核心部分,通過(guò)系統(tǒng)結(jié)構(gòu)圖可以清楚的看出整個(gè)系統(tǒng)的結(jié)構(gòu)。針對(duì)每個(gè)結(jié)構(gòu)模塊分別做分析,為以后的設(shè)計(jì)和實(shí)現(xiàn)打下基礎(chǔ)。根據(jù)功能需求,根據(jù)在線購(gòu)物的邏輯過(guò)程,同時(shí)參考、分析目前市場(chǎng)上已有的在線購(gòu)物網(wǎng)站,本系統(tǒng)的主要功能需求分為權(quán)限管理、商品展示、交易、商品搜索和商品討論五大模塊。</p><p> 本系統(tǒng)開(kāi)發(fā)的軟件模式選擇的是快速原型模式,因?yàn)楸鞠?/p>
57、統(tǒng)模擬新豆網(wǎng)實(shí)現(xiàn)(主要模擬其業(yè)務(wù)流程),所以其原型選擇新豆網(wǎng),大體功能(如商品交易,查詢(xún)等)即按其實(shí)現(xiàn),對(duì)于當(dāng)前新豆網(wǎng)不盡人意的地方,模擬當(dāng)前互聯(lián)網(wǎng)其他網(wǎng)站主流實(shí)現(xiàn)方法實(shí)現(xiàn)。</p><p> 總體功能結(jié)構(gòu)圖如圖3-1所示。</p><p> 3.2 系統(tǒng)架構(gòu)設(shè)計(jì) </p><p> 本系統(tǒng)采用4層架構(gòu)的方式進(jìn)行設(shè)計(jì)與實(shí)現(xiàn),主要包括:表現(xiàn)層、控制層、業(yè)務(wù)層、持
58、久層[7],如圖3-2所示。</p><p> 表現(xiàn)層:主要負(fù)責(zé)用戶(hù)交互和結(jié)果顯示,交易系統(tǒng)和管理系統(tǒng)有不同的 URL 入口界面。該層業(yè)務(wù)展示主要使用JSP語(yǔ)言,為了加強(qiáng)用戶(hù)體驗(yàn)度,使用JavaScript和Ajax異步與服務(wù)器交互,使用戶(hù)“無(wú)等待”交互。該層的美工布局使用div+css方式,使界面美觀舒適,便于觀看與操作。</p><p> 控制層:主要負(fù)責(zé)系統(tǒng)的訪問(wèn)控制、數(shù)據(jù)處理和
59、注銷(xiāo),是系統(tǒng)的核心控制單元??刂茖油ㄟ^(guò)系統(tǒng)描述來(lái)組織工作。 該層主要使用Struts2的過(guò)濾器作為核心控制器,控制請(qǐng)求跳轉(zhuǎn)與結(jié)果頁(yè)面渲染,有些功能使用攔截器實(shí)現(xiàn),這種注入的方式方便擴(kuò)展,加強(qiáng)了代碼的重用性,如權(quán)限判斷等的。</p><p> 業(yè)務(wù)層:實(shí)現(xiàn)了交易系統(tǒng)和管理系統(tǒng)的主要業(yè)務(wù)邏輯,是系統(tǒng)主要的運(yùn)算單元。 該層主要使用service業(yè)務(wù)組件實(shí)現(xiàn),即無(wú)狀態(tài)JavaBean,向后臺(tái)service調(diào)用持久層的d
60、ao方法操作數(shù)據(jù)庫(kù),向前臺(tái)service提供接口供Struts2的action調(diào)用。</p><p> 持久層:實(shí)現(xiàn)了靜態(tài)數(shù)據(jù)和數(shù)據(jù)庫(kù)數(shù)據(jù)的持久化管理,為業(yè)務(wù)層提供數(shù)據(jù)服務(wù),是系統(tǒng)進(jìn)行數(shù)據(jù)操作的統(tǒng)一界面。 該層使用Hibernate管理JavaBean,使用面向?qū)ο蟮姆椒ú僮鲾?shù)據(jù)庫(kù),為后期維護(hù)與擴(kuò)展提供方便[11]。</p><p> 全局:使用log4j記錄日志,xml文件作為配置文
61、件,使用JavaMail處理所有郵件信息(由于沒(méi)有郵件服務(wù)器,該處模擬操作)。</p><p> 圖3-1 總體功能結(jié)構(gòu)圖</p><p> 圖3-2 概要功能架構(gòu)圖</p><p> 具體每層使用到的技術(shù)如圖3-3所示,Ajax使瀏覽器與服務(wù)器交互,并傳遞數(shù)據(jù),所以Ajax同屬于顯示層與控制層。由于顯示層使用到了Struts的顯示標(biāo)簽,所以Struts同屬于
62、顯示層與控制層。</p><p> 持久層雖然大部分使用Hibernate操作,但小部分功能使用JDBC靈活方便,所以部分持久層使用JDBC實(shí)現(xiàn),其數(shù)據(jù)庫(kù)連接使用數(shù)據(jù)庫(kù)連接池,由JDK提供的線程池實(shí)現(xiàn)。</p><p> 圖3-3 技術(shù)架構(gòu)圖</p><p> 3.3 設(shè)計(jì)目標(biāo)與用例分析</p><p> 3.3.1 設(shè)計(jì)目標(biāo)<
63、;/p><p> 本系統(tǒng)在設(shè)計(jì)時(shí)應(yīng)該滿(mǎn)足以下幾個(gè)目標(biāo):</p><p> 1. 采用人機(jī)對(duì)話的操作方式,界面設(shè)計(jì)美觀友好。</p><p> 2. 信息查詢(xún)靈活、方便、快捷、準(zhǔn)確、數(shù)據(jù)存儲(chǔ)安全可靠。</p><p> 3. 全面展示商城內(nèi)所有商品,并可展示最新商品及特價(jià)商品。</p><p> 4. 用戶(hù)可選擇多
64、個(gè)商品進(jìn)行比較。</p><p> 5. 會(huì)員可以隨時(shí)修改自己的會(huì)員資料。</p><p> 6. 實(shí)現(xiàn)網(wǎng)上購(gòu)物。</p><p> 7. 各種商品排行,方便顧客了解本商城內(nèi)的商品信息及幫助企業(yè)領(lǐng)導(dǎo)者做出相應(yīng)的決策。</p><p> 8. 查看商城內(nèi)的公告信息。</p><p> 9. 用戶(hù)隨時(shí)都可以查看自
65、己的訂單。</p><p> 10. 對(duì)用戶(hù)輸入的數(shù)據(jù)進(jìn)行嚴(yán)格的數(shù)據(jù)檢驗(yàn),盡可能排除人為的錯(cuò)誤。</p><p> 11. 系統(tǒng)最大限度地實(shí)現(xiàn)了易維護(hù)性和易操作性。</p><p> 12. 系統(tǒng)運(yùn)行穩(wěn)定、安全可靠。</p><p> 13. 各處交易安全,不泄露用戶(hù)資料。</p><p> 3.3.2 用例
66、分析</p><p> 未登錄或登錄但未通過(guò)驗(yàn)證的用戶(hù)具有登錄、注冊(cè)、瀏覽新聞公告、瀏覽論壇帖子、查看各種商品排行,瀏覽商品和商品詳細(xì)信息、搜索商品等功能,用例圖如圖3-4所示。</p><p> 圖3-4 未登錄或登錄用戶(hù)用例圖</p><p> 已登錄并通過(guò)驗(yàn)證的用戶(hù)具有除注冊(cè)外其他所有非登錄用戶(hù)的功能,并額外具有論壇發(fā)帖、查看個(gè)人信息、個(gè)人資料修改、站內(nèi)
67、發(fā)信、操作購(gòu)物車(chē)、查看訂單、修改訂單、安全登出、商品打分等功能,用例圖如圖3-5所示。</p><p> 圖3-5 登錄用戶(hù)用例圖</p><p> 管理員具有普通會(huì)員的所有功能,且額外具有新聞管理,廣告管理,商品管理,會(huì)員管理等功能,用例圖如圖3-6所示。</p><p> 圖3-6 管理員用例圖</p><p> 3.4 模塊功能
68、詳細(xì)設(shè)計(jì)</p><p> 本系統(tǒng)分銷(xiāo)售模塊和系統(tǒng)管理模塊,每個(gè)模塊又有若干個(gè)子模塊構(gòu)成,其中銷(xiāo)售模塊主要包括:商品展臺(tái)、購(gòu)物車(chē)、會(huì)員管理、新聞管理、注銷(xiāo)登錄等子模塊。系統(tǒng)管理模塊主要包括:商品管理、訂單管理、會(huì)員管理、新聞管理、注銷(xiāo)登錄等子模塊。具體的模塊功能設(shè)計(jì)如下。</p><p> 3.4.1 權(quán)限管理模塊功能設(shè)計(jì)</p><p> 用戶(hù)權(quán)限功能用例圖
69、如圖3-7所示</p><p> 圖3-7 權(quán)限模塊用例圖</p><p><b> 主要用例說(shuō)明:</b></p><p><b> 用例名稱(chēng):驗(yàn)證郵箱</b></p><p> 用例描述:沒(méi)有通過(guò)驗(yàn)證的用戶(hù)輸入驗(yàn)證碼,激活郵箱驗(yàn)證。</p><p> 前置條件:
70、用戶(hù)登錄且未通過(guò)驗(yàn)證或用戶(hù)注冊(cè)后未驗(yàn)證。</p><p> 后置條件:用戶(hù)通過(guò)郵箱驗(yàn)證并加大權(quán)限。</p><p><b> 基本事件流:</b></p><p> 用戶(hù)登錄注冊(cè)郵箱,取得驗(yàn)證碼。</p><p> 用戶(hù)處于驗(yàn)證頁(yè)面,填入驗(yàn)證碼,點(diǎn)擊提交。</p><p> 驗(yàn)證碼不正確
71、,返回2;驗(yàn)證碼正確,執(zhí)行后置條件。</p><p><b> 其他事件流:無(wú)。</b></p><p> 異常事件流:跳轉(zhuǎn)到錯(cuò)誤頁(yè)顯示頁(yè)面,提示錯(cuò)誤信息。</p><p><b> 注釋?zhuān)簾o(wú)。</b></p><p> 主要功能詳細(xì)設(shè)計(jì)說(shuō)明:</p><p> 1
72、. 注冊(cè)功能:提供瀏覽者注冊(cè)功能,注冊(cè)之后可以在網(wǎng)站選購(gòu)商品到購(gòu)物車(chē),否則只能瀏覽商品信息而無(wú)法下達(dá)訂單。頁(yè)面使用Ajax技術(shù),動(dòng)態(tài)判斷用戶(hù)名是否已被占用,密碼,郵箱等是否符合格式等,友好的提示用戶(hù),防止用戶(hù)提交信息失敗從而重新填寫(xiě)大量的信息。注冊(cè)結(jié)束后在數(shù)據(jù)庫(kù)中存儲(chǔ)注冊(cè)信息,以加密的方式存儲(chǔ),使用不可逆加密md5信息摘要與base64技術(shù)。用戶(hù)注冊(cè)序列圖如圖3-8所示。</p><p> 2. 注冊(cè)認(rèn)證:激活
73、會(huì)員郵箱,只有激活郵箱的會(huì)員才能正常使用會(huì)員功能,否則只能等待激活郵箱。注冊(cè)后,會(huì)向會(huì)員郵箱發(fā)送一個(gè)郵件,郵件中含有激活碼,該激活碼使用uuid生成。激活成功后可以正常使用會(huì)員功能。</p><p> 3. 用戶(hù)登錄:針對(duì)已注冊(cè)的用戶(hù)設(shè)置,每個(gè)訪問(wèn)者一次只能夠登陸一個(gè)賬戶(hù)。登錄成功后返回到主頁(yè)面查看商品,失敗則重新填寫(xiě)。用戶(hù)登錄序列圖如圖3-9所示。</p><p> 4. 登出:注冊(cè)
74、用戶(hù)單擊“注銷(xiāo)”后實(shí)現(xiàn)安全退出。點(diǎn)擊注銷(xiāo)后清空session,清空cookie,返回到登錄頁(yè)面。</p><p> 圖3-8 用戶(hù)注冊(cè)序列圖</p><p> 圖3-9 用戶(hù)登錄序列圖</p><p> 6. 找回密碼:當(dāng)已注冊(cè)用戶(hù)忘記密碼時(shí)可根據(jù)用戶(hù)名和驗(yàn)證郵箱找回密碼,也可以通過(guò)密碼提示問(wèn)題和答案找回密碼,不論何種方式找回密碼,只能以重設(shè)新密碼的方式重置密
75、碼,無(wú)法獲得舊密碼,因?yàn)闉榱税踩钥紤],加密方式使用了MD5信息摘要這種不可逆的技術(shù)。</p><p> 7. 權(quán)限判斷功能:根據(jù)是否登錄和是否通過(guò)驗(yàn)證郵箱判斷用戶(hù)權(quán)限,根據(jù)權(quán)限進(jìn)行操作,如果權(quán)限不夠,則跳轉(zhuǎn)到對(duì)應(yīng)頁(yè)面。該功能使用Struts2攔截器實(shí)現(xiàn),在需要限定權(quán)限的功能前注入攔截器,如果權(quán)限足夠則通過(guò),不足則返回到登錄界面,如果用戶(hù)登錄后權(quán)限仍然不足,則返回到驗(yàn)證郵箱頁(yè)面。權(quán)限判斷詳細(xì)活動(dòng)圖如圖3-10所
76、示。</p><p> 圖3-10 權(quán)限判斷活動(dòng)圖</p><p> 3.4.2 商品顯示模塊功能設(shè)計(jì)</p><p> 商品顯示模塊功能及用例圖如圖3-11所示,詳細(xì)功能說(shuō)明如下:</p><p> 1. 商品瀏覽:網(wǎng)站的首頁(yè)顯示出部分特價(jià)商品、新上架商品、促銷(xiāo)商品、店長(zhǎng)推薦商品、關(guān)注商品榜、網(wǎng)站公告等,同時(shí)列出了網(wǎng)站發(fā)布的所有商品
77、類(lèi)別導(dǎo)航樹(shù)。存儲(chǔ)使用request屬性范圍,所有信息以集合的方式存儲(chǔ)在request中。當(dāng)用戶(hù)瀏覽1級(jí)分類(lèi)時(shí),使用樹(shù)形菜單形式顯示2級(jí)分類(lèi)和3級(jí)分類(lèi)。</p><p> 圖3-11 商品顯示模塊用例圖</p><p> 2. 商品詳細(xì)信息:根據(jù)商品的id,查詢(xún)數(shù)據(jù)庫(kù),將商品的所有信息查詢(xún)并顯示給用戶(hù),具體交序列如圖3-12所示。</p><p> 圖3-12
78、商品明細(xì)序列圖</p><p> 3. 商品分類(lèi)顯示:根據(jù)商品的三級(jí)類(lèi)別,顯示商品的概要信息,有分頁(yè)及排序功能,排序可按照名稱(chēng),價(jià)格,上架時(shí)間,人氣等。分類(lèi)顯示序列圖如圖3-13所示。</p><p> 圖3-13 分類(lèi)顯示序列圖</p><p> 4. 根據(jù)商品訂購(gòu)信息展示銷(xiāo)售排行榜:根據(jù)購(gòu)買(mǎi)者下訂單的情況,展示出當(dāng)前網(wǎng)站中最暢銷(xiāo)的商品信息。首頁(yè)中顯示出各種
79、商品的排行榜,以List集合的方式存儲(chǔ)在request中。</p><p> 5. 新品上架:根據(jù)數(shù)據(jù)庫(kù)信息顯示出最近一周內(nèi)上架的商品信息。首頁(yè)中顯示出各種新商品的排行榜,以List集合的方式存儲(chǔ)在request中。查詢(xún)時(shí)查詢(xún)一周內(nèi)出現(xiàn)的新商品。</p><p> 6. 動(dòng)態(tài)首頁(yè):根據(jù)時(shí)間的不同,網(wǎng)站首頁(yè)將放置反映不同季節(jié)或不同銷(xiāo)售目的的圖片和廣告等。使用JavaScript,動(dòng)感的顯
80、示一些廣告,新聞等。</p><p> 7. 首頁(yè)顯示動(dòng)態(tài)新聞:在購(gòu)物網(wǎng)站的首頁(yè)按照時(shí)間錄入先后順序顯示最近的新聞。在頁(yè)面左上角,顯示近期公告。</p><p> 3.4.3 交易模塊功能設(shè)計(jì)</p><p> 交易模塊功能及用例圖如圖3-14所示說(shuō)明:</p><p> 圖3-14 交易模塊用例圖</p><p&
81、gt;<b> 主要用例說(shuō)明:</b></p><p> 用例名稱(chēng):操作購(gòu)物車(chē)</p><p> 用例描述:已登錄并通過(guò)驗(yàn)證的用戶(hù)通過(guò)此用例對(duì)自己的購(gòu)物車(chē)進(jìn)行增刪改查操作。</p><p> 前置條件:用戶(hù)登錄并通過(guò)驗(yàn)證。</p><p> 后置條件:更新購(gòu)物車(chē)中的數(shù)據(jù)。</p><p>
82、;<b> 基本事件流:</b></p><p> 1.用戶(hù)點(diǎn)擊購(gòu)物車(chē)按鈕,顯示原有購(gòu)物車(chē)詳單信息。</p><p> 2.用戶(hù)操作購(gòu)物車(chē),刪除商品,修改購(gòu)物車(chē)內(nèi)商品數(shù)量,確定提交。</p><p> 3.執(zhí)行后置條件。</p><p> 其他事件流:登錄系統(tǒng)并通過(guò)驗(yàn)證后,可以瀏覽商品并點(diǎn)擊購(gòu)買(mǎi)按鈕,則商
83、品添加到購(gòu)物車(chē)中并顯示購(gòu)物車(chē)詳單。</p><p> 異常事件流:跳轉(zhuǎn)到錯(cuò)誤頁(yè)顯示頁(yè)面,提示錯(cuò)誤信息。</p><p><b> 注釋?zhuān)簾o(wú)。</b></p><p><b> 用例名稱(chēng):商品交易</b></p><p> 用例描述:已登錄并通過(guò)驗(yàn)證的用戶(hù)確認(rèn)購(gòu)買(mǎi)商品。</p>
84、<p> 前置條件:用戶(hù)登錄并通過(guò)驗(yàn)證,購(gòu)物車(chē)中有商品。</p><p> 后置條件:系統(tǒng)更新訂單信息,提示站長(zhǎng)發(fā)貨。</p><p><b> 基本事件流:</b></p><p> 1.用戶(hù)處于購(gòu)物車(chē)詳單頁(yè)面,點(diǎn)擊付款按鈕,跳轉(zhuǎn)到訂單生成頁(yè)面。</p><p> 2.用戶(hù)填入或選擇收貨地址,填
85、寫(xiě)買(mǎi)家說(shuō)明,選擇付款方式與銀行,點(diǎn)擊去付款按鈕,跳轉(zhuǎn)到模擬付款頁(yè)面。</p><p> 3.付款結(jié)束,跳轉(zhuǎn)到訂單詳單頁(yè)面。</p><p> 4.執(zhí)行后置條件。</p><p> 其他事件流:訂單生成與付款頁(yè)面,用戶(hù)隨時(shí)可以點(diǎn)擊“返回”按鈕,返回到購(gòu)物車(chē)詳單頁(yè)面。</p><p> 異常事件流:跳轉(zhuǎn)到錯(cuò)誤頁(yè)顯示頁(yè)面,提示錯(cuò)誤信息。
86、</p><p><b> 注釋?zhuān)簾o(wú)。</b></p><p><b> 詳細(xì)功能設(shè)說(shuō)明:</b></p><p> 1. 購(gòu)物車(chē)功能:已登錄的會(huì)員選中的商品都將暫時(shí)存放在購(gòu)物車(chē)中,可通過(guò)查看購(gòu)物車(chē)修改購(gòu)買(mǎi)數(shù)量。如果用戶(hù)登錄了,且權(quán)限足夠,則點(diǎn)擊添加到購(gòu)物車(chē)時(shí),使用cookie添加信息,不訪問(wèn)服務(wù)器,而只將商品的id
87、存儲(chǔ)在cookie中,操作cookie使用JavaScript實(shí)現(xiàn),具體序列圖如圖3-15所示。</p><p> 圖3-15 修改購(gòu)物車(chē)序列圖</p><p> 2. 訂單生成功能:根據(jù)購(gòu)物車(chē)中的信息,生成訂單。生成訂單時(shí)根據(jù)cookie中的id信息,查找數(shù)據(jù)庫(kù)得到商品List,根據(jù)List計(jì)算價(jià)錢(qián),生成訂單,具體交互圖如圖3-16所示。</p><p>
88、圖3-16 訂單生成交互圖</p><p> 3. 付款功能:根據(jù)訂單,用戶(hù)信息,付款方式等付款,該處不能連接真正的網(wǎng)上銀行,屬于模擬操作。</p><p> 4. 用戶(hù)管理自己的收貨地址,用戶(hù)可以有5個(gè)收貨地址,使用時(shí)可以選擇或重新填寫(xiě)。在付款時(shí)選擇收貨地址、付款方式和郵遞方式。</p><p> 3.4.4 搜索模塊功能設(shè)計(jì)</p><
89、p> 圖3-17 商品搜索模塊用例圖</p><p> 商品搜索模塊包含根據(jù)商品名稱(chēng)、分類(lèi)、品牌搜索詳細(xì)商品信息功能,具體功能及用例圖如圖3-17所示。</p><p> 1. 根據(jù)輸入的商品名稱(chēng)搜索商品,在主頁(yè)上即有搜索輸入框。主頁(yè)頭部使用Ajax添加搜索框,以下拉列表框形式展示商品類(lèi)別,在搜索時(shí)根據(jù)類(lèi)別,商品名搜索。始終顯示在所有的頁(yè)面之上。</p><
90、p> 2. 根據(jù)選擇的商品類(lèi)別、品牌等,按對(duì)應(yīng)方式搜索商品,同理如上。</p><p> 4. 列表的方式顯示出商品的全部類(lèi)別,品牌等,同理如上。</p><p> 3.4.5 商品討論模塊功能設(shè)計(jì)</p><p> 圖3-18 商品討論模塊用例圖</p><p> 商品討論模塊功能及用例圖如圖3-18所示:</p>
91、;<p> 1. 給已經(jīng)成功購(gòu)買(mǎi)過(guò)的商品打分。</p><p> 2. 以論壇的形式討論商品,熱門(mén)商品開(kāi)辟專(zhuān)區(qū)。</p><p> 3. 按照用戶(hù)發(fā)帖數(shù)量、質(zhì)量,版主可以給予評(píng)分,按照用戶(hù)積分升級(jí),獲得頭銜等。</p><p> 由于該系統(tǒng)目的是在線購(gòu)物,所以商品討論簡(jiǎn)要設(shè)計(jì)并實(shí)現(xiàn),如果做一個(gè)論壇(bbs),該工程不小于電子商務(wù),所以避免主次分
92、離,側(cè)重點(diǎn)放到了商品交易部分,而討論簡(jiǎn)要設(shè)計(jì)與實(shí)現(xiàn)。</p><p> 3.5 數(shù)據(jù)庫(kù)數(shù)據(jù)設(shè)計(jì)</p><p> 3.5.1 數(shù)據(jù)庫(kù)主要實(shí)體類(lèi)圖</p><p> 數(shù)據(jù)庫(kù)的表與實(shí)體類(lèi)對(duì)應(yīng),字段與屬性對(duì)應(yīng),此處涉及的所有與數(shù)據(jù)庫(kù)有關(guān)的類(lèi)都屬于POJO類(lèi),所以沒(méi)有業(yè)務(wù)方法,只有g(shù)et和set方法[12]。以下列出主要實(shí)體類(lèi)和實(shí)體類(lèi)的主要屬性說(shuō)明。</p>
93、;<p> 商品關(guān)聯(lián)實(shí)體類(lèi)圖如圖3-19所示,詳細(xì)說(shuō)明如下:</p><p> 圖3-19 商品關(guān)聯(lián)實(shí)體類(lèi)圖</p><p> Product商品實(shí)體:商品名,商品類(lèi)別,商品頂級(jí)id,是否推薦,品牌,型號(hào),價(jià)格,贈(zèng)送豆豆,是否促銷(xiāo),搶購(gòu)價(jià),限購(gòu)件數(shù),截止時(shí)間,質(zhì)保,備注,上架時(shí)間,簡(jiǎn)介,規(guī)格,圖片,顏色,市場(chǎng)價(jià)格,購(gòu)買(mǎi)人氣,瀏覽人氣,總分,外觀分,價(jià)格分,性能分。<
94、;/p><p> Photo圖片實(shí)體:圖片、說(shuō)明。與商品一對(duì)一的關(guān)系。</p><p> Price價(jià)格實(shí)體:市場(chǎng)名、價(jià)格。與商品一對(duì)一的關(guān)系。</p><p> Color顏色實(shí)體:顏色名稱(chēng)、圖片。每個(gè)商品可以有多個(gè)顏色的圖片,與商品多對(duì)一的關(guān)系。</p><p> Category分類(lèi)實(shí)體:分類(lèi)名、父類(lèi)id、分類(lèi)說(shuō)明。每個(gè)分類(lèi)中可以有
95、多個(gè)商品,每個(gè)商品若屬于某三級(jí)分類(lèi),必屬于其父級(jí)分類(lèi),所以與商品多對(duì)多關(guān)系。</p><p> Orders訂單實(shí)體:下單時(shí)間,狀態(tài),商品總金額,支付方式id,送貨方式id,運(yùn)費(fèi),手續(xù)費(fèi),訂單總金額,使用豆豆數(shù),應(yīng)付金額,收貨id,是否需要發(fā)票,最佳收貨時(shí)間,發(fā)票抬頭,用戶(hù)留言,物流公司名稱(chēng),物流單號(hào)。一個(gè)訂單中可以有多個(gè)商品,與商品一對(duì)多的關(guān)系。</p><p> Brand品牌實(shí)體
96、:品牌英文名,品牌中文名,品牌大圖,品牌小圖,品牌介紹。一個(gè)商品對(duì)應(yīng)一個(gè)品牌,與商品一對(duì)一關(guān)系。</p><p> 訂單關(guān)聯(lián)實(shí)體類(lèi)圖如圖3-20所示,詳細(xì)說(shuō)明如下:</p><p> 圖3-20 訂單關(guān)聯(lián)實(shí)體類(lèi)圖</p><p> Sendway送貨方式實(shí)體:送貨方式,送貨描述,基本費(fèi)用,到貨時(shí)間。一個(gè)訂單一種送貨方式,與訂單一對(duì)一關(guān)系。</p>
97、<p> Payway支付方式實(shí)體:支付名稱(chēng),支付介紹,手續(xù)費(fèi)。一個(gè)訂單一種支付方式,使用一次付清方式,與訂單一對(duì)一關(guān)系。</p><p> ReceiveAddress收貨地址實(shí)體:收貨人姓名,所在地區(qū)省,市,區(qū),街道地址,郵政編碼,電話號(hào)碼,手機(jī)。一個(gè)訂單對(duì)應(yīng)一個(gè)收貨地址,一對(duì)一關(guān)系。</p><p> User用戶(hù)實(shí)體類(lèi):主要屬性有用戶(hù)名,密碼,性別,昵稱(chēng),Emai
98、l,手機(jī),聯(lián)系電話等。一個(gè)用戶(hù)可以有多個(gè)訂單,所以與訂單一對(duì)多關(guān)系。</p><p> 用戶(hù)關(guān)聯(lián)實(shí)體類(lèi)圖如圖3-21所示,詳細(xì)說(shuō)明如下:</p><p> ReceiveAddress收貨地址實(shí)體,一個(gè)用戶(hù)可以擁有多個(gè)收貨地址,與用戶(hù)多對(duì)一關(guān)系。</p><p> Post主題實(shí)體:主要屬性有主題類(lèi)型、是否精華帖、執(zhí)行精華的用戶(hù)id、是否加亮顯示、加亮顯示顏色
99、、加亮的用戶(hù)id、是否置頂、置頂結(jié)束日期、置頂版塊區(qū)、置頂?shù)挠脩?hù)id、版塊id、是否投票、已投票的用戶(hù)等。一個(gè)用戶(hù)可以發(fā)表多個(gè)主題,與用戶(hù)多對(duì)一關(guān)系。</p><p> Transaction交易實(shí)體:商品id,顏色id,數(shù)量,金額小計(jì),訂單id。與用戶(hù)多對(duì)一的關(guān)系。</p><p> Message消息實(shí)體:發(fā)送用戶(hù)名、接收用戶(hù)名、標(biāo)題、內(nèi)容、是否保存到發(fā)件箱、發(fā)送時(shí)間、消息狀態(tài)、消
100、息類(lèi)型。與用戶(hù)多對(duì)一的關(guān)系。</p><p> 圖3-21 用戶(hù)關(guān)聯(lián)的實(shí)體類(lèi)圖</p><p> 3.5.2 數(shù)據(jù)主要實(shí)體描述</p><p> 以下列出了一些重要的數(shù)據(jù)表與表中的主要字段。</p><p> 商品表(參見(jiàn)表3-1),商品價(jià)格表(參見(jiàn)表3-2),分類(lèi)表(參加表3-3),訂單表(參見(jiàn)表3-4),會(huì)員表(參見(jiàn)表3-5),
101、公告表(參見(jiàn)表3-6)。</p><p> 表3-1 Product</p><p> 表3-2 Price</p><p> 表3-3 Category</p><p> 表3-4 Orders</p><p><b> 表3-5 User</b></p><p&g
102、t; 表3-6 Anncounce</p><p><b> 3.6本章小結(jié)</b></p><p> 本章詳細(xì)的設(shè)計(jì)了系統(tǒng)的各模塊的功能以及數(shù)據(jù)庫(kù)的設(shè)計(jì)和表的結(jié)構(gòu),確定了各個(gè)功能實(shí)現(xiàn)的方法,為下一章的代碼實(shí)施提供良好的邏輯模型。</p><p><b> 第4章 系統(tǒng)實(shí)現(xiàn)</b></p><p
103、><b> 4.1 總體實(shí)現(xiàn)</b></p><p> 系統(tǒng)實(shí)現(xiàn)使用Struts2框架,應(yīng)用MVC分層設(shè)計(jì)思想,使用Model2的形式實(shí)現(xiàn)各個(gè)功能及顯示,流程如圖4-1所示。</p><p> M:模型,使用JavaBean方式,將數(shù)據(jù)庫(kù)每個(gè)表對(duì)應(yīng)一個(gè)POJO類(lèi),使用Hibernate操作持久層數(shù)據(jù)庫(kù),并將操作封裝到每個(gè)類(lèi)的DAO中,供上層service調(diào)
104、用[4]。</p><p> V:顯示層,主要使用tiles框架實(shí)現(xiàn),作為Struts2的插件,titles完美的應(yīng)用了標(biāo)簽+布局的方式,大大減少了重復(fù)代碼,并易于維護(hù)和修改,體現(xiàn)了軟件開(kāi)發(fā)中的“開(kāi)閉原則”和分層思想。</p><p> C:控制層,控制層使用Struts2,Struts2應(yīng)用過(guò)濾器方式實(shí)現(xiàn)其控制,每個(gè)request請(qǐng)求發(fā)送給服務(wù)器時(shí),先通過(guò)過(guò)濾器,找到對(duì)應(yīng)的操作類(lèi),在
105、通過(guò)配置文件中指定的位置,渲染結(jié)果顯示給用戶(hù),提供了很強(qiáng)的維護(hù)性與擴(kuò)展性。</p><p> Ajax:頁(yè)面中大量使用Ajax交互技術(shù),提高了用戶(hù)的體驗(yàn)度,使用戶(hù)操作更加方便,使用更加舒適,雖然與服務(wù)器的交互增加,但是減少了頁(yè)面跳轉(zhuǎn)與重定向的次數(shù),大大增加了用戶(hù)體驗(yàn)[5]。</p><p> 前臺(tái)頁(yè)面主要由JSP實(shí)現(xiàn);美工使用CSS;頁(yè)面控制使用JavaScript;異步交互使用Aja
106、x;頁(yè)面框架使用property。</p><p> 根據(jù)上一章節(jié)的功能分析中分析各個(gè)頁(yè)面中的數(shù)據(jù)。對(duì)于頁(yè)面中重復(fù)出現(xiàn)的數(shù)據(jù),此處未必全部列出,由于頁(yè)面中大量使用Ajax技術(shù),使用異步交互,提高用戶(hù)體驗(yàn),所以顯示uri的頁(yè)面非常少,也正是本系統(tǒng)的目的。用于Ajax交互的jsp頁(yè)面由于過(guò)于繁多且大量使用tag標(biāo)簽技術(shù),因本系統(tǒng)非美工系統(tǒng),故此處未提供全部.tag和.jsp文件。只列出含有uri的頁(yè)面,參見(jiàn)表4-1
107、所示。</p><p><b> 表4-1 UI頁(yè)面</b></p><p><b> 續(xù)表4-1</b></p><p> 4.2 后臺(tái)邏輯實(shí)現(xiàn)</p><p> 4.2.1 持久層實(shí)現(xiàn)</p><p> 持久層使用DAO分層模式,每個(gè)實(shí)體類(lèi)均有其“實(shí)體名+Dao
108、”的類(lèi)作為其操作底層數(shù)據(jù)庫(kù)的方法,操作方法使用Hibernate操作[9]。數(shù)據(jù)庫(kù)連接通過(guò)Hibernate工廠獲得,使用線程池[15],部分代碼參見(jiàn)附錄C。</p><p> 4.2.2 事務(wù)處理</p><p> 事務(wù)處理使用單線程Session方式,Session是Hibernate的事務(wù)會(huì)話,每次會(huì)話都采用新的Session,因?yàn)镾ession輕量級(jí),占用資源小,并且可以確保事
109、務(wù)的原子性與一致性[9]。</p><p> Session工廠屬于重量級(jí),創(chuàng)建與銷(xiāo)毀占用資源大,所以Session工廠使用單例模式創(chuàng)建,只創(chuàng)建一次,使用結(jié)束后不銷(xiāo)毀[11]。</p><p> Session獲得方法如下:</p><p> private static final ThreadLocal<Session> threadLocal
110、 = </p><p> new ThreadLocal<Session>();</p><p> public static Session getSession() </p><p> throws HibernateException {</p><p> Session session = (Session) th
111、readLocal.get();</p><p> if (session == null || !session.isOpen()) {</p><p> if (sessionFactory == null) {</p><p> rebuildSessionFactory();</p><p><b> }</b
112、></p><p> session = (sessionFactory != null) ?</p><p> sessionFactory.openSession(): null;</p><p> threadLocal.set(session);</p><p><b> }</b></p&
113、gt;<p> return session;</p><p><b> }</b></p><p> 4.2.3 業(yè)務(wù)邏輯層實(shí)現(xiàn)</p><p> 業(yè)務(wù)層使用service分層模式,調(diào)用持久層dao方法操作實(shí)體,由于service構(gòu)造繁瑣,故service使用高級(jí)工廠模式創(chuàng)建其示例[10],主要代碼如下:</p&g
114、t;<p> package tarena.service;</p><p> public class ServiceFactory {</p><p> public static Object newInstance(String interfaceName) {</p><p><b> try {</b><
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)設(shè)計(jì)—在線交易平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)
- 在線交易平臺(tái)設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)論文--jsp在線交易平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)
- 煤炭在線交易平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 基于NGMC的在線交易平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 二手書(shū)交易平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)-畢業(yè)設(shè)計(jì)
- 電子交易平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)
- 農(nóng)產(chǎn)品交易平臺(tái)畢業(yè)設(shè)計(jì)
- 電子交易平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 校園二手物品交易平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)論文
- 畢業(yè)設(shè)計(jì)二手交易平臺(tái)的設(shè)計(jì)
- 網(wǎng)上圖書(shū)交易平臺(tái)畢業(yè)設(shè)計(jì)論文
- 校園二手物品交易平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)論文
- 學(xué)生閑置物品交易平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)
- 量販交易平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 銀行證券交易平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 校園商品交易平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 校園學(xué)生自助交易平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 二手教科書(shū)交易平臺(tái)——教科書(shū)交易模塊---畢業(yè)設(shè)計(jì)論文
- 畢業(yè)答辯農(nóng)副產(chǎn)品交易平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)
評(píng)論
0/150
提交評(píng)論