版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(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> 題目基于J2EE結(jié)構(gòu)的網(wǎng)上商城的設(shè)計(jì)與實(shí)現(xiàn)</p><p> 系部:軟件學(xué)院 </p><p> 專業(yè):軟件技術(shù) </p><p> 班級(jí):軟件(2)班 </p><
2、p> 學(xué)號(hào): </p><p> 姓名:吳xx </p><p> 指導(dǎo)教師: xx </p><p> 完成日期: 2011 年5月 6 日</p><p><b> 摘 要</b></p><p> 隨著社會(huì)的發(fā)
3、展,科技的進(jìn)步,作為信息載體的計(jì)算機(jī)日益顯露出其舉足輕重的地位。當(dāng)今社會(huì)已步入了信息社會(huì),知識(shí)經(jīng)濟(jì)將成為新世紀(jì)的主導(dǎo)產(chǎn)業(yè)。伴隨計(jì)算機(jī)的逐步推廣和使用,計(jì)算機(jī)已在科研、生產(chǎn)、商業(yè)、服務(wù)等許多方面創(chuàng)造了提高效率的途徑。</p><p> 特別是人類進(jìn)入新千年以來(lái),信息產(chǎn)業(yè)得到飛速發(fā)展。經(jīng)濟(jì)的全球化,人們生活在動(dòng)態(tài)流通的環(huán)境中,也越來(lái)越需求及時(shí),互動(dòng),反饋的為標(biāo)準(zhǔn)的服務(wù)產(chǎn)品。Internet飛速發(fā)展使互聯(lián)網(wǎng)成為人們快
4、速獲取發(fā)布和傳遞信息的重要渠道,也使電子商務(wù)平臺(tái)得到廣泛的應(yīng)用,特別是阿里巴巴(支付寶)、中銀控(Chinapay)等大型公司的第三方支付平臺(tái)的相繼推出,使網(wǎng)絡(luò)購(gòu)物功能日趨完善和成熟。可以說(shuō)電子商務(wù)正改變著人們已有的生活方式。其在改善生活質(zhì)量的同時(shí),在用戶體驗(yàn)方面也得到很大提升。</p><p> 因此,本文著眼于電子商務(wù)平臺(tái),從基于網(wǎng)上商城系統(tǒng)入手,模擬淘寶網(wǎng)、京東商城、當(dāng)當(dāng)網(wǎng)等三大網(wǎng)購(gòu)門戶網(wǎng)站,以服務(wù)器-瀏
5、覽器(B/S)架構(gòu),整合最新web2.0 開(kāi)發(fā)的Hibernate3.x+Struts2.x+Jquery開(kāi)源框架,嘗試對(duì)網(wǎng)上購(gòu)物系統(tǒng)的各功能模塊及業(yè)務(wù)邏輯作出簡(jiǎn)要淺析,并對(duì)部分用例給出具體實(shí)現(xiàn)。</p><p> 關(guān)鍵字:網(wǎng)上購(gòu)物;購(gòu)物車;權(quán)限管理;訂單</p><p><b> Abstract</b></p><p> With t
6、he social development, technological advances, increasing the computer as an information carrier revealing his important position. Today's society has entered the information society, knowledge-based economy will be
7、the leading industry in the new century. With the gradual promotion and use of the computer, the computer in scientific research, production, commerce, services, and many other aspects to create a more efficient way.<
8、/p><p> In particular the new millennium, mankind has been the rapid development of information industry. Economic globalization, the flow of people live in a dynamic environment, more and more demand for time
9、ly, interactive feedback as the standard of service products. The rapid development of Internet makes quick access to the Internet become an important issue and transfer of information channels, e-commerce platform also
10、widely used, especially Ali Baba (Alipay), Bank of Control (Chinapay) and other</p><p> Therefore, this paper focuses on e-commerce platform, starting from the Online Shopping Mall-based, simulation Taobao,
11、 Jingdong Mall, Dangdang three major online shopping portal to the server - the browser (B / S) architecture, integrating the latest web2. 0 developed Hibernate3.x + Struts2.x + Jquery open source framework, try online s
12、hopping system and the functional modules of business logic to make a brief, and gives some concrete realization of use cases</p><p> Keywords: online shopping; shopping cart; rights management; orders</
13、p><p><b> 目錄</b></p><p><b> 前言1</b></p><p> 1. 項(xiàng)目需求及設(shè)計(jì)說(shuō)明2</p><p> 1.1 項(xiàng)目開(kāi)發(fā)環(huán)境2</p><p> 1.2 技術(shù)實(shí)現(xiàn)2</p><p> 1.3 名稱解
14、釋:2</p><p> 1.4 項(xiàng)目背景3</p><p> 1.5 用例模塊描述4</p><p> 1.5.1用戶權(quán)限4</p><p> 1.5.2我的訂單4</p><p> 1.5.3商品展示5</p><p> 1.5.4購(gòu)物車5</p>&
15、lt;p> 2、項(xiàng)目設(shè)計(jì)說(shuō)明5</p><p> 2.1 系統(tǒng)基本架構(gòu)5</p><p> 2.2 數(shù)據(jù)庫(kù)設(shè)計(jì)6</p><p> 2.2.1類別表(Category)6</p><p> 2.2.2商品表(Product)6</p><p> 2.2.3用戶表(Users)7</p
16、><p> 2.2.4收件人地址表(receive_address)7</p><p> 2.2.5選購(gòu)條目表(item)7</p><p> 2.2.6 訂單表(Order)8</p><p> 2.2.7 訂單項(xiàng)表(OrderLine)8</p><p> 2.3 領(lǐng)域模型8</p>
17、<p> 2.3.1 com.wuyf.actions.authorize8</p><p> 2.3.2 com.wuyf.atcions.order8</p><p> 2.3.3 com.wuyf.actions.cart8</p><p> 2.3.4 com.wuyf.actions.main9</p><p&
18、gt; 2.4 業(yè)務(wù)模型9 </p><p> 2.4.1 com.wuyf.service.CartService9</p><p> 2.4.2 com.wuyf.service.OrderService 10</p><p> 2.4.3 com.wuyf.service.UserService10</p><p>
19、 2.4.4 com.wuyf.service.CategoryService11</p><p><b> 3.用例實(shí)現(xiàn)12</b></p><p> 3.1 功能概述12</p><p> 3.1.1 前臺(tái)運(yùn)營(yíng)12</p><p> 3.1.2 后臺(tái)管理12</p><p>
20、; 3.1.3 后臺(tái)服務(wù)13</p><p> 3.2 代碼實(shí)現(xiàn)13</p><p> 3.2.1 用戶權(quán)限管理13</p><p> 3.2.2 用戶注冊(cè)19</p><p> 3.2.3 用戶激活20</p><p> 3.3 商品信息分類瀏覽23</p><p>
21、 3.4 訂單生成24</p><p> 3.5代碼結(jié)構(gòu)分類明細(xì)26</p><p><b> 4.結(jié)論27</b></p><p><b> 5.參考文獻(xiàn)28</b></p><p><b> 6.致謝29</b></p><p>
22、<b> 前言</b></p><p> 計(jì)算機(jī)信息管理中的廣泛使用,也使得網(wǎng)絡(luò)購(gòu)物越來(lái)越普遍,給顧客帶來(lái)很大便利。建立一個(gè)網(wǎng)絡(luò)商城系統(tǒng)能更加有效率的進(jìn)行商品的買賣活動(dòng),使顧客可以在商城中輕松購(gòu)物,并完成商品和貨幣的交易。極大的方便了人們的生活,使合法的直銷模式成為可能。并將為促進(jìn)商品經(jīng)濟(jì)的流通呈現(xiàn)新局面創(chuàng)造條件。WEB2.0理念的融入,進(jìn)一步提升了用戶的個(gè)人體驗(yàn),使使用者從單一的信息瀏
23、覽者到信息的發(fā)布者、決策者之間轉(zhuǎn)變。</p><p> 本文用例的設(shè)計(jì),參照真實(shí)企業(yè)項(xiàng)目---IDG 投資兄弟公司“當(dāng)當(dāng)網(wǎng)”門戶系統(tǒng)中的“在線購(gòu)書(shū)系統(tǒng)”。嘗試基于J2EE的企業(yè)級(jí)應(yīng)用中的核心技術(shù)和開(kāi)發(fā)流程,簡(jiǎn)要給出設(shè)計(jì)文檔,并對(duì)部分功能模塊給出必要分析。該項(xiàng)目包含基本模塊有:用戶權(quán)限管理、商品分類瀏覽、后臺(tái)服務(wù)、訂單生成及與之相對(duì)應(yīng)的數(shù)據(jù)庫(kù)表的設(shè)計(jì)。后臺(tái)服務(wù)主要包括:日志服務(wù)、訂表單的維護(hù)和對(duì)用戶數(shù)據(jù)進(jìn)行及時(shí)收
24、集、加工、整理、貯存、檢索、傳遞、反饋等。</p><p> 從本文著手?jǐn)M題到最終的成稿,筆者參考了大量 JavaWeb 方面的資料,其間也多次幾易其稿,目的也是為了論文的日臻完善。計(jì)算機(jī)技術(shù)飛速發(fā)展,用戶需求的提高使得網(wǎng)上購(gòu)物系統(tǒng)的開(kāi)發(fā)和測(cè)試變得異常復(fù)雜,而本人也只能算是J2EE平臺(tái)項(xiàng)目開(kāi)發(fā)的入門者,加之模塊完成布署后進(jìn)行單元測(cè)試方面的限制(比如可供實(shí)際操作的數(shù)據(jù)庫(kù)、WEB服務(wù)器),本文只對(duì)用戶權(quán)限管理、分類
25、瀏覽、購(gòu)物車、訂單生成等模塊給出具體實(shí)現(xiàn),其余部分給出的是需求分析。</p><p> 與本文檔相應(yīng)的同源代碼將一并發(fā)布</p><p> 1. 項(xiàng)目需求及設(shè)計(jì)說(shuō)明</p><p> 1.1 項(xiàng)目開(kāi)發(fā)環(huán)境</p><p> 開(kāi)發(fā)平臺(tái):WINDOWS XP</p><p> 開(kāi)發(fā)工具:MyEclipse 6.0
26、 + JDK1.6</p><p> 服務(wù)支持:tomcat服務(wù)器 + Mysql 數(shù)據(jù)庫(kù)</p><p><b> 1.2 技術(shù)實(shí)現(xiàn)</b></p><p> 本系統(tǒng)基于J2EE 企業(yè)級(jí)應(yīng)用核心所采用的技術(shù)主要為CoreJava 、Servlet、 JSP、XML。MVC設(shè)計(jì)模式下所采用的開(kāi)源框架主要有:數(shù)據(jù)持久層Hibernate3.
27、1;流程控制Struts2.1.6 。</p><p> WEB 網(wǎng)頁(yè)方面的HTML/CSS 、JavaScript 、Jquery、異步刷新頁(yè)面Ajax 及動(dòng)態(tài)網(wǎng)頁(yè)邏輯控制的JSTL標(biāo)記和OGNL對(duì)象導(dǎo)航圖語(yǔ)言</p><p><b> 1.3 名詞解釋:</b></p><p> 1.3.1.注冊(cè)用戶(Register User):
28、本系統(tǒng)的使用權(quán)面向所有公眾,以游客身份進(jìn)入系統(tǒng)時(shí)可以瀏覽部分商品,并可將所選擇的商品加入購(gòu)物車。但無(wú)法為所購(gòu)商品支付并生成有效訂單。注冊(cè)用戶在數(shù)據(jù)庫(kù)中有對(duì)應(yīng)記錄,用戶在使用注冊(cè)用戶登錄時(shí)可以選購(gòu)并為商品支付、生成訂單 </p><p> 注冊(cè)用戶包含的信息:用戶名,E-Mail地址,昵稱,登錄密碼,激活碼,用戶積分,登錄IP等。</p><p> 1.3.2.激活碼(Activatio
29、n Code):普通用戶在完成注冊(cè)時(shí)系統(tǒng)會(huì)自動(dòng)生成一個(gè)激活碼并按用戶所提供的郵件地址發(fā)到用戶郵箱,用戶只有登錄到有效郵箱進(jìn)行激活后才能進(jìn)行下一步操作,用戶也可以選擇注冊(cè)時(shí)暫不激活等下次使用時(shí)才激活。</p><p> 1.3.3.用戶積分(User Integral):用戶在每完成一筆交易后都可或取一定的積分,用戶可以使用該積分充抵相應(yīng)面值的貨幣,或者在商家指定的商品范圍內(nèi)享受優(yōu)惠。 </p>&
30、lt;p> 1.3.4.商品目錄:(Product Category):為了使系統(tǒng)可維護(hù),具有更大的開(kāi)放性。商城中所列的所有商品不是通過(guò)靜態(tài)頁(yè)面返給用戶的,而是根據(jù)數(shù)據(jù)庫(kù)里數(shù)據(jù)動(dòng)態(tài)生成的。商品的目錄關(guān)系在數(shù)據(jù)庫(kù)中由主外鍵關(guān)系關(guān)聯(lián)著</p><p> 1.3.5.購(gòu)物車:(Shop Cart):對(duì)于每一合法登錄的使用者系統(tǒng)都會(huì)自動(dòng)分配一個(gè)購(gòu)物車供用戶使用,使用者可將所需要的商品添加到購(gòu)物車中,該購(gòu)物車可在
31、多個(gè)頁(yè)面間共享。</p><p> 1.3.6. 訂單(Order Item):用戶在確認(rèn)交易后,根據(jù)登錄信息、收件人地址和購(gòu)物車?yán)锏膬?nèi)容生成一個(gè)訂單。以備商家根據(jù)訂單的詳細(xì)內(nèi)容對(duì)用戶進(jìn)行發(fā)貨。</p><p><b> 1.4 項(xiàng)目背景</b></p><p> 近年來(lái)隨著計(jì)算機(jī)的日益普及和網(wǎng)絡(luò)(特別是因特網(wǎng))的迅速發(fā)展,在全球范圍內(nèi)形
32、成了一種新的企業(yè)經(jīng)營(yíng)方式,他們把所有的商業(yè)活動(dòng)和貿(mào)易往來(lái)電子化,利用發(fā)達(dá)的網(wǎng)絡(luò)環(huán)境 進(jìn)行快速有效的商業(yè)活動(dòng)。這就是最近成為世界上最熱門的話題:電子商務(wù)。 </p><p> 其實(shí),電子商務(wù)這個(gè)概念起源于七十年代,在那時(shí),一些大公司通過(guò)建立自己的計(jì)算機(jī)網(wǎng)絡(luò)實(shí)現(xiàn)各個(gè)機(jī)構(gòu)之間、商業(yè)伙伴之間的信息共享、交換,這就是廣為流行的電子數(shù)據(jù)交換(EDI)。電子數(shù)據(jù)交換是一種為滿足企業(yè)需要而發(fā)展起來(lái)的先進(jìn)技術(shù)手段,必須遵照統(tǒng)一的
33、國(guó)際標(biāo)準(zhǔn)。EDI通過(guò)傳遞標(biāo)準(zhǔn)的數(shù)據(jù)流可以避免人為的失誤,大大地降低成本、提高效率?,F(xiàn)在,因特網(wǎng)為電子商務(wù)帶來(lái)了飛速的增長(zhǎng),電子商務(wù)會(huì)越來(lái)越成為主流的商務(wù)活動(dòng)方式,但EDI是電子商務(wù)的基礎(chǔ),并且EDI技術(shù)已經(jīng)擺脫了以前舊式的昂貴的公司獨(dú)立網(wǎng)絡(luò),而融入到因特網(wǎng)中。</p><p> 當(dāng)今世界網(wǎng)絡(luò)、通信和信息技術(shù)的發(fā)展,Internet在全球迅速普及,使得商業(yè)空間發(fā)展到全球的規(guī)模,同時(shí)也使得現(xiàn)代商業(yè)企業(yè)需要具有不間斷
34、地供貨能力、不斷增長(zhǎng)的客戶需求和不斷增長(zhǎng)的全球競(jìng)爭(zhēng)三大特征,這使得任何一個(gè)商業(yè)組織都必須調(diào)整自己的經(jīng)營(yíng)方式和產(chǎn)業(yè)結(jié)構(gòu),以適應(yīng)新的市場(chǎng)發(fā)展的需要。因此,任何一個(gè)企業(yè)要在21世紀(jì)生存,就必須迅速地改變傳統(tǒng)的經(jīng)營(yíng)觀念,跟上當(dāng)今世界發(fā)展的最新潮流,加入到電子商務(wù)大潮中。</p><p> 那么,什么是電子商務(wù)?簡(jiǎn)單地講,電子商務(wù)利用現(xiàn)有的計(jì)算機(jī)硬件設(shè)備、軟件和網(wǎng)絡(luò)基礎(chǔ)設(shè)施,通過(guò)一定的協(xié)議連接起來(lái)的電子網(wǎng)絡(luò)環(huán)境進(jìn)行各種各
35、樣商務(wù)活動(dòng)的方式。更廣泛地說(shuō),凡是利用國(guó)際互聯(lián)網(wǎng)進(jìn)行商務(wù)活動(dòng)的一種方式就是電子商 務(wù)。電子商務(wù)以其高效率、低廉、高收益、全球化等傳統(tǒng)經(jīng)營(yíng)方式所無(wú)法比擬的優(yōu)點(diǎn)受到全球的關(guān)注。美國(guó)、歐盟等發(fā)達(dá)的國(guó)家或組織已經(jīng)采取措施大力發(fā)展電子商務(wù)。我國(guó)政府也大力倡導(dǎo)電子商務(wù)。專家預(yù)測(cè),公司和公司之間的電子商務(wù)貿(mào)易額將從1997年的56億美元發(fā)展到2002年的2680億;個(gè)人網(wǎng)上購(gòu)物將從 1997年的18億發(fā)展到2002年的260億。因此,電子商務(wù)中蘊(yùn)涵著
36、無(wú)窮的商業(yè)機(jī)遇。</p><p> NWAP(NetShopping WEB application platform簡(jiǎn)稱NWAP)是應(yīng)虛擬商家所求推出的一款通用的WEB應(yīng)用平臺(tái)產(chǎn)品,可以幫助您提供構(gòu)筑專業(yè)的電子商務(wù)平臺(tái)的基礎(chǔ)。</p><p> 1.5 用例模塊描述</p><p> ??商品展示:實(shí)現(xiàn)商品預(yù)覽、商品明細(xì)、分類檢索功能。</p>
37、<p> ??購(gòu)物車:實(shí)現(xiàn)添加商品、刪除列表、恢復(fù)列表、數(shù)量修改、清空購(gòu)物車、結(jié)算功能。</p><p> ??我的訂單:實(shí)現(xiàn)訂單確認(rèn)、訂單列表、刪除訂單、查詢明細(xì)功能。</p><p> ??用戶管理:實(shí)現(xiàn)登入/登出、用戶注冊(cè)、信息修改功能。</p><p> 1.5.1.用戶權(quán)限:</p><p> 用戶在瀏覽器地址
38、欄輸入本系統(tǒng)的URL后進(jìn)入主頁(yè)面,若當(dāng)前用戶為第一次登錄即為游客身份,游客所擁有的權(quán)限僅為瀏覽商品、登錄,注冊(cè)等。游客在沒(méi)有注冊(cè)時(shí)不具有登錄用戶所享有一些功能,這其中包括生成訂單、修改訂單、查看個(gè)人信息、修改密碼、查看積分,安全退出登錄狀態(tài)等。</p><p> 1.5.2.我的訂單</p><p> 實(shí)現(xiàn)訂單確認(rèn)、訂單列表、刪除訂單、查詢明細(xì)功能。在用戶確認(rèn)所選購(gòu)商品后,若前提用戶已
39、經(jīng)登錄可以進(jìn)一步讓用戶輸入收件人地址并生成訂單,若用戶尚未登錄在生成訂單時(shí)將會(huì)將用戶引導(dǎo)到登錄頁(yè)面。廠商可以根據(jù)訂單時(shí)的商品信息和收件人地址對(duì)消費(fèi)者進(jìn)行發(fā)貨</p><p> 1.5.3.商品展示</p><p> 實(shí)現(xiàn)商品預(yù)覽、商品明細(xì)、分類檢索功能。在進(jìn)入查詢頁(yè)面后,使用者點(diǎn)擊查詢,頁(yè)面會(huì)根據(jù)用戶輸入的篩選條件進(jìn)行與后臺(tái)數(shù)據(jù)庫(kù)動(dòng)態(tài)交互,將返回符合條件全部商品信息,并按系統(tǒng)預(yù)設(shè)分頁(yè)呈
40、現(xiàn)給用戶,用戶就可以跟據(jù)表單列出的詳細(xì)信息選擇適合自己所需要的商品,并在本條目后面的鏈結(jié)處點(diǎn)擊購(gòu)買。</p><p><b> 1.5.4購(gòu)物車</b></p><p> 實(shí)現(xiàn)添加商品、刪除列表、恢復(fù)列表、數(shù)量修改、清空購(gòu)物車、結(jié)算功能。根據(jù)用戶點(diǎn)擊商品的購(gòu)買鏈接將商品添加到購(gòu)物車中。進(jìn)入到購(gòu)物車瀏覽頁(yè)面時(shí)表單中文本框使用者可以跟自己意愿設(shè)置購(gòu)買的數(shù)量?;蛘邉h除商
41、品,注意此處的商品并不是真在刪除,而是被緩存了,在需要的時(shí)候仍可能恢復(fù)。該系列操作完成之后可以返回到上一級(jí)進(jìn)行其它操作或者查看購(gòu)買信息。</p><p><b> 2、項(xiàng)目設(shè)計(jì)說(shuō)明</b></p><p> 2.1 系統(tǒng)基本架構(gòu):</p><p> 本系統(tǒng)是NWAP-V1.0 的升級(jí)版本,在之前版本設(shè)計(jì)是基于GUI(圖形用戶界面),即B\
42、S 架構(gòu)的,而V1.1 融入了WEB 2.0 技術(shù),使用的是客戶機(jī)瀏覽器的模式即:C\S架構(gòu)</p><p> 圖2-1-1 系統(tǒng)基本架構(gòu)</p><p> 圖2-1-2各系統(tǒng)模塊的關(guān)系及基本流程</p><p><b> 2.2 數(shù)據(jù)庫(kù)設(shè)計(jì)</b></p><p> 2.2.1 類別表(category)<
43、;/p><p> 2.2.2 商品表(product)</p><p> 2.2.3 用戶表(users)</p><p> 2.2.4 收件人地址表(receive_address)</p><p> 2.2.5 選購(gòu)條目表(item)</p><p> 2.2.6 訂單表(order)</p>
44、<p> 2.2.7 訂單項(xiàng)表(orderline)</p><p><b> 2.3 領(lǐng)域模型</b></p><p> 2.3.1 com.wuyf.actions.authorize</p><p> 類名屬性封裝功能說(shuō)明</p><p> AuthorizeAction
45、 user validateCode 封裝從頁(yè)面提交過(guò)來(lái)用戶信息</p><p> AuthorizeVerifyAction emailVerifyCode 封裝系統(tǒng)生成郵箱激活碼</p><p> LoginActionuser封裝頁(yè)面提交過(guò)來(lái)的用戶登錄信息</p><p> RedriectActionurl
46、根據(jù)業(yè)務(wù)邏輯處理結(jié)果跳轉(zhuǎn)到相關(guān)頁(yè)面</p><p> 2.3.2 com.wuyf.actions.order</p><p> 類名屬性封裝功能說(shuō)明</p><p> OrderAction order 根據(jù)購(gòu)物車信息生成用戶訂單</p><p> OrderAction mapAd
47、dress 從數(shù)據(jù)庫(kù)中取該用戶上次提交的地址信息</p><p> OrderActionaddress封裝用戶輸入的一個(gè)全新地址</p><p> 2.3.3 com.wuyf.actions.cart</p><p> 類名屬性封裝功能說(shuō)明</p><p> CartAction
48、 cartItems 所選購(gòu)商品信息條目</p><p> CartAction savePrice 通過(guò)本商城購(gòu)買商品共結(jié)省的費(fèi)用</p><p> CartActiontotalPrice此次交易商品的總費(fèi)用</p><p> 2.3.4 com.wuyf.actions.main</p><p
49、> 類名屬性封裝功能說(shuō)明</p><p> CategoryAction listCates當(dāng)前目錄下所包含的子目錄</p><p> BookListAction books 在所選目錄下所包含的商品列表信息</p><p> HotAction hotBooks最近熱賣的商品<
50、/p><p> NewAction newBooks最新上架的商品</p><p> RecommendAction recommendBooks商家推薦的商品</p><p><b> 2.4 業(yè)務(wù)模型</b></p><p> 2.4.1 com.wuyf.service.CartServic
51、e</p><p> 2.4.2 com.wuyf.service.OrderService</p><p> 2.4.3. com.wuyf.service.UserService </p><p> 2.4.4. com.wuyf.service.CategoryService </p><p><b> 3.用例實(shí)現(xiàn)
52、</b></p><p><b> 3.1 功能概述</b></p><p> 系統(tǒng)功能模塊分為以下幾部分:前臺(tái)營(yíng)業(yè),后臺(tái)管理,后臺(tái)服務(wù)。</p><p><b> 3.1.1前臺(tái)運(yùn)營(yíng)</b></p><p> 1.用戶注冊(cè)、登錄/登出</p><p>
53、;<b> 1.1登錄</b></p><p><b> 1.2退出登錄狀態(tài)</b></p><p><b> 1.3重新登錄</b></p><p><b> 2.分類瀏覽</b></p><p> 2.1 分類瀏覽商品列表</p>
54、<p> 2.2 最新上架商品、商家推薦、商品熱賣榜</p><p><b> 3. 購(gòu)物車</b></p><p> 3.1 將所需商品添加到購(gòu)物車</p><p> 3.2 修改所購(gòu)買商品數(shù)目</p><p> 3.3 刪除不滿意的商品</p><p> 3.4 恢復(fù)
55、上次誤刪的商品</p><p><b> 3.5 結(jié)算</b></p><p><b> 3.6 清空購(gòu)物車</b></p><p><b> 4. 訂單生成</b></p><p> 4.1 查找該用戶以前所填寫(xiě)的收件地址</p><p>
56、4.2 全新輸入一個(gè)收貨地址</p><p> 4.3 確認(rèn)所購(gòu)商品信息無(wú)誤</p><p> 4.4 訂單最終生成,訂單信息錄入數(shù)據(jù)庫(kù)</p><p> 3.1.2后臺(tái)管理:</p><p><b> 1.商品管理</b></p><p> 1.1 查詢已有商品信息</p>
57、<p> 1.2 查詢最近熱賣商品</p><p> 1.3 增加新到貨商品</p><p> 1.4 將新到貨商品上架</p><p><b> 2.用戶帳戶管理</b></p><p><b> 2.1 查詢用戶</b></p><p><b
58、> 2.2 添加用戶</b></p><p><b> 2.3 刪除用戶</b></p><p><b> 2.4 更改用戶</b></p><p><b> 3.營(yíng)業(yè)記錄管理</b></p><p> 3.1 查詢營(yíng)業(yè)記錄</p>&
59、lt;p> 3.2 導(dǎo)出到excel表</p><p> 3.3 確認(rèn)二級(jí)結(jié)算</p><p><b> 4.管理員管理</b></p><p><b> 4.1 添加角色</b></p><p><b> 4.2 刪除角色</b></p><
60、;p><b> 4.3 更改角色權(quán)</b></p><p> 3.1.3后臺(tái)服務(wù):</p><p><b> 1.日志服務(wù)</b></p><p> 1.1 記錄營(yíng)業(yè)日志—記錄營(yíng)業(yè)記錄信息</p><p> 1.2 記錄賬戶日志--記錄帳戶登錄,登出等信息</p>&l
61、t;p> 1.3 記錄錯(cuò)誤日志—記錄運(yùn)行時(shí)發(fā)生的錯(cuò)誤消息</p><p> 1.4 記錄管理日志—記錄管理員對(duì)系統(tǒng)做出的管理修改</p><p> 2.用戶表和商品記錄表的維護(hù)</p><p> 2.1 處理過(guò)期商品信息數(shù)據(jù)</p><p> 2.2 處理新上架的商品信息數(shù)據(jù)</p><p><b
62、> 3.訂單表的維護(hù)</b></p><p> 3.1 處理已執(zhí)行訂單數(shù)據(jù)</p><p><b> 3.2 代碼實(shí)現(xiàn)</b></p><p> 3.2.1 用戶權(quán)限管理</p><p> 實(shí)體類設(shè)計(jì):com.wuyf.domain</p><p> 對(duì)使用者的基本信
63、息進(jìn)行封裝</p><p> package com.wuyf.domain;</p><p><b> /**</b></p><p> *DUserentity.</p><p><b> *</b></p><p> *@authorMyEclipsePers
64、istenceTools</p><p><b> */</b></p><p> publicclass DUser implements java.io.Serializable {</p><p><b> // Fields</b></p><p> private Integer
65、id;</p><p> private String email;</p><p> private String nickname;</p><p> private String password;</p><p> private Integer userIntegral;</p><p> priv
66、ate String isEmailVerify;</p><p> private String emailVerifyCode;</p><p> // Constructors</p><p> /**defaultconstructor*/</p><p> public DUser() {</p><p&
67、gt;<b> }</b></p><p> /**minimalconstructor*/</p><p> public DUser(String email, String password, Integer userIntegral) {</p><p> this.email = email;</p><p
68、> this.password = password;</p><p> this.userIntegral = userIntegral;</p><p><b> }</b></p><p> /**fullconstructor*/</p><p> public DUser(String emai
69、l, String nickname, String password,</p><p> Integer userIntegral, String isEmailVerify, String emailVerifyCode,</p><p> Long lastLoginTime, String lastLoginIp) {</p><p> this.em
70、ail = email;</p><p> this.nickname = nickname;</p><p> this.password = password;</p><p> this.userIntegral = userIntegral;</p><p> this.isEmailVerify = isEmailVerif
71、y;</p><p> this.emailVerifyCode = emailVerifyCode;</p><p><b> }</b></p><p> // Property accessors</p><p> public Integer getId() {</p><p>
72、 returnthis.id;</p><p><b> }</b></p><p> publicvoid setId(Integer id) {</p><p> this.id = id;</p><p><b> }</b></p><p> public
73、String getEmail() {</p><p> returnthis.email;</p><p><b> }</b></p><p> publicvoid setEmail(String email) {</p><p> this.email = email;</p><p&
74、gt;<b> }</b></p><p> public String getNickname() {</p><p> returnthis.nickname;</p><p><b> }</b></p><p> publicvoid setNickname(String nick
75、name) {</p><p> this.nickname = nickname;</p><p><b> }</b></p><p> public String getPassword() {</p><p> returnthis.password;</p><p><b&
76、gt; }</b></p><p> publicvoid setPassword(String password) {</p><p> this.password = password;</p><p><b> }</b></p><p> public Integer getUserInte
77、gral() {</p><p> returnthis.userIntegral;</p><p><b> }</b></p><p> publicvoid setUserIntegral(Integer userIntegral) {</p><p> this.userIntegral = userIn
78、tegral;</p><p><b> }</b></p><p> public String getIsEmailVerify() {</p><p> returnthis.isEmailVerify;</p><p><b> }</b></p><p>
79、 publicvoid setIsEmailVerify(String isEmailVerify) {</p><p> this.isEmailVerify = isEmailVerify;</p><p><b> }</b></p><p> public String getEmailVerifyCode() {</p&g
80、t;<p> returnthis.emailVerifyCode;</p><p><b> }</b></p><p> publicvoid setEmailVerifyCode(String emailVerifyCode) {</p><p> this.emailVerifyCode = emailVerify
81、Code;</p><p><b> }</b></p><p><b> }</b></p><p> 使用Hibernate 框架實(shí)現(xiàn)數(shù)據(jù)庫(kù)表到實(shí)體類之間關(guān)聯(lián)關(guān)系映射,對(duì)JDBC進(jìn)行輕量級(jí)的封裝,用面向?qū)ο蟮膶?duì)象的思想來(lái)操作關(guān)系型數(shù)據(jù)庫(kù),以下的XML配置文件用來(lái)表述:存入數(shù)據(jù)庫(kù)字段與實(shí)體類中用戶信息的對(duì)映關(guān)系。&
82、lt;/p><p> <?xml version="1.0" encoding="utf-8"?></p><p> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"</p><p&g
83、t; "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"></p><p><b> <!-- </b></p><p> Mapping file autogenerated by MyEclipse Persistence Tools</p>
84、<p><b> --></b></p><p> <hibernate-mapping></p><p> <class name="com.wuyf.DUser" table="d_user" catalog="netshop"></p><
85、;p> <id name="id" type="integer"></p><p> <column name="id" /></p><p> <generator class="native" /></p><p><b>
86、 </id></b></p><p> <property name="email" type="string"></p><p> <column name="email" length="200" /></p><p> <
87、/property></p><p> <property name="nickname" type="string"></p><p> <column name="nickname" length="200" not-null="true" /><
88、/p><p> </property></p><p> <property name="password" type="string"></p><p> <column name="password" not-null="true" /><
89、/p><p> </property></p><p> <property name="userIntegral" type="string"></p><p> <column name="userIntegral" length="15" />
90、</p><p> </property></p><p> <property name="isEmailVerify" type="string"></p><p> <column name="isEmailVerify" length="15"
91、 /></p><p> </property></p><p> <property name="emailVerifyCode" type="string"></p><p> <column name="emailVerifyCode" length=&quo
92、t;15" /></p><p> </property></p><p><b> </class></b></p><p> </hibernate-mapping></p><p> 對(duì)商品的信息進(jìn)行封裝</p><p> pac
93、kage com.wuyf.domain;</p><p> import java.math.BigDecimal;</p><p> import java.util.Date;</p><p><b> /**</b></p><p> *DBookentity.</p><p>&
94、lt;b> *</b></p><p> *@authorMyEclipsePersistenceTools</p><p><b> */</b></p><p> publicclass DBook implements java.io.Serializable {</p><p> pr
95、ivate Integer id;</p><p> private String name;</p><p> private String bookNumber;</p><p> private String company;</p><p> private String airlineCode;</p><
96、;p> private Date startTime;</p><p> private Date arriveTime;</p><p> private BigDecimal price;</p><p> private BigDecimal discount;</p><p> public DBook() {<
97、/p><p><b> super();</b></p><p> // TODO Auto-generated constructor stub</p><p><b> }</b></p><p> public DBook(Integer id, String name, String b
98、ookNumber, String company, String airlineCode, Date startTime, Date arriveTime, BigDecimal price, BigDecimal discount) {</p><p><b> super();</b></p><p> this.id = id;</p>&l
99、t;p> this.name = name;</p><p> this.bookNumber = bookNumber;</p><p> this.company = company;</p><p> this.airlineCode = airlineCode;</p><p> this.startTime = st
100、artTime;</p><p> this.arriveTime = arriveTime;</p><p> this.price = price;</p><p> this.discount = discount;</p><p><b> }</b></p><p> publ
101、ic String getAirlineCode() {</p><p> returnairlineCode;</p><p><b> }</b></p><p> publicvoid setAirlineCode(String airlineCode) {</p><p> this.airlineCod
102、e = airlineCode;</p><p><b> }</b></p><p> public Date getArriveTime() {</p><p> returnarriveTime;</p><p><b> }</b></p><p> pub
103、licvoid setArriveTime(Date arriveTime) {</p><p> this.arriveTime = arriveTime;</p><p><b> }</b></p><p> public String getBookNumber() {</p><p> returnbo
104、okNumber;</p><p><b> }</b></p><p> publicvoid setBookNumber(String bookNumber) {</p><p> this.bookNumber = bookNumber;</p><p><b> }</b></
105、p><p> public String getCompany() {</p><p> returncompany;</p><p><b> }</b></p><p> publicvoid setCompany(String company) {</p><p> this.comp
106、any = company;</p><p><b> }</b></p><p> public BigDecimal getDiscount() {</p><p> returndiscount;</p><p><b> }</b></p><p> pub
107、licvoid setDiscount(BigDecimal discount) {</p><p> this.discount = discount;</p><p><b> }</b></p><p> public Integer getId() {</p><p><b> returnid
108、;</b></p><p><b> }</b></p><p> publicvoid setId(Integer id) {</p><p> this.id = id;</p><p><b> }</b></p><p> public Stri
109、ng getName() {</p><p> returnname;</p><p><b> }</b></p><p> publicvoid setName(String name) {</p><p> this.name = name;</p><p><b> }
110、</b></p><p> public BigDecimal getPrice() {</p><p> returnprice;</p><p><b> }</b></p><p> publicvoid setPrice(BigDecimal price) {</p><p
111、> this.price = price;</p><p><b> }</b></p><p> public Date getStartTime() {</p><p> returnstartTime;</p><p><b> }</b></p><p&g
112、t; publicvoid setStartTime(Date startTime) {</p><p> this.startTime = startTime;</p><p><b> }</b></p><p><b> }</b></p><p> 以下的XML配置文件用來(lái)表述:存
113、入數(shù)據(jù)庫(kù)字段與實(shí)體類中航班信息的對(duì)映關(guān)系。</p><p> <?xml version="1.0" encoding="utf-8"?></p><p> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN&qu
114、ot;</p><p> "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"></p><p><b> <!-- </b></p><p> Mapping file autogenerated by MyEclipse Persist
115、ence Tools</p><p><b> --></b></p><p> <hibernate-mapping></p><p> <class name="com.wuyf.domain.DUser" table="d_user" catalog="dan
116、gdang"></p><p> private Integer id;</p><p> private String name;</p><p> private String bookNumber;</p><p> private String company;</p><p> pr
117、ivate String airlineCode;</p><p> private Date startTime;</p><p> private Date arriveTime;</p><p> private BigDecimal price;</p><p> private BigDecimal discount;<
118、;/p><p> <id name="id" type="integer"></p><p> <column name="id" /></p><p> <generator class="native" /></p><p&g
119、t;<b> </id></b></p><p> <property name="name" type="string"></p><p> <column name="name" length="50" not-null="true&quo
120、t; /></p><p> </property></p><p> <property name="bookNumber" type="string"></p><p> <column name="bookNumber" length="50&quo
121、t; /></p><p> </property></p><p> <property name="company" type="string"></p><p> <column name="company" length="50" not
122、-null="true" /></p><p> </property></p><p> <property name="airlineCode" type="integer"></p><p> <column name="airlineCode&qu
123、ot; not-null="true" /></p><p> </property></p><p> <property name="startTime" type="string"></p><p> <column name="startTime&
124、quot; length="3" /></p><p> </property></p><p> <property name="arriveTime" type="string"></p><p> <column name="arriveTime&q
125、uot; length="50" /></p><p> </property></p><p> <property name="price" type="number"></p><p> <column name="price" />
126、</p><p> </property></p><p> <property name="discount" type="number"></p><p> <column name="discount" length="15" /><
127、/p><p> </property></p><p><b> </class></b></p><p> </hibernate-mapping></p><p><b> 3.2.2用戶注冊(cè)</b></p><p> 用戶在首次
128、使用時(shí),需使用郵箱注冊(cè)一個(gè)賬號(hào),在用戶使用當(dāng)前輸入失去焦點(diǎn)時(shí),Ajax會(huì)與后臺(tái)交互,告訴瀏覽器端該用戶名是否被占用 如圖3-2-1</p><p><b> 代碼實(shí)現(xiàn):</b></p><p> public class RegistAction extends DangAction{</p><p> IAuthorizeService
129、 authorizeService = ServiceFactory.getAuthorizeService();</p><p> private DUser user;</p><p> public DUser getUser() {</p><p> return user;</p><p><b> }</b
溫馨提示
- 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ù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于j2ee的網(wǎng)上商城設(shè)計(jì)與實(shí)現(xiàn)
- 詳細(xì)設(shè)計(jì)-基于j2ee的網(wǎng)上商城設(shè)計(jì)與實(shí)現(xiàn)
- 基于j2ee架構(gòu)的網(wǎng)上商城設(shè)計(jì)與實(shí)現(xiàn)
- 基于j2ee的運(yùn)動(dòng)商品網(wǎng)上商城設(shè)計(jì)與實(shí)現(xiàn)
- 基于J2EE網(wǎng)上商城平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 基于j2ee的網(wǎng)上商城畢業(yè)論文
- j2ee網(wǎng)上商城畢業(yè)論文
- 基于J2EE技術(shù)的網(wǎng)上商城系統(tǒng)設(shè)計(jì).pdf
- 基于j2ee的網(wǎng)上購(gòu)物商城設(shè)計(jì)
- 基于J2EE技術(shù)的網(wǎng)上商城系統(tǒng)構(gòu)建.pdf
- 畢業(yè)設(shè)計(jì)---網(wǎng)上商城網(wǎng)站的設(shè)計(jì)與實(shí)現(xiàn)
- 基于J2EE的電子商城網(wǎng)上購(gòu)物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 畢業(yè)設(shè)計(jì)--基于java web的網(wǎng)上商城的設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)設(shè)計(jì)---基于web的網(wǎng)上商城系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 基于j2ee的網(wǎng)上購(gòu)物站點(diǎn)設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)設(shè)計(jì)----網(wǎng)上商城網(wǎng)站設(shè)計(jì)和實(shí)現(xiàn)
- 基于bs結(jié)構(gòu)的網(wǎng)上商城系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)設(shè)計(jì)----基于j2ee的博客系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)設(shè)計(jì)基于j2ee的博客系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 基于J2EE的網(wǎng)上訂餐系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).pdf
評(píng)論
0/150
提交評(píng)論