版權(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è)論文</b></p><p><b> ?。?20_ _屆)</b></p><p> idingfan訂餐系統(tǒng)訂單模塊的設(shè)計(jì)與實(shí)現(xiàn)</p><p> 摘 要:隨著電子商務(wù)應(yīng)用的推廣,網(wǎng)上購(gòu)物的普及,涌現(xiàn)出越來(lái)越多的訂餐網(wǎng)站。Idngfan訂餐網(wǎng)站使用struts框架實(shí)現(xiàn),str
2、uts框架為MVC模式的一種實(shí)現(xiàn)。本文主要實(shí)現(xiàn)訂餐網(wǎng)中的訂單系統(tǒng)的實(shí)現(xiàn),包括購(gòu)物車(chē)的實(shí)現(xiàn),將購(gòu)物車(chē)信息寫(xiě)入訂單表及訂單詳細(xì)表,今日訂單及歷史訂單的查詢(xún)等模塊功能。系統(tǒng)主要實(shí)現(xiàn)偏向于購(gòu)物車(chē)功能,購(gòu)物車(chē)功能主要實(shí)現(xiàn)商品的添加、刪除、數(shù)量修改、查看的功能。訂餐系統(tǒng)訂單模塊還存在一些缺陷,訂單模塊還需要完善的地方。</p><p> 關(guān)鍵詞:MVC模式;Struts框架;訂餐網(wǎng);交互式</p><p
3、> the design and the achievement of the roscoe system order module of a idingfan</p><p> Abstract: With the promotion of e-commerce applications, the popularity of online shopping, more and more network
4、s arise .The website of Idnfan implements it with the framework of struts.In this paper,we implement the ordering system of website,including implementing the shopping cart,copying the shopping cart information into the
5、 order form ,taking notes of the detail order form,today's order form,the history and so on.The system is mainly to achieve the part of the shopping cart,and the funct</p><p> Key words: MVC mode; Strut
6、s framework; networking; interactive</p><p><b> 目 錄</b></p><p> 一、訂餐網(wǎng)站的開(kāi)發(fā)1</p><p><b> ?。ㄒ唬╅_(kāi)發(fā)工具1</b></p><p> ?。ǘ╅_(kāi)發(fā)語(yǔ)言的選擇2</p><p&
7、gt; ?。ㄈ╅_(kāi)發(fā)模式——MVC2</p><p> (四)訂餐網(wǎng)的開(kāi)發(fā)背景4</p><p> 二、Idingfan網(wǎng)站的整體結(jié)構(gòu)設(shè)計(jì)5</p><p> ?。ㄒ唬┯啿凸芾砟K的數(shù)據(jù)庫(kù)設(shè)計(jì)5</p><p> (二)訂餐管理模塊的頁(yè)面設(shè)計(jì)9</p><p> ?。ㄈ?ài)訂飯系統(tǒng)訂餐模塊的功能實(shí)現(xiàn)1
8、1</p><p> 三、訂單系統(tǒng)的購(gòu)物車(chē)功能實(shí)現(xiàn)12</p><p> (一)購(gòu)物車(chē)流程12</p><p> ?。ǘ㎝VC模式應(yīng)用——購(gòu)物車(chē)功能實(shí)現(xiàn)13</p><p> 四、訂單系統(tǒng)實(shí)現(xiàn)中安全問(wèn)題的解決方法19</p><p> ?。ㄒ唬?quán)限設(shè)置(會(huì)員是否登錄)19</p><
9、;p> ?。ǘ┯脩?hù)信息安全(MD5加密技術(shù))19</p><p> ?。ㄈ┠夸浌蚕戆踩ㄊ褂肧truts結(jié)構(gòu) .do)19</p><p><b> 總結(jié)19</b></p><p><b> 參考文獻(xiàn)19</b></p><p> 致謝錯(cuò)誤!未定義書(shū)簽。</p>
10、;<p><b> 引言</b></p><p> 隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的發(fā)展,電子商務(wù)的大力推廣,網(wǎng)上商城逐漸走入大眾生活。網(wǎng)上購(gòu)物成為人們?nèi)粘I畋夭豢缮俚囊徊糠?。網(wǎng)上購(gòu)物改變了傳統(tǒng)的購(gòu)物方式,它可以使人們不受時(shí)間的限制,不受空間的限制,不受傳統(tǒng)購(gòu)物的諸多限制,隨時(shí)隨地通過(guò)互聯(lián)網(wǎng)購(gòu)物。網(wǎng)上購(gòu)物的便利性促進(jìn)了淘寶網(wǎng)、淘寶商城、團(tuán)購(gòu)網(wǎng)等網(wǎng)上購(gòu)物平臺(tái)的發(fā)展。同時(shí),訂餐網(wǎng)也出現(xiàn)在
11、大眾視線中。由于餐廳用餐時(shí)間及餐廳地點(diǎn)的局限性,我們采用了基于MVC模式的struts框架開(kāi)發(fā)愛(ài)訂飯網(wǎng)上訂餐系統(tǒng)。MVC模式將J2EE表示層和業(yè)務(wù)邏輯層劃分為模型(Model)、視圖(View)和控制器(Controller)三部分,在理論上實(shí)現(xiàn)了頁(yè)面顯示與業(yè)務(wù)邏輯分離。Struts 是一個(gè)開(kāi)源的MVC 實(shí)現(xiàn),它提供了可在應(yīng)用中繼承、修改的基本控制器的功能。除了提供MVC 的實(shí)現(xiàn),Struts還提供了一些有價(jià)值的定制標(biāo)簽庫(kù)。由于訂餐網(wǎng)站
12、的流量較大,而MVC模式思路清晰,可以方便快捷的實(shí)現(xiàn)網(wǎng)站的后期維護(hù)。全方位的實(shí)現(xiàn)愛(ài)訂飯訂餐網(wǎng)站的實(shí)現(xiàn)及后續(xù)發(fā)展。</p><p><b> 一、訂餐網(wǎng)站的開(kāi)發(fā)</b></p><p><b> ?。ㄒ唬╅_(kāi)發(fā)工具</b></p><p> 1、Windows 2000 以上的操作系統(tǒng)</p><p&g
13、t; 這是主要的軟件,此系統(tǒng)開(kāi)發(fā)過(guò)程在除了文檔的編寫(xiě),其它的工作都在操作系統(tǒng)中進(jìn)行,它是現(xiàn)在所有初級(jí)學(xué)者的操作系統(tǒng)工具,在開(kāi)發(fā)過(guò)程中擔(dān)任重要的任務(wù)。</p><p> 2、Macromedia Dreamweaver 8頁(yè)面編輯器</p><p> Macromedia Dreamweaver CS3是制作Web頁(yè)站點(diǎn)和Web應(yīng)用程序開(kāi)發(fā)的專(zhuān)業(yè)工具。它將可視布局工具、應(yīng)用程序開(kāi)發(fā)功能
14、和代碼編輯支持組合在一起,其功能強(qiáng)大,使得各個(gè)層次的開(kāi)發(fā)人員和設(shè)計(jì)人員都能夠快速創(chuàng)建界面吸引人的基于標(biāo)準(zhǔn)的網(wǎng)站和應(yīng)用程序。</p><p> 3、My SQL數(shù)據(jù)庫(kù)開(kāi)發(fā)軟件</p><p> My SQL是一個(gè)真正的多用戶(hù)、多線程SQl數(shù)據(jù)庫(kù)服務(wù)器。由于其體積小、速度快、總體擁有成本低,尤其是開(kāi)放源碼這一特點(diǎn),許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了MySQL作為網(wǎng)站數(shù)據(jù)庫(kù)。&l
15、t;/p><p> 4、My Eclipse 8.0 開(kāi)源軟件</p><p> My Eclipse 8.0是一個(gè)十分優(yōu)秀的用于開(kāi)發(fā)Java、J2EE的Eclipse的插件集合,也是功能豐富的JavaEE的集成開(kāi)發(fā)環(huán)境。具有完備的編碼、調(diào)試、測(cè)試和發(fā)布功能,完整支持HTML、Struts、JSF、Css、javascript、SQL、Hibernate。My Eclipse 8.0新增S
16、truts的圖形編輯器,更加方便開(kāi)發(fā)者的使用。</p><p> 5、其他網(wǎng)頁(yè)設(shè)計(jì)軟件</p><p> Macromedia Flash8.0、Photoshop CS3、Macromedia Firewoks8.0等。</p><p> ?。ǘ╅_(kāi)發(fā)語(yǔ)言的選擇</p><p><b> 1、JAVA</b>&l
17、t;/p><p> JAVA是一種跨平臺(tái)的、適合于網(wǎng)絡(luò)計(jì)算環(huán)境的面向?qū)ο笳Z(yǔ)言。語(yǔ)言具有簡(jiǎn)單性、面向?qū)ο?、分布性、編譯和解釋性、安全性、中性的體系結(jié)構(gòu)、可移植性、高性能、多線程和動(dòng)態(tài)性等特點(diǎn)</p><p> 由于愛(ài)訂飯訂餐網(wǎng)選用MVC模式,在MVC模式下的ActionServlet、Action、ActionForm都支持JAVA語(yǔ)言編寫(xiě)。</p><p><
18、b> 2、JSP</b></p><p> JSP技術(shù)是一種動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)標(biāo)準(zhǔn),是基于Java Servlets以及整個(gè)Java系統(tǒng)的Web開(kāi)發(fā)技術(shù)。JSP能夠在HTML語(yǔ)言中嵌入或者調(diào)用腳本語(yǔ)言從而鏈接多個(gè)對(duì)象,與客戶(hù)端實(shí)現(xiàn)交互作用。</p><p> 利用JSP 技術(shù), 動(dòng)態(tài)信息由JSP 頁(yè)面來(lái)表現(xiàn), JSP 頁(yè)面由安裝在WEB 服務(wù)器或者使用JSP 的應(yīng)用服務(wù)器
19、上的JSP 引擎執(zhí)行。JSP 引擎接受客戶(hù)端對(duì)JSP 頁(yè)面的請(qǐng)求, 并且生成JSP 頁(yè)面作為對(duì)客戶(hù)端的響應(yīng)。</p><p> (三)開(kāi)發(fā)模式——MVC</p><p> MVC模式將J2EE表示層和業(yè)務(wù)邏輯層劃分為模型(Model)、視圖(View)和控制器(Controller)三部分,在理論上實(shí)現(xiàn)了頁(yè)面顯示與業(yè)務(wù)邏輯分離,具有模塊獨(dú)立、流程清晰、設(shè)計(jì)靈活和易于擴(kuò)展等特點(diǎn)。實(shí)踐證明
20、,MVC模式能夠有效提高企業(yè)級(jí)Web應(yīng)用的開(kāi)發(fā)效率,并顯著增強(qiáng)系統(tǒng)代碼重用性與可靠性?;贛VC模式的JZEE多層Web框架己經(jīng)成為目前分布式企業(yè)級(jí)應(yīng)用的主流架構(gòu)之一。MVC模式的適用范圍很廣,這與其具有眾多優(yōu)點(diǎn)密不可分,具體包括:結(jié)構(gòu)清晰,重用性、靈活性和可配置性,功能強(qiáng)大的用戶(hù)界面,模塊的有效性和可維護(hù)性,有利于軟件工程化管理等優(yōu)點(diǎn)。</p><p> 采用MVC模式——模型(Model)、視圖(View)
21、和控制器(Controller),Struts架構(gòu),其內(nèi)容主要以ActionServlet + Action + ActionForm 形式展現(xiàn),如圖2-1所示。</p><p> 1、ActionServlet類(lèi)</p><p> ActionServlet是該MVC實(shí)現(xiàn)的Command部分,它是這一框架的核心。ActionServlet(Command)創(chuàng)建并使用Action、Ac
22、tionForm。struts-config.xml文件配置該Command。在創(chuàng)建Web項(xiàng)目時(shí),擴(kuò)展Action和ActionForm來(lái)解決特定的問(wèn)題。文件struts-config.xml指示ActionServlet如何使用這些擴(kuò)展的類(lèi)。這種方法有幾個(gè)優(yōu)點(diǎn):</p><p> ?。?)應(yīng)用程序的整個(gè)邏輯流程都存儲(chǔ)在一個(gè)分層的文本文件中。這使得人們更容易查看和理解它,尤其是對(duì)于大型應(yīng)用程序而言。</p&
23、gt;<p> ?。?)網(wǎng)頁(yè)設(shè)計(jì)人員不必費(fèi)力地閱讀 Java 代碼來(lái)理解應(yīng)用程序的流程。</p><p> (3)Java 開(kāi)發(fā)人員也不必在更改流程以后重新編譯代碼。</p><p> ?。?)可以通過(guò)擴(kuò)展ActionServlet來(lái)添加Command功能。</p><p> 2、ActionForm類(lèi)</p><p>
24、ActionForm維護(hù)Web應(yīng)用程序的會(huì)話狀態(tài)。ActionForm是一個(gè)抽象類(lèi),必須為每個(gè)輸入表單模型創(chuàng)建該類(lèi)的子類(lèi)。輸入表單模型,是指ActionForm表示的是由HTML表單設(shè)置或更新的一般意義上的數(shù)據(jù)。例如,有一個(gè)由HTML表單設(shè)置的 UserActionForm。Struts框架將執(zhí)行以下操作:</p><p> ?。?)檢查UserActionForm是否存在;如果不存在,它將創(chuàng)建該類(lèi)的一個(gè)實(shí)例。&
25、lt;/p><p> ?。?)Struts將使用HttpServletRequest中相應(yīng)的域設(shè)置UserActionForm的狀態(tài)。例如,Struts框架將從請(qǐng)求流中提取 fname,并調(diào)用UserActionForm.setFname()。</p><p> ?。?)Struts框架在將UserActionForm傳遞給業(yè)務(wù)包裝UserAction之前將更新它的狀態(tài)。</p>
26、<p> ?。?)在將它傳遞給Action類(lèi)之前,Struts還會(huì)對(duì)UserActionForm調(diào)用方法進(jìn)行表單狀態(tài)驗(yàn)證。</p><p><b> 3、Action類(lèi)</b></p><p> Action類(lèi)是業(yè)務(wù)邏輯的一個(gè)包裝。Action類(lèi)的用途是將HttpServletRequest轉(zhuǎn)換為業(yè)務(wù)邏輯。</p><p>
27、ActionServlet(Command)使用perform()方法將參數(shù)化的類(lèi)傳遞給ActionForm。當(dāng)事件進(jìn)展到這一步時(shí),輸入表單數(shù)據(jù)(或 HTML 表單數(shù)據(jù))已被從請(qǐng)求流中提取出來(lái)并轉(zhuǎn)移到ActionForm類(lèi)中。</p><p> 圖2-1 Command(ActionServlet)與Model(Action & ActionForm)之間的關(guān)系的UML圖</p><
28、p> Struts框架是MVC模式的一種實(shí)現(xiàn),它將servlet和jsp標(biāo)記用作實(shí)現(xiàn)的一部分。Struts繼承了MVC的各項(xiàng)特性,并根據(jù)J2EE的特點(diǎn),做了相應(yīng)的變化與擴(kuò)展。以下步驟為Struts框架實(shí)現(xiàn)MVC模式的基本原理。</p><p> ActionServlet 是struts 最核心的組件。在Web 容器啟動(dòng)的時(shí)候,ActionServlet 被初始化,加載struts-config.xml
29、 配置文件。Struts 處理請(qǐng)求的過(guò)程如下:</p><p> ?。?) 當(dāng)客戶(hù)端瀏覽器發(fā)起請(qǐng)求到ActionServlet 時(shí),Action-Servlet根據(jù)請(qǐng)求的路徑和Struts-config.xml配置信息找到對(duì)應(yīng)的Action bean 和Form bean。</p><p> (2) 在確定將要調(diào)用Action Bean 和對(duì)應(yīng)的From Bean 后,就將請(qǐng)求中包含的值
30、填充到From Bean 中。在調(diào)用Action 的execute方法前,ActionServlet 還需要準(zhǔn)備好ActionMapping 參數(shù),ActionMapping 中包含了該Action 的配置信息。</p><p> ?。?)然后Struts 將請(qǐng)求分發(fā)至相應(yīng)的Action Bean 處理,ActionMapping參數(shù)、ActionFrom 參數(shù)、request 和response 都作為參數(shù)傳給
31、處理請(qǐng)求的Action Bean 的execute 方法。</p><p> ?。?)Action 調(diào)用業(yè)務(wù)邏輯方法,得到返回值,并返回Action-Forward 對(duì)象。</p><p> (5)控制權(quán)重新回到ActionServlet,ActionServlet 根據(jù)Action返回的ActionForward 對(duì)象轉(zhuǎn)發(fā)到相應(yīng)的JSP 頁(yè)面。</p><p>
32、 (6)處理結(jié)果返回給瀏覽器。Struts的工作原理如圖1所示:</p><p> 圖1 Struts的工作原理</p><p> ?。ㄋ模┯啿途W(wǎng)的開(kāi)發(fā)背景</p><p> 愛(ài)訂飯訂餐網(wǎng)的訂單模塊主要實(shí)現(xiàn)購(gòu)物車(chē)技術(shù)完成用戶(hù)的訂餐狀態(tài),并且確認(rèn)訂餐后,購(gòu)物車(chē)信息寫(xiě)入訂單表和訂單細(xì)節(jié)表。訂餐成功后用戶(hù)積分增加,相應(yīng)的商家的訂餐次數(shù)發(fā)生修改。客戶(hù)也可以通過(guò)客戶(hù)中心
33、對(duì)訂單進(jìn)行查詢(xún),包括今日訂單查詢(xún)和歷史訂單查詢(xún)。而購(gòu)物車(chē)模塊可以實(shí)現(xiàn)商品的添加、刪除、修改、統(tǒng)計(jì)價(jià)格等功能。</p><p> 隨著電子商務(wù)的進(jìn)一步應(yīng)用,訂餐網(wǎng)的普及。為了適應(yīng)訂餐網(wǎng)的高訪問(wèn)量及高頻率的點(diǎn)餐率,為了更好的實(shí)現(xiàn)服務(wù)、管理的網(wǎng)絡(luò)化。使用MVC模式來(lái)提高網(wǎng)站后期的管理及更新,實(shí)現(xiàn)高度交互的網(wǎng)絡(luò)環(huán)境,更好的提高訂餐網(wǎng)的效率?;贛VC模式的訂餐網(wǎng)訂單模塊主要實(shí)現(xiàn)購(gòu)物車(chē)、動(dòng)態(tài)導(dǎo)航條、訂單查詢(xún)、選擇訂單日期
34、、訂單列表的分頁(yè)顯示等功能。</p><p> 二、Idingfan網(wǎng)站的整體結(jié)構(gòu)設(shè)計(jì)</p><p> ?。ㄒ唬┯啿凸芾砟K的數(shù)據(jù)庫(kù)設(shè)計(jì)</p><p> ?。?、數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)</p><p> 本系統(tǒng)數(shù)據(jù)庫(kù)主要采用My SQL數(shù)據(jù)庫(kù),系統(tǒng)數(shù)據(jù)庫(kù)名為idingfan,共包含12張表。其中涉及到訂單系統(tǒng)的數(shù)據(jù)表有5張。</p&g
35、t;<p> 訂單系統(tǒng)總體結(jié)構(gòu)功能模塊設(shè)計(jì)后,就要對(duì)數(shù)據(jù)庫(kù)進(jìn)行設(shè)計(jì)。系統(tǒng)使用關(guān)系數(shù)據(jù)庫(kù),而數(shù)據(jù)之間的結(jié)構(gòu)關(guān)系可以用E-R表來(lái)分析。E-R圖由實(shí)體、屬性、實(shí)體之間的關(guān)系三部分組成。經(jīng)分析總結(jié)出系統(tǒng)的實(shí)體大致包含以下幾個(gè):</p><p> 用戶(hù){用戶(hù)編號(hào)、送餐地址、真實(shí)姓名、聯(lián)系電話}</p><p> 餐館{餐館編號(hào)、餐館地址、餐館號(hào)碼、送餐費(fèi)}</p>
36、<p> 訂單{訂單編號(hào)、用戶(hù)編號(hào)、訂餐時(shí)間、訂餐份數(shù)、餐館簡(jiǎn)介}</p><p> 訂單詳細(xì){訂單詳細(xì)編號(hào)、訂單編號(hào)、菜品編號(hào)、總價(jià)格}</p><p> 菜品{菜品編號(hào)、餐館編號(hào)、價(jià)格、菜品名稱(chēng)、菜品照片、菜品名字}</p><p> 以下是通過(guò)經(jīng)訂餐網(wǎng)整體系統(tǒng)實(shí)體分析,在Visio下設(shè)計(jì)的訂餐網(wǎng)基本實(shí)體關(guān)系E-R圖如圖2所示:</p&g
37、t;<p> 圖2 idingfan訂餐網(wǎng)的實(shí)體基本關(guān)系E-R圖</p><p> 2、數(shù)據(jù)庫(kù)物理結(jié)構(gòu)設(shè)計(jì)</p><p> 即盡可能減少數(shù)據(jù)冗余和重復(fù),結(jié)構(gòu)設(shè)計(jì)與操作設(shè)計(jì)相結(jié)合,數(shù)據(jù)結(jié)構(gòu)要具有相對(duì)的穩(wěn)定性,進(jìn)行本系統(tǒng)中關(guān)系數(shù)據(jù)庫(kù)表結(jié)構(gòu)設(shè)計(jì)及代碼設(shè)計(jì)。僅舉一例如下:教務(wù)系統(tǒng)附件上傳結(jié)構(gòu)設(shè)計(jì),就是基于對(duì)關(guān)系數(shù)據(jù)庫(kù)中的各個(gè)關(guān)系模式都要滿(mǎn)足一定的要求,以便使用。規(guī)范化設(shè)計(jì)后和
38、附件上傳相關(guān)的5個(gè)數(shù)據(jù)庫(kù)表的具體結(jié)構(gòu)設(shè)計(jì)相關(guān)數(shù)據(jù)如表3-1至表3-5,其中用戶(hù)(customer)表的用戶(hù)編號(hào)(id)字段與、訂單(order)表中的用戶(hù)ID(customer_id)相關(guān)聯(lián),訂單詳細(xì)表(orderdetail)表中菜品編號(hào)(menu_id)與菜品(menu)表中編號(hào)(id)的:</p><p> 表3-1 用戶(hù)(customer)表結(jié)構(gòu)</p><p> 表3-2 訂
39、單(order)表結(jié)構(gòu)</p><p> 表3-3 訂單詳細(xì)(orderdetail)表結(jié)構(gòu)</p><p> 表3-4 餐廳(restaraunt)表結(jié)構(gòu)</p><p> 表3-5 菜品(menu)表結(jié)構(gòu)</p><p> 由于數(shù)據(jù)庫(kù)中所保存的數(shù)據(jù)是系統(tǒng)中非常重要的資源,所以在數(shù)據(jù)庫(kù)設(shè)計(jì)時(shí)一定要注意庫(kù)結(jié)構(gòu)的安全性、完整性,并發(fā)控制
40、與恢復(fù),而一般的數(shù)據(jù)庫(kù)管理系統(tǒng)都提供了一定的數(shù)據(jù)保護(hù)功能。</p><p> 3.?dāng)?shù)據(jù)庫(kù)的連接設(shè)計(jì)</p><p> 本系統(tǒng)通過(guò)JDBC技術(shù)來(lái)實(shí)行與數(shù)據(jù)庫(kù)的鏈接。在JDBC方式下,接口和現(xiàn)實(shí)相分離,JDBC驅(qū)動(dòng)程序中的接口實(shí)現(xiàn)類(lèi)來(lái)控制數(shù)據(jù)庫(kù)的操作,通過(guò)JDBC,可以便捷的將SQL語(yǔ)句傳送給具有JDBC驅(qū)動(dòng)的任何一個(gè)數(shù)據(jù)庫(kù)。JDBC鏈接數(shù)據(jù)庫(kù)的相關(guān)代碼如下:</p><
41、;p> ConnDB.java</p><p> (二)訂餐管理模塊的頁(yè)面設(shè)計(jì)</p><p><b> 1、購(gòu)物車(chē)頁(yè)面設(shè)計(jì)</b></p><p> 訂餐網(wǎng)訂單模塊購(gòu)物車(chē)頁(yè)面設(shè)計(jì)與當(dāng)前大部分網(wǎng)站的購(gòu)物車(chē)頁(yè)面有所不同,例如較為有名淘寶網(wǎng)站的購(gòu)物車(chē)頁(yè)面是獨(dú)立設(shè)計(jì)的,而idingfan的購(gòu)物車(chē)頁(yè)面與商品在同一頁(yè)面里,更加方便用戶(hù)的點(diǎn)餐
42、。本站的購(gòu)物車(chē)頁(yè)面使用javascript腳本語(yǔ)言控制購(gòu)物車(chē)在頁(yè)面位置,使購(gòu)物車(chē)模塊能隨著鼠標(biāo)的移動(dòng)而上下位置,實(shí)現(xiàn)用戶(hù)友好體驗(yàn)。如圖3-1所示:</p><p> 圖3-1 訂餐網(wǎng)購(gòu)物首面</p><p> 2、訂單查詢(xún)頁(yè)面設(shè)計(jì)</p><p> 訂單查詢(xún)頁(yè)面分為今日訂單查詢(xún)及歷史訂單查詢(xún)。訂單查詢(xún)頁(yè)面設(shè)計(jì)采用框架結(jié)構(gòu)設(shè)計(jì),使用戶(hù)在同一頁(yè)面能同時(shí)查看今日訂單
43、、歷史訂單、積分情況、及積分兌換情況,同時(shí)該頁(yè)面能修改用戶(hù)基本信息、用戶(hù)登錄密碼等功能。頁(yè)面設(shè)計(jì)簡(jiǎn)潔、大方,用戶(hù)能一眼了解網(wǎng)站的所有內(nèi)容。如圖金日訂單查詢(xún)頁(yè)面3-2、歷史訂單查詢(xún)頁(yè)面3-3、積分兌換頁(yè)面3-4所示:</p><p> 圖3-2 今日訂單查詢(xún)頁(yè)面</p><p> 圖3-3 歷史訂單查詢(xún)頁(yè)面</p><p> 圖3-4 歷史訂單查詢(xún)頁(yè)面</
44、p><p> 在商務(wù)網(wǎng)站總體功能的設(shè)計(jì)過(guò)程中, 我們采用了軟件工程中自頂向下的方法。按照系統(tǒng)的功能將相對(duì)復(fù)雜的系統(tǒng)劃分為各個(gè)較為簡(jiǎn)單的功能模塊, 這樣的過(guò)程也是從抽象到具體的過(guò)程, 在模塊劃分的過(guò)程中遵循了 “多內(nèi)聚少耦合”的原則, 使各個(gè)模塊相互獨(dú)立, 既便于實(shí)現(xiàn)又易于維護(hù)。</p><p> (三)愛(ài)訂飯系統(tǒng)訂餐模塊的功能實(shí)現(xiàn)</p><p> 愛(ài)訂飯訂餐網(wǎng)的
45、訂單模塊主要實(shí)現(xiàn)購(gòu)物車(chē)技術(shù)完成用戶(hù)的訂餐狀態(tài),并且確認(rèn)訂餐后,購(gòu)物車(chē)信息寫(xiě)入訂單表和訂單細(xì)節(jié)表。訂餐成功后用戶(hù)積分增加,相應(yīng)的商家的訂餐次數(shù)發(fā)生修改。查詢(xún)用戶(hù)今日訂單及歷史訂單。</p><p> 本次訂餐網(wǎng)訂單系統(tǒng)的設(shè)計(jì)過(guò)程中通過(guò)對(duì)用戶(hù)需求的分析,同時(shí)基于對(duì)網(wǎng)站總體功能設(shè)計(jì),系統(tǒng)功能模塊結(jié)構(gòu)如圖4-1所示:</p><p> 圖4-1 訂餐網(wǎng)訂單模塊功能結(jié)構(gòu)</p>&
46、lt;p><b> 1、購(gòu)物車(chē)模塊</b></p><p> 購(gòu)物車(chē)模塊實(shí)現(xiàn)多種商品的買(mǎi)賣(mài),通過(guò)購(gòu)物車(chē)用戶(hù)對(duì)商品進(jìn)行數(shù)量添加、刪除等操作。同時(shí)用戶(hù)可以通過(guò)購(gòu)物車(chē)查看所購(gòu)買(mǎi)的所有商品的總價(jià)格。當(dāng)用戶(hù)點(diǎn)擊確認(rèn)購(gòu)買(mǎi)商品后,將生成訂單,同時(shí)將用戶(hù)的訂單信息寫(xiě)入訂單詳細(xì)表及訂單表中。方便用戶(hù)查詢(xún)訂單的狀況以及所購(gòu)買(mǎi)的所有商品的信息。
47、
48、 </p><p><b> 2、訂單查詢(xún)模塊</b></p><p> 訂單查詢(xún)模塊分為今日訂單查詢(xún)和歷史訂單查詢(xún)兩部分,今日訂
49、單查詢(xún)直接從后臺(tái)讀出今日訂單的數(shù)據(jù)。而歷史訂單查詢(xún)用戶(hù)可以選擇時(shí)間區(qū)間來(lái)查詢(xún)訂單記錄。</p><p> 三、訂單系統(tǒng)的購(gòu)物車(chē)功能實(shí)現(xiàn)</p><p><b> (一)購(gòu)物車(chē)流程</b></p><p> 購(gòu)物車(chē)的具體實(shí)現(xiàn)可采用這種形式:定義一個(gè)購(gòu)物車(chē)的類(lèi),其屬性為每一條記錄CartItem,每條記錄CartItem的價(jià)格Price,數(shù)量
50、count以及若干方法的定義。</p><p> 1.列出商品的列表,使用戶(hù)能夠自由選擇所需要的商品。</p><p> 2.當(dāng)用戶(hù)在點(diǎn)擊“添加到購(gòu)物車(chē)”的鏈接時(shí),執(zhí)行如下功能:</p><p> 檢查用戶(hù)購(gòu)物車(chē)類(lèi)是否存在。如不存在,則建立新的購(gòu)物車(chē)類(lèi),并注冊(cè)存入Session變量;在有用戶(hù)購(gòu)物車(chē)類(lèi)存在的情況下,檢查該類(lèi)中是否有該商品。如存在,則商品數(shù)量相應(yīng)增
51、加1;如沒(méi)有該商品,則將該商品添加到該類(lèi)中。</p><p> 3.對(duì)放入用戶(hù)購(gòu)物車(chē)的各條記錄CartItem可以進(jìn)行數(shù)量的修改、刪除及清空購(gòu)物車(chē)等操作。具體流程實(shí)現(xiàn)如圖5所示:</p><p> 圖5 購(gòu)物車(chē)流程圖</p><p> ?。ǘ㎝VC模式應(yīng)用——購(gòu)物車(chē)功能實(shí)現(xiàn)</p><p> MVC模型應(yīng)用在訂單模塊的購(gòu)物車(chē)功能中,
52、方便了程序員的管理,對(duì)未來(lái)添加修改優(yōu)化購(gòu)物車(chē)搭建了一個(gè)良好便捷的平臺(tái)。購(gòu)物車(chē)的具體實(shí)現(xiàn),具體操作如下:</p><p> 1、新建CartItem.java類(lèi)。該文件定義了商品的屬性,并且對(duì)各字段get、set方法。</p><p> 2、創(chuàng)建Cart.java核心類(lèi)。Cart類(lèi)型的一個(gè)對(duì)象代表的是一個(gè)用戶(hù)所使用的虛擬的購(gòu)物車(chē),這個(gè)類(lèi)定義了能對(duì)虛擬購(gòu)物車(chē)進(jìn)行操作的方法。例如,向購(gòu)物車(chē)添
53、加商品,刪除商品和計(jì)算購(gòu)物車(chē)內(nèi)商品的總價(jià)。</p><p> 3、AddCartAction.action。實(shí)現(xiàn)頁(yè)面操作的頁(yè)面添加商品的功能。</p><p> 4、RemoveCartAction.java。該類(lèi)實(shí)現(xiàn)頁(yè)面操作刪除購(gòu)物車(chē)中商品的功能</p><p> 5、Struts-config.xml配置</p><p> 6、p
54、artnerList.jsp 部分重點(diǎn)代碼。</p><p> 四、訂單系統(tǒng)實(shí)現(xiàn)中安全問(wèn)題的解決方法</p><p> ?。ㄒ唬?quán)限設(shè)置(會(huì)員是否登錄)</p><p> 使用購(gòu)物車(chē)時(shí),系統(tǒng)將對(duì)該用戶(hù)進(jìn)行判斷,該用戶(hù)是否登錄。由于訂餐網(wǎng)有多個(gè)頁(yè)面,并且每個(gè)頁(yè)面都將進(jìn)行用戶(hù)的登錄判斷。傳統(tǒng)的方法需要在每個(gè)頁(yè)面進(jìn)行判斷,而servlet監(jiān)聽(tīng)器則很好的解決了該問(wèn)題。&
55、lt;/p><p> Servlet監(jiān)聽(tīng)器Servlet監(jiān)聽(tīng)器用于監(jiān)聽(tīng)一些重要事件的發(fā)生,監(jiān)聽(tīng)器對(duì)象可以在事情發(fā)生前、發(fā)生后可以做一些必要的處理,激發(fā)一些操作</p><p> ?。ǘ┯脩?hù)信息安全(MD5加密技術(shù))</p><p> MD5 加密技術(shù)中是單向加密, PassWord 字段的信息是以二進(jìn)制方式保存的, 即使數(shù)據(jù)庫(kù)被人取得, 也不可能知道密碼具體是什么
56、意思, 密碼也就不會(huì)泄露, 所以是一種可靠網(wǎng)站用戶(hù)帳號(hào)的加密技術(shù)。由于它容易使用、性能好, 而且提供了在Internets 上的良好接口, 對(duì)網(wǎng)站的應(yīng)用開(kāi)發(fā)提供了極大的便利。</p><p> (三)目錄共享安全(使用Struts結(jié)構(gòu) .do)</p><p> 使用MVC模型所建的系統(tǒng),當(dāng)用戶(hù)訪問(wèn)時(shí)所看的網(wǎng)址是以.do結(jié)尾,無(wú)法真正了解該系統(tǒng)網(wǎng)頁(yè)設(shè)計(jì)架構(gòu)。</p>&l
57、t;p><b> 總結(jié)</b></p><p> MVC模式適用于中小型網(wǎng)站,Struts框架使得網(wǎng)站后期的維護(hù)更加的便捷,訂餐網(wǎng)的開(kāi)發(fā)業(yè)務(wù)邏輯浮渣,存在大量的用戶(hù)界面的應(yīng)用系統(tǒng)。隨著技術(shù)的進(jìn)步、要求的提高我認(rèn)為訂餐網(wǎng)站還有待完善的功能如下:</p><p><b> ?。ㄒ唬┯脩?hù)登錄模塊</b></p><p>
58、; 由于網(wǎng)站諸多頁(yè)面的用戶(hù)驗(yàn)證,servlet監(jiān)聽(tīng)器進(jìn)行用戶(hù)登錄判斷。
59、
60、 </p><p><b> ?。ǘ┯唵尾樵?xún)模塊</b></p><p> 歷史訂單查詢(xún)目前是由客戶(hù)選擇訂餐時(shí)間的區(qū)間,再顯示訂餐的具體信息??紤]用戶(hù)友好體驗(yàn),可以考慮默認(rèn)顯示用戶(hù)一周內(nèi)的訂餐詳情。既可以滿(mǎn)足用戶(hù)的需求,也可以使商家了解到市場(chǎng)需求。</p><p><b> 參考文獻(xiàn):<
61、/b></p><p> [1] 高洪巖編著 基于簡(jiǎn)單SSH的javaweb的設(shè)計(jì)與開(kāi)發(fā).第三版.北京:電子工業(yè)出版社,2008,1-236.</p><p> [2] 何文輝. 基于JSP的動(dòng)態(tài)網(wǎng)站開(kāi)發(fā)技術(shù)[J]. 吉林省教育學(xué)院學(xué)報(bào)(學(xué)科版) , 2008,(08)</p><p> [3] Jerome Josephraj. Architect S
62、truts applications for web services [J/OL].IBM, 2003-04.</p><p> http://www.ibm.com/developerworks/webservices/library/ws-arcstruts/</p><p> [4] Palaniyappan Thiagarajan. Best practices for St
63、ruts development [J/OL].IBM, 2004-7.</p><p> http://www.ibm.com/developerworks/web/library/wa-struts/</p><p> [5] 袁可可.JSP技術(shù)中使用MVC模式實(shí)現(xiàn)Web購(gòu)物車(chē).科技傳播,2010-4(下):116-121.</p><p> [6] 傅進(jìn)
64、勇,鄧少烽,李波.JSP網(wǎng)絡(luò)編程[M].北京:電子工業(yè)出版社,2008,5.</p><p> [7] 王海鷗.基于Struts架構(gòu)的網(wǎng)上購(gòu)物電子商務(wù)平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn). 2010-02-05.</p><p> [8] 于光. 基于MVC模式的Struts技術(shù)在Web應(yīng)用中的研究與實(shí)現(xiàn).電子政務(wù), 2009-10-14.</p><p> [9] 王先國(guó).JS
65、P動(dòng)態(tài)網(wǎng)頁(yè)編程技術(shù)[M].北京:電子工業(yè)出版社,2006,12.</p><p> [10] 續(xù)蕾. 基于JSP的B/S模式網(wǎng)上商城購(gòu)物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J]. 四川兵工學(xué)報(bào) , 2009,(10).</p><p> [11] 辛峰.基于JSP的網(wǎng)上購(gòu)物系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) 哈爾濱職業(yè)技術(shù)學(xué)院學(xué)報(bào) 2010/01.</p><p> [12] 陸聰慧. 基于JSP
66、技術(shù)的電子購(gòu)物系統(tǒng)的設(shè)計(jì)[J]. 科技信息 , 2010,(16).</p><p> [13] 郭珍,王國(guó)輝.JSP程序設(shè)計(jì)教程[M].北京:人民郵電出版社,2008,5.</p><p> [14] 顧凌燕; 蔣文蓉.Servlet與JSP技術(shù)在電子商務(wù)網(wǎng)站構(gòu)建中的應(yīng)用 IT服務(wù)促進(jìn)企業(yè)信息化——第十一屆中國(guó)Java技術(shù)及應(yīng)用交流大會(huì)文集 2008.</p><
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- idingfan訂餐系統(tǒng)訂單模塊的設(shè)計(jì)與實(shí)現(xiàn)【開(kāi)題報(bào)告】
- b2c網(wǎng)上購(gòu)物系統(tǒng)──訂單模塊設(shè)計(jì)與實(shí)現(xiàn)【畢業(yè)論文】
- idingfan訂餐系統(tǒng)訂但模塊的設(shè)計(jì)與實(shí)現(xiàn)【文獻(xiàn)綜述】
- idingfan訂餐系統(tǒng)后臺(tái)設(shè)計(jì)與實(shí)現(xiàn)【文獻(xiàn)綜述】
- idingfan訂餐系統(tǒng)后臺(tái)設(shè)計(jì)與實(shí)現(xiàn)開(kāi)題報(bào)告
- 畢業(yè)論文-----網(wǎng)上訂餐系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 網(wǎng)上訂餐系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文
- 畢業(yè)論文——基于web的訂餐系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 基于web的訂餐系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)——畢業(yè)論文
- 基于jsp的網(wǎng)上訂餐系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)-畢業(yè)論文
- 基于php的網(wǎng)上訂餐系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文
- 畢業(yè)論文--基于web的網(wǎng)上訂餐系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 基于web的網(wǎng)上訂餐系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)【畢業(yè)論文】
- 基于jsp的網(wǎng)上訂餐系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)-畢業(yè)論文
- 畢業(yè)論文--企業(yè)進(jìn)貨訂單管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 校園b2c網(wǎng)上訂餐系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)——網(wǎng)上訂餐系統(tǒng)【畢業(yè)論文設(shè)計(jì)】
- b2c網(wǎng)上購(gòu)物系統(tǒng)──后臺(tái)訂單管理模塊設(shè)計(jì)與實(shí)現(xiàn)【畢業(yè)論文】
- 網(wǎng)上訂餐系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā)-畢業(yè)論文
- 在線訂餐網(wǎng)站的設(shè)計(jì)與實(shí)現(xiàn)-專(zhuān)科畢業(yè)論文
- 網(wǎng)上訂餐系統(tǒng)畢業(yè)論文
評(píng)論
0/150
提交評(píng)論