網上書店系統(tǒng)畢業(yè)設計(含外文翻譯)_第1頁
已閱讀1頁,還剩59頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、<p><b>  畢業(yè)設計(論文)</b></p><p>  題目: 基于mvc模式的網上書店系統(tǒng)的設計與實現(xiàn)</p><p>  畢業(yè)設計(論文)任務書</p><p>  畢業(yè)設計(論文)開題報告書</p><p>  課題類型:(1)A—工程設計;B—技術開發(fā);C—軟件工程;D—理論研究;<

2、;/p><p> ?。?)X—真實課題;Y—模擬課題;Z—虛擬課題</p><p>  畢業(yè)設計(論文)開題報告書(續(xù))</p><p>  基于mvc模式的網上書店系統(tǒng)的設計與實現(xiàn)</p><p><b>  摘 要</b></p><p>  二十一世紀是一個集數(shù)字化,網絡化,信息化的,以網絡為

3、核心的社會。現(xiàn)在讀圖書的人群比例驟減,這應該歸為生活方式帶來的沖擊。人們轉變了舊的閱讀方式,電子閱讀的人越來越多,另一種就是不讀書轉而去讀網上短篇的博客或者互動性的社區(qū)等?,F(xiàn)在的年輕人普遍都是這樣,他們的閱讀習慣和生活方式決定了未來市場的趨勢。</p><p>  本論文從分析當前網絡圖書的銷售現(xiàn)狀入手,再結合網上一大批讀者的需求愛好,了解需求,并說明了系統(tǒng)的結構設計,后臺數(shù)據庫的設計,以及一些具體業(yè)務的功能邏輯

4、設計,最后系統(tǒng)展現(xiàn)的效果,客觀的對整個系統(tǒng)進行了總結并對其提出修改意見。</p><p>  本畢業(yè)設計基于MVC的開發(fā)模式,通過了解讀者需求,采用JAVA+SSH+SQL技術,開發(fā)了一個簡單的網上書店系統(tǒng),完成一些書店都會有的業(yè)務需求如熱門圖書展示、購買某本書、訂單展示、分頁顯示等功能。</p><p>  關鍵字:信息化;網上書店;MVC;SSH;SQL</p><

5、p>  Development and Implementation of MVC Model-based Online Bookstore System</p><p>  Abstract The 21st century is a set of digital, networked, information technology, to network-centric society. The

6、proportion of the population now read books too dramatic, this should go for the lifestyle impact. People to change their old ways of reading, the electronic reading more and more people, while another is not reading tur

7、n to read online short of the blog or interactive community, today's young people are generally, their reading habits and lifestyles of the future market trends. </p><p>  Key Words:Information technolo

8、gy; Online bookStore; the MVC;SSH;SQL</p><p><b>  目錄</b></p><p><b>  1 緒 論1</b></p><p>  1.1研究的背景及意義1</p><p>  1.1.1選題的背景1</p><p

9、>  1.1.2國內外研究現(xiàn)狀1</p><p>  1.1.3研究的意義2</p><p>  1.2系統(tǒng)目標3</p><p><b>  2 需求分析4</b></p><p>  2.1 功能需求4</p><p>  2.1.1 子系統(tǒng)/模塊說明4</p&g

10、t;<p>  2.1.2 功能需求描述4</p><p>  2.2 非功能需求5</p><p>  2.2.1 性能需求5</p><p>  2.2.2 數(shù)據需求6</p><p><b>  3總體設計7</b></p><p>  3.1 開發(fā)環(huán)境7<

11、/p><p>  3.2 基本處理流程7</p><p>  3.3 模塊結構8</p><p>  4 數(shù)據庫設計10</p><p>  4.1 概念結構設計10</p><p>  4.1.1 設計思路10</p><p>  4.1.2 E-R圖11</p><

12、;p>  4.2 邏輯結構設計13</p><p>  4.2.1 設計思路13</p><p>  4.2.2 邏輯模型13</p><p>  4.3 物理結構設計15</p><p>  4.3.1 存取方式15</p><p>  4.3.2 存儲結構16</p><p&g

13、t;<b>  5 界面設計18</b></p><p>  5.1 工作流圖18</p><p>  5.2 界面設計成果19</p><p>  5.2.1 主界面19</p><p>  5.2.2 子界面19</p><p><b>  6 詳細設計24</b&

14、gt;</p><p>  6.1 系統(tǒng)主要功能模塊介紹24</p><p>  6.2 首頁商品展示模塊設計24</p><p>  6.3 商品詳細介紹模塊設計25</p><p>  6.4 顯示購物車模塊設計27</p><p>  6.5 會員登錄模塊設計28</p><p>

15、;  6.6 用戶注冊模塊設計29</p><p>  6.7修改送貨地址及確認訂單信息模塊設計30</p><p>  6.8顯示客戶所有訂單信息模塊設計31</p><p><b>  7 編碼32</b></p><p>  7.1 代碼實現(xiàn)與核心算法32</p><p><

16、b>  8 測試37</b></p><p>  8.1 測試方案設計37</p><p>  8.1.1 測試策略37</p><p>  8.1.2測試進度安排37</p><p>  8.1.3測試資源37</p><p>  8.1.4關鍵測試點38</p>&

17、lt;p>  8.2測試用例構建38</p><p>  8.2.1 測試用例編寫約定38</p><p>  8.2.2測試用例設計38</p><p>  8.2.3測試結果40</p><p>  9 總結和展望41</p><p>  9.1 設計工作總結41</p>&l

18、t;p>  9.2 未來工作展望42</p><p><b>  謝辭43</b></p><p><b>  參考文獻44</b></p><p>  附錄A 外文翻譯—原文部分45</p><p>  附錄B 外文翻譯—譯文部分48</p><p><

