版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p> 畢業(yè)設計說明書(論文)</p><p> 指導者: </p><p> (姓 名) (專業(yè)技術職務)</p><p> 評閱者: </p><p> (姓 名)
2、 (專業(yè)技術職務)</p><p> 2010 年 6 月</p><p> 畢業(yè)設計說明書(論文)中文摘要</p><p> 畢業(yè)設計說明書(論文)外文摘要</p><p><b> 目 次</b></p><p> 1.引言(或緒論)1</p><
3、p> 1.1網上商城介紹1</p><p> 1.2 對網上商城的深入調查1</p><p> 1.3 課題意義2</p><p> 1.4 論文的工作和安排2</p><p> 2.網上購物商城需求分析4</p><p> 2.1 可行性分析4</p><p>
4、 2.2 網上購物商城需求概述4</p><p> 2.3 網上商城系統(tǒng)需求模型5</p><p><b> 3.總體設計8</b></p><p> 3.1 數據庫設計8</p><p> 3.2 系統(tǒng)總體結構設計13</p><p> 4.系統(tǒng)詳細設計14</p&g
5、t;<p> 4.1開發(fā)平臺與工具14</p><p> 4.2數據庫與Web服務器的連接16</p><p> 4.3前臺界面16</p><p> 4.4后臺界面23</p><p><b> 5.軟件測試27</b></p><p> 5.1 系統(tǒng)關鍵部分
6、測試分析27</p><p> 5.2 單元測試27</p><p><b> 5.3 評價29</b></p><p><b> 6.結束語30</b></p><p> 6.1 工作成果30</p><p> 6.2 改進意見30</p>
7、<p> 6.3 收獲體會30</p><p><b> 結 論32</b></p><p><b> 致 謝33</b></p><p> 參 考 文 獻34</p><p><b> 1 引言</b></p><p&
8、gt; Internet奇跡般地改變著我們的生活。打開電腦,輕擊鼠標,叩開商店大門,通過網上購物,這一切已不再是夢想。電子商務從90年代初期興起以來,已從網上購物擴展到了銀行、證券業(yè)的運營,成為一種通過網絡技術的應用,快速而有效地進行各種商業(yè)行為的最新方法。電子商務在今天已被認為是繼電子出版和電子郵件之后在Internet上的又一焦點。國際互聯(lián)網(Internet)在商務中廣泛、深入的應用,宣布了電子商務時代的來臨,不久,將有60%的
9、商務活動在網上運行,您準備好了嗎?企業(yè)如果不開展電子商務,將喪失21世紀國際貿易的“球籍”,您不心急?電子商務是通過互聯(lián)網實現企業(yè)、商戶及消費者的網上購物、網上交易及在線電子支付的一種不同于傳統(tǒng)商業(yè)運營的新型商業(yè)運營模式,電子商務是隨著INTERNET發(fā)展而發(fā)展起來的,主要以EDI(電子數據交換)和INTERNET來實現的,電子商務有廣義和狹義之分,狹義的電子商務是主要利用WEB在網上進行交易,稱作電子網易(E-COMMERCE)。廣義
10、的電子商務包括基于WEB的全部商業(yè)活動,稱作電子商業(yè)(E-BUSINESS)。</p><p><b> 1.1網上商城介紹</b></p><p> 目前常說的網上商城(有時也稱為網絡商店,或者簡稱網店),通常是指建立在第三方提供的電子商務平臺上的、由商家自行開展電子商務的一種形式,正如同在大型商場中租用場地開設商家的專賣店一樣?!?lt;/p><
11、;p> 在電子商務發(fā)展的早期,一些網上零售網站也稱為網上商店,如當當網上書店、亞馬遜網上書店等,隨著這些網上零售網站的快速發(fā)展,其經營商品品種越來越多,規(guī)模也越來越大,因此這些獨立的電子商務網站通常都不再稱為網上商店,而改稱“網上商城”了,一些大型電子商務網站除了自己銷售產品之外,也可能為其他企業(yè)提供租用網上商店或者開設網上專賣店的業(yè)務,因此如果繼續(xù)叫做“網上商店”的確也不能確切描述其全部含義。本系統(tǒng)主要實現的是數碼產品的銷售。
12、</p><p> 1.2 對網上商城的深入調查</p><p> 經過以上的初步調查和研究,并且確定了該平臺的可行性,并決定開發(fā)本平臺,為了能夠對現行的平臺內容進行充分了解,使所要開發(fā)的平臺更具有實用性和適應性,通過調查和指導老師的耐心介紹,設計出該平臺功能如下:</p><p> 1. 能夠完成用戶基本信息錄入的注冊和用戶基本信息的個人前臺與后臺管理。&l
13、t;/p><p> 2. 能夠完成管理員對網站的商品資料(商品添加、商品審查)會員管理(會員審查)、網站信息管理(新聞添加、修改刪除、公告設置),以及常規(guī)設置(廣告添加,友情鏈接)的功能。</p><p> 3. 能過電子商品的名稱,電子商品的分類進行搜索。</p><p> 4. 能夠通過查看購物車對所選商品進行確定、挑選,通過定單查詢對支付費用進行確定。<
14、;/p><p><b> 1.3 課題意義</b></p><p> 也許你曾有過這樣的經歷:為了買一樣東西而跑遍大半個城市,或者擠進人流非常密集的場所?,F代化生活的節(jié)奏越來越快,我們需要的是快捷、便利的購物方式,因此,如何改善購物的便利,就顯得迫在眉睫了,而Internet的高速發(fā)展為我們提供了這樣的購買方式――通過網絡選購想要的產品。</p><
15、;p> 通過網上商城,你可以在最短的時間內查找到所需的數碼產品,然后選擇最優(yōu)的投遞方式把您選擇的商品送到您的手上,從而大大節(jié)省我們彼此寶貴的時間。當然,你還可以在第一時間了解到商城引進的新產品,或者在里面瀏覽,以找到自己感興趣的數碼產品,這一切,都將在您點擊鼠標的過程中輕松完成,從某種程度上說,這更有利于文化知識的傳播。</p><p> 1.4 論文的工作和安排</p><p>
16、; 本次設計的目標是,開發(fā)一個網上商城購物系統(tǒng)。借助該系統(tǒng),管理員通過快捷可靠的數據庫管理,添加商品的信息和系統(tǒng)的一些公告、鏈接,規(guī)范會員信息,設定不同用戶權限,管理后臺貨物的發(fā)送和設置一些特價商品,讓會員能很好地在網上商城愉快地購物。</p><p> 論文設計和實現了網上商城系統(tǒng),論文分為五個部分:</p><p> 第一章即本章引言,簡述網上購物商城這個課題背景以及開發(fā)本系統(tǒng)的
17、意義。</p><p> 第二章為需求分析,本章中明確了系統(tǒng)需要實現的功能,分析了系統(tǒng)的用例,并介紹根據系統(tǒng)的需求選擇的開發(fā)工具和技術的概況。</p><p> 第三章是總體設計,詳細描述了本系統(tǒng)中數據庫的設計情況,并給出了系統(tǒng)總體界面的設計方案。 </p><p> 第四章系統(tǒng)詳細設計,同時提供了主要界面運行的參考圖片,以更直觀了解系統(tǒng)的實現情況。</
18、p><p> 第五章是軟件測試,測試系統(tǒng)功能實現并對測試結果進行記錄分析</p><p> 第六章為結論,為此次畢業(yè)設計做一個總結,總結所獲得的經驗和體會。</p><p> 2 網上購物商城需求分析</p><p><b> 2.1 可行性分析</b></p><p> 網絡平臺已經成為企
19、業(yè)經營管理中一個不可忽視的重要方面,擁有一個全面的、功能強大的、操作簡單的網絡購物商城已經成為企業(yè)營銷發(fā)展的一個必然趨勢。網上購物商城的建立,從銷售方面講,不僅給企業(yè)增加了一個新的銷售渠道,而且方便客戶購買與了解公司的產品及新的銷售方向;從企業(yè)宣傳方面來講,不僅提高了企業(yè)的知名度,還更直觀地展示了企業(yè)的產品,為企業(yè)的宣傳起到一個非常重要的作用。</p><p> 2.2 網上購物商城需求概述</p>
20、<p><b> 2.2.1系統(tǒng)目標</b></p><p> 由于網上商城的特點,整個系統(tǒng)會頻繁地與數據庫進行交互,對于像網上商城這樣額數據流特別大的網絡管理系統(tǒng),必須滿足使用方便,操作靈活等要求。本系統(tǒng)設計的滿足一下幾個目標。</p><p> ? 采用人機對話的操作方式,界面友好美觀,信息查詢靈活,數據庫存儲準確、安全可靠</p>
21、;<p> ? 全面展示購物商城的所有商品,并且可以展示最新商品和特價商品</p><p> ? 便于顧客快捷地進行修改商品信息查詢</p><p> 會員可以隨時修改自己的基本資料</p><p> 實現商品銷售排行功能,以方便顧客了解本購物商城中的熱銷商品和幫助企業(yè)領導者做出企業(yè)營銷方案。</p><p> ?
22、 商城公告公布購物商城中心內的最新信息</p><p> ? 顧客可以隨時查看自己的訂單信息</p><p> ? 對顧客輸入的數據,系統(tǒng)進行嚴格的數據校驗,盡可能排除人為的錯誤</p><p> ? 系統(tǒng)最大限度的實現了易維護性和易操縱性</p><p> ? 系統(tǒng)運行穩(wěn)定、安全可靠</p><p>
23、; 2.2.2用戶類和用戶特性</p><p> 網上購物商城是一個基于B/S模式的電子商務系統(tǒng),它的用戶主要是購物者(會員)和商城管理員,購物者通過該系統(tǒng)進行商品查詢進而對自己需要的商品進行購買及自己的購物車情況進行查詢,商城管理員則通過本系統(tǒng)后臺管理實現對商城商品及會員的高效管理。</p><p> 二類用戶的具體描述如下表所示:</p><p> 表2
24、.1用戶具體描述</p><p> 2.3 網上商城系統(tǒng)需求模型</p><p><b> 2.3.1功能描述</b></p><p> 網上購物商城系統(tǒng)的主要任務是實現購物者迅速檢索查詢,方便添加商品至購物車,后臺管理員高效的完成系統(tǒng)后臺數據的各項基本操作,設置商城的商品,會員的資料等,從圖2.1可以看出網上購物商城系統(tǒng)要完成的功能:&
25、lt;/p><p> 下面的系統(tǒng)用例圖描述了整個系統(tǒng)用戶之間的動作聯(lián)系,及功能模塊的概述</p><p><b> 圖2.1系統(tǒng)用例圖</b></p><p> 2.3.2后臺管理員詳細功能描述</p><p><b> 會員設置功能:</b></p><p> 對會員
26、的基本信息進行管理,包括添加,修改,刪除會員的相關信息,刪除一些惡意注冊的會員信息。</p><p><b> 商品設置功能:</b></p><p> 包括對商品信息的管理,可以增加,修改,刪除圖書,豐富具體類別商品的信息,對商品進行分類操作。</p><p><b> 訂單管理功能:</b></p>
27、<p> 可以完成對訂單的發(fā)貨處理。</p><p><b> 商城公告設置功能:</b></p><p> 對商城公告進行不定期增加、刪除、修改</p><p><b> 修改密碼功能:</b></p><p> 可以修改自己的登錄密碼。</p><p&g
28、t; 2.3.3會員詳細功能描述</p><p> 1) 修改登陸密碼:</p><p> 修改自己的登錄密碼。</p><p><b> 2)找回密碼功能</b></p><p> 通過自己的密碼保護功能找回密碼。</p><p><b> 3)購物車功能</b>
29、;</p><p> 登錄后添加商品至購物車,進行付款購買</p><p> 2.3.4主要用例的用例描述</p><p> 網上商城系統(tǒng)涉及到的用例包括:商品購買,訂單發(fā)貨,會員信息管理,商品信息管理,會員管理等,現就系統(tǒng)的主要用例商品購買,訂單發(fā)貨進行詳細分析。</p><p><b> 用例“商品購買”</b&g
30、t;</p><p> 表2.2 商品購買用例表</p><p><b> 用例“訂單發(fā)貨”</b></p><p> 表2.3 訂單發(fā)貨用例表</p><p><b> 3.總體設計</b></p><p><b> 3.1 數據庫設計</b>
31、;</p><p> 3.1.1數據庫設計概述</p><p> 數據庫是整個系統(tǒng)的基石,數據庫的設計優(yōu)劣直接影響到整個系統(tǒng)的設計成敗,本節(jié)對數據庫的設計進行專門闡述。</p><p> 數據庫設計是把現實世界的實體模型與需求轉換成數據庫的模型的過程,它是建立數據庫應用系統(tǒng)的核心問題。數據庫及其應用的性能都建立在良好的數據庫設計的基礎之上,數據庫的數據是一切操
32、作的基礎,如果數據庫設計不好,那么其它一切用于提高數據庫性能的方法收效都是有限的。數據庫設計的關鍵是如何使設計的數據庫能合理地存儲用戶的數據,方便用戶進行數據處理。</p><p> 設計數據庫必須遵循一定的規(guī)則,在關系型數據庫中,這種規(guī)則就是范式,范式是符合某一種級別的關系模式的集合。一般人們設計數據庫遵循第三范式。即:數據庫表中不包含已在其他表中包含的非主關鍵字信息。采用范式減少了數據冗余,節(jié)約了存儲空間,
33、同時加快了增、刪、改的速度。</p><p> 整個系統(tǒng)所包括的信息有商品信息,會員信息,大分類信息,小分類信息,管理員信息,訂單信息,訂單明細表,公告信息表,友情鏈接信息??蓪⑦@些信息抽象為下列系統(tǒng)所需要的數據項和數據結構:</p><p> 1)商品信息(數據庫流水號,大類別Id,小類別表的Id,商品名稱,商品生產商,商品介紹,商品添加時間,現價,特價價格,購買次數,是否是特價商品
34、)</p><p> 2)會員信息 (數據庫流水號,會員名稱,會員密碼,會員真實姓名,會員年齡,會員職業(yè),電子郵箱,找回密碼問題,找回密碼答案)</p><p> 3)大分類信息(數據庫流水號,商品大分類名稱,創(chuàng)建時間)</p><p> 4)小分類信息 (數據庫流水號,商品大類別的Id,商品小類別名稱,創(chuàng)建時間)</p><p>
35、5)管理員信息(數據庫流水號,管理員賬號,管理員密碼,管理員名稱,是否為管理員標識)</p><p> 6)訂單信息(數據庫流水號,商品訂貨的編號,會員編號,會員真實姓名,訂貨地址,訂貨電話,付款方式,運送方式,備注信息,發(fā)送貨物是否成功)</p><p> 7)訂單明細 (數據庫流水號,訂貨編號,商品編號,價格,訂貨數量,創(chuàng)建時間,)</p><p> 8)
36、公告信息 (數據庫流水號,公告標題,公告內容,公告發(fā)布時間)</p><p> 9)友情鏈接信息 (數據庫流水號,網站鏈接地址名稱,鏈接地址,鏈接圖片地址,創(chuàng)建時間)</p><p> 在這里使用E-R圖描述了網上商城系統(tǒng)的數據模型。圖3.1網上商城系統(tǒng)E-R圖描述了該系統(tǒng)所涉及到的實體以及他們之間的關系。具體結構如下圖所示:</p><p> 圖3.1 系統(tǒng)
37、E-R 圖</p><p> 3.1.2商品信息表結構設計</p><p> 該表主要用來保存各種商品的相關信息,例如商品名稱、類別、商品介紹、價格、是否為特價商品等。表具體設計結構如下 :</p><p> 表3.1商品信息表tb_goods</p><p> 表3.1續(xù) 商品信息表tb_goods</p><p
38、> 3.1.3商品大分類信息表結構設計</p><p> 該表的設計主要用來保存商品類別中大的類別信息。</p><p> 表3.2商品大分類信息表tb_bigType</p><p> 3.1.4商品小分類信息表結構設計</p><p> 類信息表主要用來保存商品類別中的小的類別信息,包括大分類信息表的編號、小分類名稱以及創(chuàng)
39、建時間。</p><p> 表3.3商品小分類信息表tb_smallType</p><p> 3.1.5訂單信息表結構設計</p><p> 此表的設計主要用來保存訂單的概要信息,包括用戶訂單的相關信息,除了用戶的送貨相關信息之外,還有一個貨物是否發(fā)送成功的標識。</p><p> 表3.4 訂單信息主表tb_order</p
40、><p> 3.1.6訂單明細表結構設計</p><p> 該表的設計是用來保存訂單詳細信息,主要包括訂單的商品名稱、數量、價格等。</p><p> 表 3.5訂單明細表 tb_orderDetail</p><p> 3.1.7會員信息表結構設計</p><p> 會員信息表主要用來儲存所注冊會員的信息,主
41、要記錄了會員的名稱、密碼、真實姓名、年齡、職業(yè)、電子郵件、找回密碼的問題及答案等信息。這個數據表在會員注冊和登錄的時候都會是使用到。</p><p> 表 3.6會員信息表tb_member</p><p> 3.1.8管理員信息表結構設計</p><p> 該表的設計用于保存管理員的信息,包括賬號,密碼,名稱,是否為管理員標識等,其中0代表是管理員,1代表不
42、是管理員。</p><p> 表 3.7管理員信息表tb_manager</p><p> 3.2 系統(tǒng)總體結構設計</p><p> 該系統(tǒng)在Windows98/2000/XP環(huán)境下,主要采用JSP開發(fā)工具, SQL數據庫來設計,開發(fā)過程與成果應符合GB/T 11457-1995軟件工程術語,GB/T 8567-1988計算機軟件產品開發(fā)文件編制指南等。&l
43、t;/p><p> 3.2.1網上商城總體結構圖</p><p> 繪制系統(tǒng)結構圖的過程,實際上就是對系統(tǒng)功能模塊進行分解設計的過程,即合理地將數據流程圖轉變?yōu)樗枰南到y(tǒng)結構圖。</p><p> 系統(tǒng)結構圖將會使用戶能直觀的了解系統(tǒng)的結構模式,理解系統(tǒng)的各個功能的結構,能很好地方便用戶使用和理解整個系統(tǒng)。</p><p> 本系統(tǒng)的結
44、構圖如下:</p><p> 圖3.2系統(tǒng)總體結構圖</p><p><b> 4 系統(tǒng)詳細設計</b></p><p> 4.1開發(fā)平臺與工具</p><p> 4.1.1 J2EE平臺 </p><p> J2EE是一種利用Java2平臺來簡化企業(yè)解決方案的開發(fā)、部署和管理相關的復雜
45、問題的體系結構。J2EE技術的基礎就是核心Java平臺或Java2平臺的標準版,J2EE不僅鞏固了標準版中的許多優(yōu)點,例如"編寫一次、隨處運行"的特性、方便存取數據庫的JDBCAPI、CORBA技術以及能夠在Internet應用中保護數據的安全模式等等,同時還提供了對EJB(EnterpriseJavaBeans)、JavaServletsAPI、JSP(JavaServerPages)以及XML技術的全面支持。其最
46、終目的就是成為一個能夠使企業(yè)開發(fā)者大幅縮短投放市場時間的體系結構。</p><p> J2EE體系結構提供中間層集成框架用來滿足無需太多費用而又需要高可用性、高可靠性以及可擴展性的應用的需求。通過提供統(tǒng)一的開發(fā)平臺,J2EE降低了開發(fā)多層應用的費用和復雜性,同時提供對現有應用程序集成強有力支持,完全支持EnterpriseJavaBeans,有良好的向導支持打包和部署應用,添加目錄支持,增強了安全機制,提高了性
47、能。</p><p> 在開發(fā)網上購物商城系統(tǒng)的過程中,應用Myeclipse6.0,它可以在數據庫和J2EE的開發(fā)、發(fā)布,以及應用程序服務器的整合方面極大的提高工作效率。Myeclipse是功能豐富的J2EE集成開發(fā)環(huán)境,包括了完備的編碼、調試、測試和發(fā)布功能,完整支持HTML, Struts, JSF, CSS, Javascript, SQL。</p><p> 4.1.2 St
48、ruts的工作流程</p><p> 對于采用Structs的框架的Web應用程序,在Web應用程序啟動時候就會自動加載并初始化Action Servlet,Action Servlet從structs-config.xml文件中讀取配置信息,然后將這些信息存放到各種配置對象中,例如Action的映射信息存放在Action Mapping對象中。當Action Servlet接受到一個用戶請求時候,將執(zhí)行以下流
49、程:</p><p> (1)檢索和用戶請求匹配的ActionMapping實例,如果不存在,就返回用戶請求路徑無效的信息。</p><p> (2)如果ActionForm實例不存在,就創(chuàng)建一個ActionForm對象,把用戶提交的表單數據保存到ActionForm對象中。</p><p> (3)根據配置信息決定是否需要進行表單驗證。如果需要驗證,就調用A
50、ctionForm的validate方法。</p><p> (4)如果ActionForm的validate方法返回null或者返回一個不包含ActionMessage的ActionErrors對象,就表示表單驗證成功;如果ActionForm的validate方法返回一個或多個ActionMessage的ActionErrors對象,就表示表單驗證失敗,此時ActionServlet將直接把請求轉發(fā)給包含用
51、戶提交表單的JSP組件,在這種情況下,不會再創(chuàng)建Action對象并調用Action的execute方法。</p><p> (5)ActionServlet根據ActionMapping實例包含的映射信息決定將請求轉發(fā)給哪個Action,如果相應的Action實例不存在,就先創(chuàng)建這個實例,然后調用Action的execute方法。</p><p> (6)Action的execute方
52、法返回一個ActionForward對象,ActionServlet再把客戶請求轉發(fā)給ActionForward對象指向的JSP組件。</p><p> (7)ActionForward對象指向JSP組件生成動態(tài)網頁,返回給客戶。</p><p> 4.1.3 WEB服務器和數據庫</p><p> 在系統(tǒng)的開發(fā)過程中使用的Web應用服務器是Tomcat,是A
53、pache 軟件基金會(Apache Software Foundation)的Jakarta 項目中的一個核心項目,由Apache、SUN和其他一些公司及個人共同開發(fā)而成。由于有了Sun 的參與和支持,最新的Servlet 和JSP 規(guī)范總是能在Tomcat 中得到體現。Tomcat是一個小型的輕量級應用服務器,它運行時占用的系統(tǒng)資源小、擴展性好、支持負載平衡和郵件服務等開發(fā)應用系統(tǒng)常用的功能,因此在中小型系統(tǒng)和并發(fā)訪問用戶不是很多的
54、時候,經常被使用。</p><p> 為了開發(fā)的便捷快速,使用struts第三方插件。Struts是一個全新的MVC框架,實在WebWork基礎上發(fā)展起來的。</p><p> 開發(fā)系統(tǒng)用的系統(tǒng)工具如表4.1所示:</p><p> 表4.1 系統(tǒng)開發(fā)平臺和工具</p><p> 4.2數據庫與Web服務器的連接</p>
55、<p> 數據庫連接時采用連接池技術鏈接SQL,具體代碼實現如下:</p><p> public class JDBConnection {</p><p> private String dbDriver = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; //數據庫的驅動</p>&l
56、t;p> private String url = "jdbc:sqlserver://localhost:1433;databaseName=db_shopping"; //URL地址</p><p> public Connection connection = null;</p><p> public JDBConnection() {</p&
57、gt;<p><b> try {</b></p><p> Class.forName(dbDriver).newInstance(); //加載數據庫驅動</p><p> connection = DriverManager.getConnection(url, "sa", "sodi"); //加載數
58、據庫</p><p><b> }</b></p><p> catch (Exception ex) {</p><p> System.out.println("數據庫加載失敗");</p><p><b> }}}</b></p><p>&
59、lt;b> 4.3 前臺界面</b></p><p> 前臺部分由用戶使用,包括用戶注冊,購物車管理,訂單管理,個人資料管理等幾個部分。</p><p><b> (1)模塊功能介紹</b></p><p> 會員管理:為了便于網站的管理,必須有一套完整的會員管理體系。該網站會員管理模塊由用戶注冊,用戶登陸,找回密碼3
60、部分組成。</p><p> 訂單查詢:登陸用戶可以通過訂單號查詢訂單。</p><p> 購物車:所選商品須通過購物車進行保存,然后生成訂單。</p><p> 會員資料修改:為了保護用戶信息不受非法侵害,用戶登陸后即可對個人的注冊信息進行修改。</p><p><b> (2)前臺文件構架</b></p
61、><p> 本網上商城的前臺文件結構如圖4.1所示。</p><p> 圖4.1 前臺文件結構圖</p><p> (3)網站前臺首頁的運行結果如圖4.2所示。</p><p><b> 圖4.2前臺首頁圖</b></p><p> 4.3.1 用戶登錄模塊</p><p
62、> 用戶登陸模塊是防止非法用戶登陸的第一道防線,通過它可以保護后臺數據庫的安全性,當用戶要進行定購時,首先要進入的就是身份驗證界面,只有在密碼正確的情況下才能進行以后的購物,如果輸入的密碼不正確,則不能進行定購。如果用戶以瀏覽者的身份進入網站,則只能進行一般的商品瀏覽和搜索,而不能進行選購,在點擊添加購物車后,系統(tǒng)會判斷該用戶是否是登陸用戶,如果不是則彈出提示頁面,提示用戶必須先登陸才能定購商品,如果是第一次登陸,請先注冊。&l
63、t;/p><p><b> 登錄界面如下:</b></p><p> 圖4.3會員登錄界面</p><p> 在這個模塊的實現中,我們配置了structs-config.xml配置文件,當登錄的時候會相應請求ActionServlet,本模塊中的配置文件中的關鍵代如下:</p><p> <form-beans
64、></p><p> <form-bean name="memberForm" type="com.domain.MemberForm" /></p><p> </form-beans></p><p> <action name="memberForm" pat
65、h="/memberAction" scope="request" ></p><p> <forward name="operationMember" path="/member/memberSuccess.jsp" /></p><p> <forward name="
66、checkMember" path="/member/checkMemberResult.jsp" /></p><p> <forward name="selectOneMemberHead" path="/member/updateMember.jsp" /></p><p> <forw
67、ard name="selectMember" path="/background/member/selectMember.jsp" /></p><p> <forward name="selectOneMember" path="/background/member/</p><p> SelectC
68、ontent.jsp" /></p><p> <forward name="deleteMember" path="/background/member/success.jsp" /></p><p><b> </action></b></p><p>
69、如果用戶還不是會員則提示用戶進行注冊,用戶提交信息之后,系統(tǒng)開始判斷用戶的注冊信息是否有效,首先是用戶名是否為空,(該處存在用戶名命名規(guī)則的問題,后面問題中會詳細解決)用戶輸入的兩次密碼是否一致,然后依次往后判斷用戶所填寫的各項信息是否符合要求,直到所有信息均正確無誤,系統(tǒng)將該用戶注冊信息寫入會員表即member并提示用戶注冊成功,用戶登陸后,就可以進行有效的購物了。</p><p> 注冊頁面的效果圖如下:&
70、lt;/p><p> 圖4.4 會員注冊頁面</p><p> 4.3.2購物車模塊</p><p> 在這里,我先介紹一下購物車的主要表現為:用戶信息和權限相關功能的實現方法,就是選購的物品要一件一件地放進購物車,然后生成訂單,繼而生成訂單進行查詢和修改,最后還要進行訂單處理。</p><p> 現在就介紹購物車的工作原理吧,其實原理并
71、不復雜,我們是把用戶所選購的所有商品的信息全部記錄在用戶的Session中,用戶所選購的商品信息我們是把它封裝處理到一個Bean中后才保存到Session中的。</p><p> 本模塊主要包括以下功能:添加購物車,查看購物車,生成訂單,清空購物車。</p><p><b> ?。?)添加購物車</b></p><p> 添加購物車就是用戶
72、選中的商品暫時放在購物車中。當用戶在前臺首頁中單</p><p> 特價商品或者新品上架的“查看詳細內容”超級鏈接,可以暫時查看出該商品的詳細信息,如圖所示:</p><p> 圖4.5 查看詳情頁面</p><p> 實現添加到購物車的關鍵代碼如下:</p><p> int goodsID=Integer.parseInt(req
73、uest.getParameter("goodsId"));</p><p> float goodsPrice=Float.parseFloat(request.getParameter("price"));</p><p> SellGoodsForm sellGoodsForm=new SellGoodsForm();</p>
74、<p> sellGoodsForm.ID=goodsID;</p><p> sellGoodsForm.price=goodsPrice;</p><p> sellGoodsForm.number=1;</p><p> boolean flag=true;</p><p> Vector cart=(Vector
75、)session.getAttribute("cart");</p><p> if(cart==null){</p><p> cart=new Vector();</p><p><b> }else{</b></p><p> for(int i=0;i<cart.size();i
76、++){</p><p> SellGoodsForm form=(SellGoodsForm)cart.elementAt(i);</p><p> if(form.ID==sellGoodsForm.ID){</p><p> form.number++;</p><p> cart.setElementAt(form,i);&l
77、t;/p><p> flag=false;</p><p><b> }}}</b></p><p><b> if(flag)</b></p><p> cart.add(sellGoodsForm);</p><p> session.setAttribute(&q
78、uot;cart",cart);</p><p> out.println("<script language='javascript'>alert('購買商品功!');window.close();</script>");</p><p> 以上代碼流程是從session中讀取cart對象,如果為空
79、,說明還沒有進行購物或者已經清空購物車,需要新建購物車對象,再將商品名稱與購物車列表中的商品名稱進行對比,如果已經存在,則把商品數量加1。</p><p><b> ?。?)查看購物車</b></p><p> 購物車頁面主要是用于顯示用戶所選擇的商品信息以及每種商品的數量,單價,最后還要包括所選擇商品的總價錢,如圖4.6所示:</p><p&g
80、t;<b> 圖4.6購物車界面</b></p><p> 用戶可以在文本框中輸入想要購買的數量,然后確定購買數量,而要特別注意的是檢查商品金額的計算是否正確。頁面會自動刷新,更新購物車的商品價格,單擊“去收銀臺結賬”按鈕,可以轉向收銀臺頁面,供用戶進行填寫相關資料來付款。它采取的辦法是先將購物車中該商品的訂購記錄刪除。然后在重新增加,之所以這樣做是因為購物車中的訂購記錄都是記錄在內存中
81、的,而如果需要對數據庫進行操作則最好不要這樣,在記錄上進行修改將會得到更高的效率。</p><p><b> ?。?)清空購物車</b></p><p> 清空購物車是指當用戶訂單生成后,一定要將清空購物車再選擇商品,這樣防止重復購物,其實清空購物車實現很簡單,只需要將session中存儲的cart對象清空即可,session.removeAttribute(“ca
82、rt”)這句代碼即可實現。</p><p> 4.3.3訂單和購物清單查詢</p><p> 在完成了購物車之后就可以實現擁有商品的功能了,也就是將用戶選擇的商品生成一個訂單。用戶的訂單信息需要保存到在兩個表中:tb_order表和tb_orderDetail表。tb_orde表用來保存訂單的基本信息,例如:訂貨人,地址,電話等。tb_orderDetail表用來保存訂單中包括的商品信
83、息,例如:購買的商品,商品價格以及數量等。</p><p> ?。?)編寫定單的基本信息ActionForm</p><p> 這里是根據已經定義的tb_order表來完成相應的ActionForm。首先來實現tb_order表所對應的ActionForm,在這個類的開始首先定義了訂單狀態(tài)的常量,這樣可以避免程序中使用不能確定含義的整數處理訂單狀態(tài)的情況出現,增強了程序的可讀性。<
84、/p><p><b> ?。?)訂單查詢頁面</b></p><p> 在關于訂單功能的操作中,主要涉及到了3個頁面,包括:生成訂單頁面,訂單提交結果頁面,訂單列表頁面。</p><p> A.生成訂單頁面 </p><p> 生成訂單頁面主要是供用戶輸入收貨人的聯(lián)系地址,電話等送貨信息,如圖4.7所示。</p
85、><p> 圖4.7 訂單提交頁面</p><p> 在這個頁面中,為了減少用戶的輸入量,系統(tǒng)將用戶自己設置為默認的收貨人,而相應的其他信息的默認值也是用戶在注冊時填寫的信息。在這個頁面中是通過從Session中得到用戶基本信息。</p><p> B.訂單提交結果頁面</p><p> 下面要完成的是訂單提交后的提交結果頁面,它的主要功
86、能是將用戶訂單相關的信息再一次顯示出來,以便用戶可以核實,及時發(fā)現是否有填寫錯誤等問題,如圖4.8所示。</p><p> 圖4.8訂單提交頁面</p><p> 這個頁面需要后臺處理的數據是剛才所生成的訂單對象,而這個頁面中的具體訂單條目的信息仍然取自購物車,這樣避免了需要查詢數據庫的麻煩。</p><p><b> C.訂單列表頁面</b&
87、gt;</p><p> 下面訂單列表的頁面在很多地方都能用到,例如,可以用于顯示未處理、正在處理、已處理的訂單列表,也可以用于顯示歷史訂單列表,還可以用于顯示訂單的查詢結果等,如圖4.9所示。</p><p> 圖4.9訂單列表頁面</p><p> 這個頁面的實現比較簡單,只是將后臺Action查詢出來的訂單信息一一顯示出來,并提供查看明細鏈接,供用戶查看
88、每個訂單的詳細信息。</p><p><b> 4.4后臺界面</b></p><p> 網上購物系統(tǒng)除了能夠讓用戶實現前臺的瀏覽和購物等操作之外,還必須能夠使管理人員能夠對系統(tǒng)的各種信息進行維護,比如商品的增加、刪除、修改,會員的審查,網站新聞的更新等等。管理功能是網上購物系統(tǒng)相當重要的一部分功能。</p><p> 進入之后系統(tǒng)管理的
89、主頁面 采用了框架結構,左邊是一個樹型菜單,右邊顯示具體信息。</p><p> 管理的主要功能有商品信息的更新,會員信息維護,網站信息維護,廣告鏈接設置等四大塊。</p><p> 本網上商城的后臺文件結構如圖4.10所示。</p><p> 4.10 后臺文件結構圖</p><p> 4.4.1商品設置模塊</p>
90、<p> 商品信息管理,主要就是添加新的商品,刪除和修改已經添加的商品。</p><p><b> 如下圖所示</b></p><p> 圖4.11 商品管理界面</p><p> 這部分主要對是數據庫的操作,所以sql語句的編寫特別重要,相關sql代碼如下所示:</p><p> 商品詳細信息:St
91、ring goods_selectOne = "select * from tb_goods where id=? order by id DESC";</p><p> 刪除商品:String goods_delete=”delete from tb_goods whre id=?”;</p><p> 修改商品信息:String goods_update= &q
92、uot;update tb_goods set goodsName=?,bigId=?,</p><p> smallId=?where id=?";</p><p> 4.4.2會員設置模塊</p><p> 會員信息管理,則主要是對一些惡意注冊用戶進行刪除,如下圖</p><p> 圖4.12會員信息管理界面</p
93、><p> 這部分的sql代碼如下所示:</p><p> 會員詳細信息:String member_select = "select * from tb_member order by id DESC";</p><p> 刪除會員:String member_insert = "insert into tb_member valu
94、es (?,?,?,?,?,?,?,?)";</p><p> 4.4.3會員設置模塊</p><p> 商品訂單信息管理,主要是會員的訂單進行查看,進行出貨,刪除,如下圖:</p><p> 圖4.13商品訂單信息界面</p><p> 相關sql代碼如下所示:</p><p> 訂單詳細信息:S
95、tring order_select = "select * from tb_order order by id DESC";</p><p> 刪除訂單:String order_delete ="delete from tb_order where number=?";</p><p> 是否發(fā)貨:String order_updateSig
96、n ="update tb_order set sign=1 where number=?";</p><p> 4.4.4 公告設置模塊</p><p> 公告設置模塊,進行網上新聞的發(fā)布,修改刪除,以及系統(tǒng)公告等信息的設置,這些功能雖然無關緊要,但在實際中卻能方便用戶,提高網站效益。</p><p> 圖4.14 公告信息管理界面<
97、;/p><p> 公告信息,可進行一些廣告信息的發(fā)布,及更新和修改,主要是發(fā)布一些促銷信息,能夠給自己帶來一些經濟上的收益。</p><p> 在完成系統(tǒng)的更新之后,作為管理人員,應該及時注銷自己的帳戶,樹型菜單的上方提供了注銷登陸的選項,點擊之后,注銷用戶,并返回到前臺頁面,防止他人惡意修改網站信息,造成不必要的損失。</p><p> 以上兩個部分都是比較簡單
98、的功能實現,具體實現過程與前幾個類似。</p><p><b> 5.軟件測試</b></p><p> 5.1 系統(tǒng)關鍵部分測試分析</p><p> 系統(tǒng)完成之后,對各個模塊的功能進行了詳細的測試,輸入數據和預測輸出數據相比,發(fā)現了一些問題。主要是在查詢過程中預計查詢結果和實際結果不一致,有時候達不到目的,對數據庫的操作表之間的關聯(lián)考
99、慮得不夠周到,因此往往會出現一些小的錯誤。還有查詢條件的前后數據類型不一致也是一個很常見的錯誤,需要靠一步步的查找解決。各個模塊組裝完成后,又會出現一些問題。比如在操作購物車結帳的這個流程中,由于是多次添加和修改,最后結帳,所以很容易造成數據混亂,必須對相應的數據關系理清楚,一些關鍵查詢統(tǒng)計的SQL語句必須反復斟酌才能放在程序中使用。</p><p><b> 5.2單元測試分析</b>&
100、lt;/p><p> 5.2.1登錄模塊測試</p><p> 當用戶輸入正確的用戶名wangxin和密碼111,系統(tǒng)跳轉到登陸成功頁面;當輸入空用戶名,提示請輸入用戶名;當輸入用戶名和空密碼,提示請輸入密碼;當輸入用戶名和錯誤的密碼,提示您輸入的用戶名或密碼錯誤。</p><p> 當用戶輸入的用戶名或密碼錯誤是系統(tǒng)會跳轉到出錯頁面并提示“您輸入的用戶名或密碼錯
101、誤”,用戶點擊確定,系統(tǒng)會重新返回登陸頁面,其中錯誤信息提示頁面如圖5.1所示:</p><p> 圖5.1 系統(tǒng)出錯提示頁面</p><p> 5.2.2更改密碼模塊測試</p><p> 用戶登錄系統(tǒng)后可對自己的登錄密碼進行更改,更改過程要求用戶提供原始密碼,輸入新密碼,重新輸入新密碼進行確認,如果用戶輸入的原始密碼錯誤,或兩次輸入的新密碼不一致將無法執(zhí)行
102、密碼更新操作,系統(tǒng)會給出相應的提示,起顯示頁面為:</p><p> 圖5.2 兩次密碼不一致提示頁面</p><p> 5.2.3購物車模塊測試</p><p> 購物車模塊是我們需要特別注意的地方,因為它涉及到了我們數據庫中的大部分數據,并且是進行網上交易的最關鍵部分。</p><p> 我們以用戶wangxin的身份登入系統(tǒng),用
103、戶名是:wagnxin 密碼是:111</p><p> 然后點擊定購商品:洗衣機 單價為5000元 </p><p> 彈出購物車清單:選擇商品數量 2 確認 </p><p> 付款后進入訂單查看明細,與我們估算的數據相符,如圖所示:</p><p> 圖5.3 訂貨明細查詢圖一</p><p
104、> 此時選擇清空購物車,繼續(xù)購物,與我們估算的數據也相符,證明清空購物車的功能正常有效,并沒有將我們第一次選購的物品計算在內,價格的計算也正確無誤,如圖所示:</p><p> 圖5.4訂貨明細查詢圖二</p><p> 5.2.4測試分析總結及說明</p><p> 在測試過程中,我經過模塊測試和組裝測試,排除了系統(tǒng)的大部分錯誤。當然排除所有錯誤是不
105、太可能的,我想應該還有些不易檢測到的錯誤還沒有被發(fā)現,需要在使用的過程中進一步的完善,數據庫的加密是一個重要的概念,在實際的應用過程中是一個尚待解決的問題,應該做好數據庫的完善工作,特別是備份和安全工作。</p><p><b> 5.3 評價</b></p><p> 通過單元測試,查找出了系統(tǒng)各模塊內部的錯誤,發(fā)現了模塊間相互協(xié)調和通信上的錯誤。通過改正錯誤的
106、設計和實現部分,保證了網上商城系統(tǒng)可以完成需求分析中制定的需求。</p><p> 從上面的測試中可以看出,此系統(tǒng)可以完成用戶登錄、系統(tǒng)設置、商品管理、會員管理、訂單管理等功能。會員在本系統(tǒng)的應用下可實現按照各種種類(如:電器,書籍,食品)查詢商品,方便的把商品加入購物車,付款購買,能夠查詢自己的購買情況。后臺管理人員能夠實現方便的對商品進行查詢,刪除和添加,方便的進行會員購買訂單情況查詢,進行訂單發(fā)貨的處理等
107、,對會員信息進行相關添加,修改等操作。測試階段的工作一方面發(fā)現了系統(tǒng)的各種錯誤,另外一方面也驗證了修改后的系統(tǒng)能夠實現提高網上商城工作效率的預期目的。</p><p><b> 6 結束語</b></p><p><b> 6.1 工作成果</b></p><p> 在MyEclipse開發(fā)環(huán)境下,以J2EE為平臺,
108、運用JSP網絡編程語言和Struts框架和SQL數據庫完成了B/S模式的網上商城系統(tǒng)。系統(tǒng)基本上實現了預期的各項功能,達到了任務書中的主要設計內容的各項任務,整個系統(tǒng)也在經過測試和不斷地改正之后能夠順利運行。基本上實現了開題報告中的需求設計在程序編寫,該系統(tǒng)能夠實現:</p><p> 1.會員在本系統(tǒng)的應用下可實現按照各種分類(如:煙酒,辦公商品,家用電器等)查詢商品,方便的添加商品至購物車,付款,查看訂單
109、,能夠修改自己的會員資料等。</p><p> 2.后臺管理人員能夠實現方便的對商品進行查詢、刪除、添加、修改,方便的進行會員購買訂單情況查詢,方便的進行訂單出貨處理等,方便對會員信息進行相關添加,修改,等操作,方便對商城公告和鏈接網站進行添加,刪除和修改等操作。</p><p><b> 6.2 改進意見</b></p><p> 該系
110、統(tǒng)在使用第三方插件Strusts時采用的是1.2版本的,若使用更新的2.0版本會更大的改進系統(tǒng)的開發(fā)便捷性和可維護性,系統(tǒng)在數據庫與Web服務器的連接時采用的是連接池技術,若在數據庫連接時使用現在流行的第三方插件Hibernate3.0,會使系統(tǒng)有更強的數據庫映射關系,進而極大簡化開發(fā)過程,還有就是系統(tǒng)在一些信息設置的細節(jié)上還存在不足,可以對系統(tǒng)的相關字段進行格式設置和異常處理,使數據更加規(guī)范化。</p><p>
111、;<b> 6.3 收獲體會</b></p><p> 經過三個月的不斷學習和設計開發(fā)加上老師同學的幫助,終于完成了我的畢業(yè)設計題目“基于J2EE的網上商城”的開發(fā)。我具體論述了網上購物系統(tǒng)的主要功能及體系結構,討論了系統(tǒng)數據準備、數據庫的邏輯結構分析、各模塊系統(tǒng)流程,各功能模塊的關聯(lián)和響應 ,JSP與后臺數據庫鏈接等關鍵技術。</p><p> 通過網上商城的
112、開發(fā),我進一步加深了對數據的增、刪、查、改,加深了對JavaBean組件模型, Servlet請求、應答、會話,以及JDBC的理解,了解并基本掌握了MVC的架構,能通過其進行基于MVC規(guī)范的開發(fā),了解并基本掌握了MVC的架構,能通過其進行基于MVC規(guī)范的開發(fā)。在配置開發(fā)工具過程中對Tomcat和MyEclipse的連接部署有了清晰地認識,在寫配置文件的時候也有了相當的了解, 對開發(fā)Web程序的步驟框架頁有了總體性認識。對于數據庫,沒有用
113、到Hibernate,所以在以后的系統(tǒng)開發(fā)中還需要改進,進行三層框架式的開發(fā)。</p><p><b> 結 論</b></p><p> 經過三個月的不斷學習和設計開發(fā)加上老師同學的幫助,終于完成了我的畢業(yè)設計題目“基于J2EE網上商城”的開發(fā),在此期間,我根據題目要求,查閱了大量關于網上銷售的相關資料,切實地按照軟件工程的步驟,從需求分析,概要設計,詳細設計
114、,數據庫設計,再到編碼,調試運行,測試等步驟?,F已順利完成各個步驟的開發(fā)工作,基本達到預期設計的要求。</p><p> 通過本次畢業(yè)設計,使我無論在理論上還是在實踐上都有一個較大幅度的提高,尤其是對具體業(yè)務的抽象能力和對各種技術及框架的綜合運用能力,同時也培養(yǎng)了自己獨立分析問題、解決問題以及與他人溝通交流的能力。</p><p> 在整個設計過程中,我逐步地對MVC框架有了更加深刻的
115、認識,也對其中的JAVA語言有了深刻的理解。JAVA語言是完全面向對象的語言。而且使用起來極為方便,界面友好,編譯簡單,只要編譯一次以后在運行時就不需要再次編譯了,節(jié)省了運行的時間,提高了響應速度。其次對軟件開發(fā)流程有了進一步的了解。本次設計運用了大量軟件工程的思想和相關的數據庫知識,對大學所學的知識得以鞏固和運用。本次項目雖小,我卻悟出了個簡單的道理:學習東西就像軟件開發(fā)一樣,拿到一本書之后看看,提出自己未知的問題,進而分析該問題,讀
116、懂書學會去解決。</p><p><b> 致 謝</b></p><p> 四年的艱苦跋涉,三個月的精心準備,畢業(yè)論文終于到了劃句號的時候,心頭照例該如釋重負,但寫作過程中常常出現的輾轉反側和力不從心之感卻揮之不去。論文寫作的過程并不輕松,工作的壓力時時襲擾,知識的積累尚欠火候,于是,我只能一次次埋頭于圖書館中,一次次在深夜奮筆疾書。第一次花費如此長的時間和如
117、此多的精力,完成一篇具有一定學術價值的論文,其中的艱辛與困難難以訴說,但曲終幕落后留下的滋味,值得我一生慢慢品嘗。</p><p> 我要感謝我的指導教師徐建老師。徐老師雖身負教學、科研重任,仍抽出時間,不時召集我和同門以督責課業(yè),耳提面命,殷殷之情盡在諄諄教誨中。這篇論文更傾注了他的大量心血。從初稿到定稿,范老師不厭其煩,一審再審,大到篇章布局的偏頗,小到語句格式的瑕疵,都一一予以指出。同時,我要感謝所有給我
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于j2ee的網上商城畢業(yè)論文
- 基于j2ee的網上商城設計與實現
- 基于J2EE技術的網上商城系統(tǒng)設計.pdf
- 基于j2ee架構的網上商城設計與實現
- 基于J2EE技術的網上商城系統(tǒng)構建.pdf
- 詳細設計-基于j2ee的網上商城設計與實現
- 基于j2ee的運動商品網上商城設計與實現
- 基于J2EE網上商城平臺的設計與實現.pdf
- 基于j2ee結構的網上商城的設計與實現畢業(yè)設計
- 基于j2ee的網上購物商城設計
- 網上商城畢業(yè)論文
- 網上商城畢業(yè)論文
- android網上商城——畢業(yè)論文
- 網上商城系統(tǒng) 畢業(yè)論文
- 網上商城系統(tǒng)畢業(yè)論文
- 網上商城系統(tǒng)畢業(yè)論文
- 網上商城畢業(yè)論文--網上購物商城設計和實現
- 畢業(yè)論文--網上商城的設計與實現
- 畢業(yè)論文論文——網上商城的設計與實現
- 畢業(yè)論文——網上商城系統(tǒng)的設計與實現
評論
0/150
提交評論