19、;b>  1 緒 論</b></p><p><b>  研究的背景及意義</b></p><p><b>  選題的背景</b></p><p>  新世紀的到來,Internet和計算機網絡技術的蓬勃發(fā)展,網絡化和全球化已成為不可抗拒的世界潮流。個人要生存,企業(yè)要發(fā)展,就必須采取新的生存方式、競爭手段

20、去適應它。面對Internet本身所具有的開放性、全球性、低成本、高效率等特點,傳統(tǒng)商業(yè)暴露的問題就越來越明顯,原有的商業(yè)格局、商業(yè)運作模式在Internet面前也顯得無能為力,客觀形勢給傳統(tǒng)商務工作帶來了壓力和動力。機遇和挑戰(zhàn)、條件和可能,挑戰(zhàn)是現(xiàn)實的,機遇是潛在的,所以迫使我們必須重組原有的商業(yè)格局,變革原有的商業(yè)模式來契合Internet的發(fā)展以取得最大的效益。連通全世界的電子信息通道已經形成,應用Internet網開展電子商務(

21、Electronic Commerce)業(yè)務的時機已經成熟。任何新事物都代表著一種趨勢,那些符合人類進步的趨勢必然會得到大家的認同。電子商務就是這樣一種事物,它對人類社會進行著全方位的改造,在企業(yè)競爭、政府部門、公共研究機構、教育以及娛樂等方面改變著人類相互交往的方式,為人們展示了一個全新、璀璨的世界。</p><p>  由于電子商務的出現(xiàn),傳統(tǒng)的經營模式和經營理念將發(fā)生巨大的變化。電子商務主要以飛速發(fā)展的遍及

22、全球的Internet網絡為架構,以交易雙方為主體,以銀行支付和結算為手段,以客戶數(shù)據庫為依托的全新商業(yè)模式。電子商務將會創(chuàng)造巨大的效益和機會,會將市場的空間形態(tài)、時間形態(tài)和虛擬形態(tài)結合起來,將物流、資金流、信息流匯集成開放的、良性循環(huán)的環(huán)路,使經營以市場為紐帶,在市場上發(fā)揮最大的作用得到最大的效益。電子商務的發(fā)展,不僅將有利于推動Internet的發(fā)展,對社會的進步和經濟的變革產生深遠的影響,更重要的,它本身的發(fā)展和成熟為我們提供了許

23、許多多的機會。</p><p><b>  國內外研究現(xiàn)狀</b></p><p>  國外的Web商務系統(tǒng)應用起步較早,所以應用的領域比較廣,網絡銷售已經在人們日常消費中占到一定比例,Web商務系統(tǒng)也比較成熟。人們可以以網絡這個媒體,足不出戶就可以搜索、查詢到自己需要的信息、購買自己需要的商品。我國電子商務的發(fā)展起源于70年代的EDI應用,我國海關是最早引入EDI進

24、行報關,經過幾年的完善發(fā)展目前企業(yè)可以通過上網申請報關。電子商務概念首次引入中國是在1993年,第一筆交易發(fā)生在1996年。</p><p>  目前我國網上書店的主要類型有:</p><p>  由國有新華書店投資建設的網上書店。一些有實力的傳統(tǒng)書店,都會建立自己的網站,利用網絡促銷,爭取更多的市場份額。它們主要依托傳統(tǒng)的圖書大廈的圖書館儲存進行網絡售書,屬于新華書店上網或上網的書店。&

25、lt;/p><p>  由出版社建立的網上書店。因為網絡出版的緣故,出版社是最早觸網的,我國500多家出版社中,已建立網站的有349家,占62%。較好的出版社營銷網站建設的特點是:以出版社本社出版物為網站核心,突出特色,訪問速度快捷,信息及時更新,內容的合理編排以及完善的檢索能力,較強的交互能力。</p><p>  外貿出版公司投資建設的網上書店。這一類網上書店立足公司主營業(yè)務,主要對海外進

26、行圖書銷售,銷售量逐漸增加。</p><p>  非出版業(yè)資本投資建設的網上書店。如卓越網。</p><p>  就目前情況而言,上述幾類的網絡書店可以分為兩大類。一類是沒有實體書店的網上書店,以卓越網為代表,還有一類是以實體書店為支撐的。前一類書店已經開始逐步銷售更多的商品,在很大程度上,是以圖書為主打產品,開發(fā)其他商品作為補充,如卓越網在大幅增加圖書音像品種的同時,陸續(xù)增加了數(shù)碼產品、

27、手機、家居、健康用品和化妝品、玩具禮品、鐘表首飾、廚具、母嬰產品、小家電等。</p><p><b>  研究的意義</b></p><p>  美國是Internet的發(fā)源地,目前擁有世界上最大的網上書店-巴恩斯諾貝爾書店網(http://www.Bamesand.noble.com)和 亞馬遜網上書店(網址為http://www.Amazom.com)等。中國近幾

28、年網上書店的發(fā)展也非???,如芝麻開門網上書店(http://www.zmkm.com.cn)、當當網上書店(http://www.dangdang.com)等多達數(shù)百家。網上構建書店與普通書店的目的有所不同,其意義主要為:</p><p> ?。?)便于網站書店人員了解購書者的閱讀需求</p><p>  普通書店采購圖書最大的問題就是缺乏準確的需求信息,雖然采取的很多辦法,但實際效果并不

29、理想。但是網上書店就不一樣,采用網上推薦后,讀者不僅可以薦書,還充分發(fā)表意見。</p><p> ?。?)便于讀者推薦圖書</p><p>  讀者既可從網上書店中挑選所需圖書信息提供給書店,也可提供其他來源信息。</p><p>  與傳統(tǒng)方式相比,采用網上書店薦書具有以下優(yōu)勢:</p><p>  信息量大。與傳統(tǒng)書目報相比,網上書店能夠

30、提供海量圖書信息。書目報由于受版面及其它條件的制約,其品種及受眾往往比較少。而普通網上書店由于各出版社的加盟,其存書可達百萬種之多。如美國俄亥俄州的圖書館網上書店能提供100萬種在版圖書和300萬種絕版圖書,加拿大最大的網上書店查普特斯書店可提供200萬種圖書。任何感興趣的讀者都可參與薦書。</p><p>  信息豐富。目前,大多數(shù)網上書店都提供盡可能完整詳細的書目信息,如書名、作者/譯者、出版社、出版日期、書

31、號、開本、頁碼、內容提要、價格等,有的甚至提供圖書的目錄、前言、內容節(jié)選、精彩插圖、書評、作者簡介等。這些書目信息彌補了讀者不能直接翻看書的內容、了解書的全貌的缺陷。</p><p>  檢索便捷。網上書店提供了多種檢索途徑,可以從書名、作者、主題詞、ISBN號等途徑進行單獨檢索或組合檢索,快捷準確。</p><p> ?。?)便于讀者購買圖書</p><p>  

32、現(xiàn)在圖書價格都不便宜,所以網上書店購書不僅便宜,而且可以通過網絡購買急需的圖書,網上書店訂購方式非常簡單易行,讀者足不出戶就可以購買到稱心如意的圖書。許多人不大使用網絡購物的原因就是貨幣支付、退換貨機制問題,商家擔心貨發(fā)出去收不到款,顧客擔心寄了錢收不到貨,或者收到的不是自己需要的東西又不能調換,這些問題在圖書館的網上書店都可迎刃而解。</p><p> ?。?)便于圖書館開展個性化服務</p>&

33、lt;p>  網上書店不只單純推薦、銷售圖書,還可充分發(fā)揮網絡優(yōu)勢,提供豐富多彩的個性化服務,滿足讀者特定的需求,網上書店開設的如新書推薦、暢銷書排行、讀者評論、作者訪談、專家點評等欄目,既可使讀者把握全方位的圖書信息,又可使其利用網絡公告板同圖書的作者及其他讀者進行在線討論、交流心得體會,并根據他人的書評來協(xié)助選書。 </p><p><b>  系統(tǒng)目標</b></p>

34、<p>  作為一個以圖書為經營對象的電子商務網站來說,如果想得到網民的認可,我認為本系統(tǒng)應該實現(xiàn)以下幾個方面的目標:</p><p>  人性化設計。程序設計充分考慮書店和消費者的要求,使操作簡單方便快捷,界面友好,功能實用。</p><p>  智能提示用戶操作,實現(xiàn)用戶注冊,登陸和進行瀏覽搜索書籍并進行購買,提高網站通用性,易于管理維護。</p><

35、p>  動態(tài)式書籍更新,新書上架能直接讀取后臺數(shù)據庫,使信息更新及時有效。</p><p>  動態(tài)式書籍排行榜。通過消費者購買此書的數(shù)量的增加,可以動態(tài)的改變此書在排行榜中的位置,使消費者及時了解書籍的售出情況,以便為其提供購買信息。</p><p>  動態(tài)顯示購物車的狀態(tài),及時更新購物車中的商品信息。</p><p><b>  2 需求分析&

36、lt;/b></p><p><b>  2.1 功能需求</b></p><p>  2.1.1 子系統(tǒng)/模塊說明</p><p>  該網站的功能模塊如下表所示:</p><p>  2.1.2 功能需求描述</p><p>  ● 能夠讓顧客注冊成為會員</p><

37、p>  如果只查閱信息,則不必注冊,但若要購買圖書,則必須注冊成為會員,以獲取用戶的聯(lián)系方式,以便送貨。注冊時系統(tǒng)會要求填寫一些必要的個人信息和收貨人資料,如收貨人姓名(需自己填寫)、電話、電子郵件、聯(lián)系地址等。</p><p>  ● 能夠讓會員修改會員信息</p><p>  已經注冊會員后的個人信息將會作為該用戶下次購買圖書時的默認選項,如有變更,下訂單時可再做修改。</

38、p><p>  ● 能夠讓會員登陸瀏覽售書目錄</p><p>  "登錄"是系統(tǒng)驗證用戶身份的過程,以便物品交易時能夠對號入座。用戶只要將注冊時留的"賬號"和"密碼"信息填入,再按"登錄"按鈕,就可以登錄。通過功能強大的圖書搜索功能,可以迅速搜索到用戶需要的圖書,通過模糊查詢,按書名、作者、出版社、ISBN查詢所

39、需要找的書,點擊所選中的圖書,可以查看書籍的詳細介紹??梢哉f,用戶可以通過網絡書城方便,高效,快速地購買自己需要的圖書,包括商品分類的名稱及圖片顯示、顯示商品詳細介紹以及相關產品、零售價。</p><p>  ● 能夠讓會員下訂單、購書</p><p>  會員在線訂書,確認后生成訂單。整個購書過程包括:購書流程,如何找到我想要的圖書,如何使用購物車,如何查詢我的訂單處理情況說明,如何進行

40、付款,送貨方式及費用,商品退換須知,如何進行郵購業(yè)務,其他訂購方式,購書查詢,特殊情況處理,如何訂閱書店郵件等。</p><p>  ● 能夠讓管理員登陸</p><p>  ● 能夠讓管理員處理訂單</p><p>  會員在線訂書生成訂單后,由訂單管理員確認后返回信息到訂購者的郵箱,表示接受訂單,然后訂購者支付款項,可通過郵寄,銀行匯兌,網上支付等途徑,款到付書

41、,系統(tǒng)自動統(tǒng)計。訂單成功系統(tǒng)將自動發(fā)一封郵件給購書者。</p><p><b>  能夠實現(xiàn)結賬功能</b></p><p>  可打印訂單的詳細信息以及電子郵件通知;顧客可選擇多種網上支付方式、多種運輸方式并在結帳時自動加入所需費用、客戶留言。</p><p>  包括:在線設定匯款方式、支付方式、購物流程、注冊條約、交易條款、常見問題、法律

42、版權信息、運輸方式、保密安全、售前售后服務、工作時間。</p><p>  ● 能夠保證信用安全</p><p>  ● 能夠讓管理員管理入庫書籍</p><p>  按編號,書名,作者,出版社,出版日期,方便查找管理。</p><p>  ● 能夠讓管理員維護會員信息</p><p>  管理員可以在頁面上瀏覽所有會

43、員的信息,可以對會員信息進行增加、刪除、修改、查詢操作,以維護會員信息。</p><p><b>  2.2 非功能需求</b></p><p>  2.2.1 性能需求</p><p><b>  ● 時間特性</b></p><p>  一般操作的響應時間在1-3秒之內,首次訪問首頁會出現(xiàn)速度較

44、慢的情況,主要是tomcat啟動后無任何緩存,第一次訪問過后速度明顯加快了。</p><p><b>  適應性</b></p><p>  該網站系統(tǒng)適合所有微軟操作系統(tǒng),并安裝了瀏覽器的PC機。</p><p><b>  對環(huán)境的特殊需求</b></p><p>  對運行環(huán)境要求不應存在困難

45、。</p><p>  2.2.2 數(shù)據需求</p><p>  ● 網站出售的圖書信息</p><p>  網站出售的圖書信息包括圖書的作者、書名、價格、ISBN、出版社等基本信息。</p><p><b>  購書者的詳細信息</b></p><p>  購書者的詳細信息包括購書者的姓名、電話

46、、郵編、收貨地址等信息。</p><p><b>  新書上架的詳細信息</b></p><p>  網站上架的新書的詳細信息的獲取。</p><p><b>  總體設計</b></p><p><b>  3.1 開發(fā)環(huán)境</b></p><p> 

47、 本系統(tǒng)采用的技術方案是Jsp+Tomcat+Mysql+SSH+Jquery等,即使用JSP作為Web服務器端開發(fā)語言,采用Tomcat作為Web服務器和JSP引擎,采用MySql作為后臺網絡數(shù)據庫管理系統(tǒng)。</p><p>  本系統(tǒng)的開發(fā)環(huán)境如下所述:</p><p>  操作系統(tǒng):WIN7 64位</p><p>  運行工具:Google Chrome瀏覽

48、器</p><p>  開發(fā)工具:Myeclipse8.5、Dreamweaver</p><p><b>  數(shù)據庫:MySql</b></p><p>  服務器:Tomcat 6.0</p><p>  3.2 基本處理流程</p><p>  圖 3-1 基本處理流程圖</p>

49、;<p>  首先用戶在首頁中進行瀏覽和查找所需的圖書,在瀏覽過程中將選中的圖書放入購物車,等所有商品選中完畢,查看購物車,此時可以對購物車中的商品刪除。選中付款后,進入登錄界面,用戶登錄之后,確認訂單信息,并判斷是否需要繼續(xù)選購商品,如果需要的話,可以選擇跳轉到首頁繼續(xù)購書,否則直接提交訂單,這就完成了整個購書流程。具體流程圖如上圖3-1所示。</p><p><b>  3.3 模塊結

50、構</b></p><p>  圖 3-2 系統(tǒng)前臺功能模塊</p><p>  表 3-3 系統(tǒng)組件表</p><p><b>  4 數(shù)據庫設計</b></p><p>  4.1 概念結構設計</p><p>  數(shù)據庫是依照某種數(shù)據模型組織起來并存放二級存儲器中的數(shù)據集合。這種

51、數(shù)據集合具有如下特點:盡可能不重復,以最優(yōu)方式為某個特定組織的多種應用服務,其數(shù)據結構獨立于使用它的應用程序,對數(shù)據的增、刪、改和檢索由統(tǒng)一軟件進行管理和控制。從發(fā)展的歷史看,數(shù)據庫是數(shù)據管理的高級階段,它是由文件管理系統(tǒng)發(fā)展起來的。</p><p>  數(shù)據庫不同層次之間的聯(lián)系是通過映射進行轉換的。數(shù)據庫具有以下主要特點:</p><p>  實現(xiàn)數(shù)據共享。數(shù)據共享包涵所有用戶可同時存取

52、數(shù)據庫中的數(shù)據,也包括用戶可以用各種方式通過接口使用數(shù)據庫,并提供數(shù)據共享。</p><p>  減少數(shù)據的冗余度。同文件系統(tǒng)相比,由于數(shù)據庫實現(xiàn)了數(shù)據共享,從而避免了用戶各自建立應用文件。減少了大量重復數(shù)據,減少了數(shù)據冗余,維護了數(shù)據的一致性。</p><p>  數(shù)據的獨立性。數(shù)據的獨立性包括數(shù)據庫中數(shù)據庫的邏輯結構和應用程序相互獨立,也包括數(shù)據物理結構的變化不影響數(shù)據的邏輯結構。&l

53、t;/p><p>  數(shù)據實現(xiàn)集中控制。文件管理方式中,數(shù)據處于一種分散的狀態(tài),不同的用戶或同一用戶在不同處理中其文件之間毫無關系。利用數(shù)據庫可以對數(shù)據進行集中控制和管理,并通過數(shù)據模型表示各種數(shù)據的組織以及數(shù)據間的聯(lián)系。</p><p>  數(shù)據一致性和可維護性,以確保數(shù)據的安全性和可靠性。主要包括:安全性控制:以防止數(shù)據丟失、錯誤更新和越權使用;完整性控制:保證數(shù)據的正確性、有效性和相容性

54、;并發(fā)控制:使在同一時間周期內,允許對數(shù)據實現(xiàn)多路存取,又能防止用戶之間的不正常交互作用;故障的發(fā)現(xiàn)和恢復:由數(shù)據庫管理系統(tǒng)提供一套方法,可及時發(fā)現(xiàn)故障和修復故障,從而防止數(shù)據被破壞。</p><p>  4.1.1 設計思路</p><p>  概念數(shù)據層。它是數(shù)據庫的中間一層,是數(shù)據庫的整體邏輯表示,指出了每個數(shù)據的邏輯定義及數(shù)據間的邏輯聯(lián)系,是存貯記錄的集合。它所涉及的是數(shù)據庫所有對

55、象的邏輯關系,而不是它們的物理情況,是數(shù)據庫管理員概念下的數(shù)據庫。</p><p>  用戶的需求具體體現(xiàn)在各種信息的提供、保存、更新和查詢,這就要求數(shù)據庫結構能夠充分滿足各種信息的輸入和輸出。收集基本數(shù)據、數(shù)據結構和數(shù)據處理的流程,組成一份詳盡的數(shù)據字典,為后面的具體設計打下基礎。</p><p>  數(shù)據庫的主要表如下:</p><p>  圖書信息表(good

56、s)</p><p>  訂單信息表(orders)</p><p>  詳細訂單表(orderDetail)</p><p>  會員信息表(users)</p><p>  歷史詳單表(orderinfo)</p><p>  4.1.2 E-R圖</p><p>  圖4-1 圖書E-R圖

57、</p><p>  圖 4-2 會員E-R圖</p><p>  圖 4-3 訂單E-R圖</p><p>  圖4-4 詳單E-R圖</p><p>  4.2 邏輯結構設計</p><p>  4.2.1 設計思路</p><p>  邏輯層數(shù)據層,它是用戶所看到和使用的數(shù)據庫,表示了一個

58、或一些特定用戶使用的數(shù)據集合,及邏輯記錄的集合。</p><p>  4.2.2 邏輯模型</p><p>  表 4-5 圖書信息表 goods</p><p>  表 4-6 會員信息表 users</p><p>  表 4-7 訂單表 orders</p><p>  表 4-8 訂單細節(jié)表 orderDeta

59、il</p><p>  表 4-9 詳單表 orderinfo</p><p><b>  E-R圖關系模型:</b></p><p>  圖 4-10 E-R圖關系</p><p>  4.3 物理結構設計</p><p>  4.3.1 存取方式</p><p>  

60、物理數(shù)據是數(shù)據庫的最內層,是物理存貯設備上實際存儲的數(shù)據的集合。這些數(shù)據是原始數(shù)據,是用戶加工的對象,由內部模式描述的指令操作處理的位串、字符和字組成。</p><p>  本網站使用MySql實現(xiàn)關系型數(shù)據庫。</p><p>  MySQL是一個多用戶、多線程的支持標準SQL語句的關系型數(shù)據庫。它支持大文件及圖像的存儲,并且提供一個豐富和極其有用的功能集。它的特點是速度快,易用,穩(wěn)定性

61、能好,它由一個服務器守護程序MySQL和很多不同的客戶程序和庫組成。MySQL支持標準的ANSI SQL語句,支持多種平臺,在Unix系統(tǒng)上該軟件支持多線程運行方式,從而能獲得相當好的性能。</p><p>  大訪問量查詢加上修改時很容易阻塞,不支持事務處理使MySQL無法勝任關鍵的企業(yè)業(yè)務,不支持外鍵約束等等,使得數(shù)據的完整性只能靠開發(fā)人員自己保證,然而MySQL結構簡單,又不包含一些復雜的高級的數(shù)據庫功能,

62、因此查詢極快,這也是本系統(tǒng)選擇MySQL的主要原因。</p><p>  4.3.2 存儲結構</p><p><b>  --會員表</b></p><p>  create table users(</p><p>  userid bigint primary key auto_increment, --會員id

63、</p><p>  username varchar(30) not null unique, --用戶名</p><p>  truename varchar(30) not null, --真實名</p><p>  passwd varchar(40) not null, --密碼</p><p>  email

64、 varchar(40) not null, --郵箱</p><p>  phone varchar(20) not null, --電話</p><p>  address varchar(30) not null, --收貨地址</p><p>  postcode char(6) not null, --郵政編碼<

65、;/p><p>  grade int default 5); --用戶級別</p><p><b>  --圖書表</b></p><p>  create table goods(</p><p>  goodsId bigint primary key auto_increment, --貨物id

66、</p><p>  goodsName varchar(40), --名稱</p><p>  goodsIntro varchar(500), --介紹</p><p>  goodsPrice float, --價格</p><p>  goodsNum int, --數(shù)量</p><p>  publis

67、her varchar(40), --發(fā)行商</p><p>  photo varchar(40), --照片</p><p>  type varchar(10) --類型</p><p><b>  )</b></p><p><b>  --訂單表</b></p><

68、p>  create table orders(</p><p>  ordersId bigint primary key auto_increment, --訂單號</p><p>  userId bigint, --哪個用戶訂的</p><p>  foreign key (userId) references users(userid), --設

69、置外鍵</p><p>  orderDate timestamp not null default current_timestamp, --下訂單的時間(默認系統(tǒng)當前時間)</p><p>  payMode set('貨到付款','支付寶付款') default '貨到付款', --付款的方式</p><p>

70、  isPayed set('0','1'), --(0,表示還沒有付款 1:表示已經付款了)</p><p>  totalPrice float not null --總價格</p><p><b>  )</b></p><p><b>  --訂單細節(jié)表</b></p>

71、<p>  create table orderDetail(</p><p>  ordersId bigint not null, --訂單號</p><p>  foreign key (ordersId) references orders(orderId), --外鍵 指向orders表</p><p>  goodsId bigint not

72、 null, --商品號</p><p>  foreign key (goodsId) references goods(goodsId), --外鍵 指向goods表</p><p>  nums int not null --數(shù)量</p><p><b>  )</b></p><p><b>  --詳

73、單表</b></p><p>  create table orderinfo(</p><p>  orderInfoId bigint primary key auto_increment, --詳單號</p><p>  username varchar(30) not null, --用戶名</p><p>  tr

74、uename varchar(30) not null, --真實名</p><p>  passwd varchar(40) not null, --密碼</p><p>  email varchar(40) not null, --郵箱</p><p>  phone varchar(20) not null, --電話

75、</p><p>  address varchar(30) not null, --收貨地址</p><p>  postcode char(6) not null, --郵政編碼</p><p>  grade set('1','5') default '5', --用戶級別</p>

76、<p>  ordersId bigint not null, --訂單號</p><p>  userid bigint not null, --會員號</p><p>  orderDate timestamp not null default current_timestamp, --下訂單的時間</p><p>  payMode set(&

77、#39;貨到付款','支付寶付款') default '貨到付款', --付款的方式</p><p>  isPayed set('0','1'), --(0,表示還沒有付款 1:表示已經付款了)</p><p>  totalPrice float not null --總價格</p><p&g

78、t;<b>  )</b></p><p><b>  5 界面設計</b></p><p><b>  5.1 工作流圖</b></p><p>  用戶在首頁中,選中一件自己所需的商品后,點擊進入該商品的詳細介紹界面,可以選擇是否立即付款,或者先加入購物車再繼續(xù)購物。選擇付款的話,直接跳轉登陸頁面

79、,判斷是否登錄,如果檢測到用戶已登錄過,則繼續(xù)跳轉至確認訂單界面,用戶確認訂單并提交訂單后,整個購物過程就結束了。工作流圖如下圖所示。</p><p>  圖 5-1 系統(tǒng)工作流程圖</p><p>  5.2 界面設計成果</p><p><b>  5.2.1 主界面</b></p><p><b>  圖

80、 5-2 主界面</b></p><p><b>  5.2.2 子界面</b></p><p>  圖 5-3 圖書詳細介紹界面</p><p>  圖 5-4 購物車界面</p><p>  圖 5-5 購物車清空操作提示框</p><p>  圖 5-6 輸入數(shù)量格式錯誤后的提示

81、框</p><p>  圖 5-7 會員登錄界面</p><p>  圖 5-8用戶注冊界面</p><p>  圖 5-9用戶確認訂單界面</p><p>  圖 5-10完成訂單后界面</p><p><b>  6 詳細設計</b></p><p>  6.1 系統(tǒng)主

82、要功能模塊介紹</p><p>  網上書店主要分一下幾個功能模塊:</p><p>  ● 網站首頁商品分頁展示</p><p><b>  ● 商品詳細介紹</b></p><p><b>  ● 查看購物車</b></p><p><b>  ● 會員登錄&l

83、t;/b></p><p><b>  ● 用戶注冊</b></p><p>  ● 修改送貨地址及確認訂單信息</p><p>  ● 顯示客戶所有訂單信息</p><p>  6.2 首頁商品展示模塊設計</p><p><b>  詳細功能及描述:</b><

84、/p><p>  獲取圖書分類信息以及圖書基本信息集合</p><p>  循環(huán)顯示圖書分類信息</p><p>  提交顯示指定分類圖書信息的請求,同時傳遞對應圖書編號</p><p>  提交書目搜索請求及搜索條件的表單</p><p>  提交搜索關鍵字的表單元素</p><p>  選擇搜索

85、條件的表單元素</p><p>  顯示圖書記錄總數(shù)、當前頁面編號以及總頁數(shù)</p><p>  循環(huán)顯示對應圖書書目信息</p><p>  顯示圖書名稱、價格、銷售價格、作者信息</p><p>  提交顯示圖書詳細信息請求的超鏈接</p><p>  提交分頁顯示請求的超鏈接,同時提交指定頁面編號</p&g

86、t;<p><b>  顯示圖書銷售排行榜</b></p><p><b>  程序流程圖:</b></p><p>  圖6-1 圖書展示設計流程圖</p><p>  在本頁面中,當點擊選中一件商品時,將提交“ goods.action?goodsId=$(goods.goodsId)”請求,以便于獲取對

87、應圖書的相關信息,在搜索欄,輸入相應的關鍵字,單擊“搜索”按鈕時,將提交“index.action”請求,同時提交查詢條件,進行后續(xù)書目信息搜索的處理。當在書目列表中單擊查看詳細信息請求時,將發(fā)出“goods.action”請求,同時傳遞對應圖書記錄的編號,以獲取指定圖書更新詳細的信息。此外在單擊“首頁”、“上一頁”、“下一頁”“末頁”超鏈接后,將分別提交“index.action?pageNow=1”、“index.action?pa

88、geNow=pageNow-1”、“ index.action?pageNow=pageNow+1”、“ index.action?pageNow=pageCount”等請求,以實現(xiàn)分頁的功能。</p><p>  6.3 商品詳細介紹模塊設計</p><p><b>  詳細功能及描述:</b></p><p>  依據圖書記錄編號獲取待顯示

89、詳細信息的圖書類型的對象</p><p>  分別顯示該圖書對象的詳細信息</p><p>  顯示圖書封面圖片、名稱、簡單介紹、價格、出版社等信息</p><p>  單擊“加入購物車”按鈕后,將提交放入購物車的請求</p><p>  單擊“立即付款”按鈕后,將提交確認訂單的請求</p><p><b>

90、  程序流程圖:</b></p><p>  圖6-2 商品詳細介紹設計流程圖</p><p>  本頁面是在控制器響應了網上書店主頁提交的查看圖書詳細信息請求,即“goods.action”請求后,跳轉到的頁面。在該頁面中將獲取到的指定圖書信息信息顯示出來,同時如果用戶單擊“加入購物車”按鈕,將提交“cart!add.action?goodsId=${goods.goodsI

91、d}”請求,進行后續(xù)放入購物車的處理,如果用戶單擊“立即付款”按鈕,將提交“order.action? goodsId=${goods.goodsId}”請求,進行后續(xù)確認訂單的處理。</p><p>  6.4 顯示購物車模塊設計</p><p><b>  詳細功能及描述:</b></p><p>  獲取該用戶購物車中信息的集合</

92、p><p>  循環(huán)顯示購物車中的每一條購物記錄信息</p><p>  設置購買數(shù)量的文本框</p><p><b>  顯示圖書銷售價格</b></p><p><b>  顯示圖書總價格</b></p><p>  從購物車中刪除購買記錄信息</p><

93、p>  提交繼續(xù)購書請求的超接連</p><p>  提交清空購物車請求的超鏈接</p><p>  提交結算付款請求的超鏈接</p><p><b>  程序流程圖:</b></p><p>  圖 6-3 顯示購物車設計流程圖</p><p>  本頁面是在用戶選擇購買某種圖書商品后,進

94、入的頁面,在該頁面中將顯示該用戶購物車中現(xiàn)有的所有購買需求記錄。同時提供更新購物車的操作界面,例如,可以輸入購買數(shù)量或者選擇刪除購買記錄。單擊“繼續(xù)購書”按鈕后,提交“index.action”請求返回網上書店主界面繼續(xù)購書,或者單擊“清空購物車”按鈕提交“cart!allDel.action”請求。同時,如果用戶確認付款,則可以單擊“立即付款”按鈕跳轉到訂單確認界面,如果用戶處于未登錄狀態(tài),則跳轉到會員登錄界面。</p>

95、<p>  6.5 會員登錄模塊設計</p><p><b>  詳細功能及描述:</b></p><p>  提交用戶登錄請求,同時提交登錄用戶信息的表單</p><p>  提交登錄用戶名及密碼的表單元素</p><p>  智能校驗用戶名和密碼</p><p><b>

96、  登錄按鈕</b></p><p>  提交新用戶注冊請求的超鏈接</p><p><b>  程序流程圖:</b></p><p>  圖 6-4 會員登錄模塊設計流程圖</p><p>  本頁面是顧客在購物車頁面點擊“立即付款”按鈕后跳轉過來的頁面,在該頁面中,用戶在表單中輸入用戶名及密碼,單擊“登錄

97、”按鈕后,將提交“l(fā)ogin.action”請求,以便于進行后續(xù)獲取用戶相關信息的處理,對于沒有用戶身份的新顧客,可以在本頁面中單擊“新用戶注冊”按鈕,跳轉到“register.jsp”頁面進行用戶注冊。</p><p>  6.6 用戶注冊模塊設計</p><p><b>  詳細功能及描述:</b></p><p>  提交新用戶注冊請求,

98、同時提交新用戶注冊信息的表單</p><p>  提交注冊用戶姓名、地址、電子郵件地址、電話、用戶名、密碼以及確認密碼的表單元素</p><p><b>  注冊按鈕</b></p><p><b>  程序流程圖:</b></p><p>  圖 6-5 用戶注冊模塊設計流程圖</p>

99、<p>  在本頁面中注冊用戶可以在表單中輸入對應的注冊信息,在單擊“注冊按鈕后”,將提交”register.action”請求,同時提交新用戶的相關注冊信息,存儲到數(shù)據庫users表中,以便于進行后續(xù)新用戶注冊的處理。</p><p>  6.7修改送貨地址及確認訂單信息模塊設計</p><p><b>  詳細功能及描述:</b></p>

100、<p><b>  獲取客戶信息</b></p><p>  提交選擇送貨方式及付款方式的表單</p><p>  顯示會員信息、姓名、地址、電話、付款方式</p><p>  獲取訂單信息、客戶信息</p><p><b>  顯示購物車中的信息</b></p><

101、;p>  顯示所購圖書書名、數(shù)量、總價</p><p><b>  顯示整張訂單總價</b></p><p><b>  顯示付款方式信息</b></p><p><b>  顯示訂單編號</b></p><p><b>  提交繼續(xù)購書的請求</b>

102、;</p><p><b>  程序流程圖:</b></p><p>  圖 6-6 修改送貨地址及確認訂單信息模塊設計流程圖</p><p>  本頁面是在用戶登錄通過后,跳轉到的頁面,在該頁面中首先獲取對應會員的會員資料,同時提供送貨地址的修改以及付款方式的選擇,在用戶單擊“修改”按鈕后,會執(zhí)行會員資料修改的請求,并且下面將全面顯示該客戶本

103、次購物生成的詳細訂單信息,同時如果單擊“繼續(xù)購書”按鈕將提交“index.action”請求返回網上書店主頁面,如果點擊“查看”按鈕將提交“goods.action”,跳轉到“showDetail.jsp”頁面。</p><p>  6.8顯示客戶所有訂單信息模塊設計</p><p><b>  詳細功能及描述:</b></p><p>  獲

104、取該客戶訂單信息列表</p><p>  顯示訂單編號、時間、總價</p><p>  提交返回購書請求的超鏈接</p><p><b>  程序流程圖:</b></p><p>  圖 6-7 顯示客戶所有訂單信息模塊設計流程圖</p><p>  本頁面將顯示當前用戶的詳細訂單信息,同時用戶

105、可以單擊“繼續(xù)購物”超鏈接提交“index.action”請求跳轉到網上書店主界面。</p><p><b>  7 編碼</b></p><p>  7.1 代碼實現(xiàn)與核心算法</p><p>  首頁業(yè)務對應的Action中定義了一系列需要的參數(shù),如首頁默認顯示第一頁,就設pageNow的值為1,還需要通過spring管理注入進來的good

106、sService獲得需要顯示的商品信息。關鍵代碼如下:</p><p>  //當前頁面序號 默認顯示第一頁</p><p>  private int pageNow = 1;</p><p>  private GoodsService goodsService;</p><p>  //每頁顯示的圖書信息</p><

107、p>  private List<Goods> goodsByPage;</p><p><b>  //頁面總共頁數(shù)</b></p><p>  private int pageCount;</p><p>  //判斷是否是第一次調用此Action 控制彈窗的次數(shù)</p><p>  private

108、 int num = 0;</p><p>  public String execute() throws Exception {</p><p>  //首頁顯示前需要完成的業(yè)務</p><p>  this.num++;</p><p>  this.goodsByPage = this.goodsService.getGoodsByP

109、age(6,pageNow);</p><p>  this.pageCount = this.goodsService.getPageCount(6);</p><p>  return SUCCESS;</p><p><b>  }</b></p><p>  首頁控制公告欄只彈一次的功能實現(xiàn)需要在首頁中判斷當前

110、首頁訪問次數(shù),當次數(shù)num小于等于1的時候就顯示網站的公告,關鍵代碼如下:</p><p>  <s:if test="num<=1"></p><p>  <div class="window" id="right"></p><p>  <div class=&quo

111、t;title"></p><p>  <img alt="關閉" src="images/close.gif" /></p><p><b>  網站公告</b></p><p><b>  </div></b></p><

112、;p>  <div class="content"></p><p>  尊敬的顧客,歡迎光臨-愛書屋!</p><p><b>  </div></b></p><p><b>  </div></b></p><p><b>

113、;  </s:if></b></p><p>  首頁遍歷取出商品信息是通過struts2的標簽<s:iterator>遍歷List類型的goodsByPage來取出相應的商品信息的。關鍵代碼如下:</p><p>  <s:iterator value="goodsByPage" var="goods" s

114、tatus="number"></p><p>  <td width="33%"><table width="100%" height="214" class="abc"></p><p>  <tr><td width="50%&

115、quot; rowspan="3"><a href="goods.action?goodsId=${goods.goodsId}"><img src="images/${goods.photo}" width="189" height="150" /></a></td></p&g

116、t;<p>  <td width="43%" height="89">&nbsp;</td> </tr></p><p>  <tr> <td height="40"><a class="av1" href="goods.action?

117、goodsId=${goods.goodsId}">${goods.goodsName}</a></td></tr></p><p>  <tr><td height="23">價格:¥<font class="price">${goods.goodsPrice}</font>

118、;</td></tr></p><p>  <tr><td height="38" colspan="2" align="left" valign="top">簡單介紹:${goods.goodsIntro}</td></tr></table><

119、/td></p><p>  <s:if test="#number.count==3"></tr></p><p>  <tr><td colspan="3" bgcolor="#FFCCCC" height="9pt"></td></t

120、r></p><p><b>  <tr></b></p><p>  </s:if></s:iterator></p><p>  分頁技術是采用定義一系列<s:url>標簽并傳不同的參數(shù)給index.action來實現(xiàn)的。關鍵代碼如下:</p><p>  <

121、;td colspan="3" height="23" align="center" valign="bottom"></p><p>  <s:url id="url_first" value="index.action"></p><p>  <

122、;s:param name="pageNow" value="1"></s:param></s:url></p><p>  <s:url id="url_pre" value="index.action"></p><p>  <s:param name=&qu

123、ot;pageNow" value="pageNow-1"></s:param></s:url></p><p>  <s:url id="url_next" value="index.action"></p><p>  <s:param name="pageN

124、ow" value="pageNow+1"></s:param></s:url> </p><p>  <s:url id="url_last" value="index.action"></p><p>  <s:param name="pageNow"

125、; value="pageCount"></s:param></s:url></p><p>  <div class="pg"></p><p>  <s:a href="%{url_first}">首頁</s:a></p><p>  &

126、lt;s:if test="pageNow > 1"></p><p>  <s:a href="%{url_pre}">上一頁</s:a></s:if></p><p>  <s:bean name="org.apache.struts2.util.Counter" id=&

127、quot;pagenow"> </p><p>  <s:param name="first" value="1" /> </p><p>  <s:param name="last" value="pageCount" /> </p><p&g

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論