版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p> 畢 業(yè) 設(shè) 計(jì) 說 明 書</p><p><b> 年 月 日</b></p><p><b> 摘 要</b></p><p> 論文主要探討“網(wǎng)絡(luò)訂餐系統(tǒng)”的理論基礎(chǔ)和設(shè)計(jì)思想,根據(jù)系統(tǒng)的開發(fā)過程和系統(tǒng)的功能實(shí)現(xiàn)為主線來論述數(shù)據(jù)庫管理軟件的開發(fā)過程。主要闡述以軟件工程理論作為系統(tǒng)
2、開發(fā)的理論基礎(chǔ),以客戶機(jī)/服務(wù)器模式的關(guān)系型數(shù)據(jù)庫作為后臺,以專業(yè)數(shù)據(jù)庫開發(fā)語言作為實(shí)現(xiàn)手段的數(shù)據(jù)庫管理軟件的開發(fā)過程分析和理論研究。</p><p> 本系統(tǒng)是基于Jsp的網(wǎng)頁式設(shè)計(jì),企業(yè)可以通過一臺服務(wù)器與多臺客戶機(jī)相連接,通過后臺數(shù)據(jù)庫的建立與設(shè)置,軟件界面的設(shè)計(jì)與實(shí)現(xiàn),程序的編寫與調(diào)試等幾個階段來完成對訂餐管理系統(tǒng)的開發(fā)。</p><p> 本論文詳細(xì)地介紹了開發(fā)系統(tǒng)的具體步驟
3、,以及應(yīng)用的技術(shù),以配圖例的方式詳盡說明,并在文中對一些源程序作了詳細(xì)的解釋。</p><p> 關(guān)鍵詞:Web;Jsp;訂餐;信息管理</p><p><b> Abstract</b></p><p> This dissertation mainly discussed the basic theory and designatio
4、n of “Making Restaurant Reservation on web”, and the developing procedure according to system developing procedure and function realization. The essay also mentioned database management software's developing procedur
5、e analyse and theory study by using software project theory as the theoretic basis of system developing , the C/S model relating database as the background and the professional database as the developing language apply&l
6、t;/p><p> This system is according to Jsp web page type design, the business enterprise can connect with each other with several customer's machine through a server .By building and setting up background d
7、atabase, designing and applying software interface, programe writing and debugging, developed “House Agency Management Information System”.</p><p> This dissertation introduced the specific steps in develop
8、ing the system ,as well as the technical skill applied, presented with graphics and specific instruction and some source code has been explained particularly.</p><p> Keywords: Web;Jsp;Making Restaurant Res
9、ervation on web ;Information Management</p><p><b> 目 錄</b></p><p><b> 1 緒論1</b></p><p> 1.1 開發(fā)背景1</p><p><b> 1.2研究意義1</b>&l
10、t;/p><p> 1.3 JSP的運(yùn)行原理1</p><p> 1.4 系統(tǒng)的運(yùn)行環(huán)境3</p><p><b> 2 系統(tǒng)分析4</b></p><p> 2.1 需求分析4</p><p> 2.1.1 任務(wù)概述4</p><p> 2.1.2 需
11、求描述4</p><p> 2.1.3 面向的用戶群體5</p><p> 2.2 開發(fā)環(huán)境5</p><p> 2.3 功能分析5</p><p> 2.3.1 系統(tǒng)用例圖5</p><p> 2.3.2 系統(tǒng)業(yè)務(wù)流程分析7</p><p><b> 3數(shù)據(jù)庫
12、設(shè)計(jì)9</b></p><p> 3.1 數(shù)據(jù)庫E-R圖9</p><p> 3.2 數(shù)據(jù)庫表的設(shè)計(jì)10</p><p> 4 系統(tǒng)詳細(xì)設(shè)計(jì)12</p><p> 4.1 系統(tǒng)架構(gòu)層次12</p><p> 4.2 系統(tǒng)模塊設(shè)計(jì)12</p><p> 4.2.
13、1 總體模塊功能描述12</p><p> 4.2.2 用戶模塊功能描述13</p><p> 4.2.3 菜式模塊共描述14</p><p> 4.2.4 留言板模塊功能描述15</p><p> 4.2.5 后臺管理員模塊功能描述15</p><p><b> 5 系統(tǒng)實(shí)現(xiàn)17<
14、;/b></p><p> 5.1 用戶注冊17</p><p> 5.2 用戶登錄18</p><p> 5.3 在線訂餐19</p><p> 5.4 購物車21</p><p> 5.5 訂單管理24</p><p> 5.6 留言板25</p>
15、<p><b> 6 系統(tǒng)測試26</b></p><p> 6.1 單元測試26</p><p> 6.2 功能測試26</p><p> 6.2.1 系統(tǒng)管理模塊的功能測試27</p><p> 6.2.2 菜肴管理模塊27</p><p> 6.2.3 訂單
16、管理模塊27</p><p> 6.2.4 購物車模塊27</p><p> 6.2.5 留言板模塊27</p><p><b> 致 謝28</b></p><p><b> 參考文獻(xiàn)29</b></p><p><b> 1 緒論<
17、;/b></p><p><b> 1.1 開發(fā)背景</b></p><p> 隨著21世紀(jì)的進(jìn)步,社會的生活節(jié)奏越來越快,網(wǎng)絡(luò)的迅速崛起,互聯(lián)網(wǎng)已日益成為提供信息的最佳渠道和逐步進(jìn)去傳統(tǒng)的流通領(lǐng)域,傳統(tǒng)的餐飲業(yè)也面連著巨大的挑戰(zhàn),網(wǎng)上訂餐主要是針對白領(lǐng)還有大學(xué)生這些特定群體,一些白領(lǐng)在中午時間或者晚上高峰時間就餐,許多顧客由于高峰時間擁擠根本沒時間來享受美
18、味,這樣既可以提前訂餐不浪費(fèi)中午午休的時間,也可以和同事加深感情,更可以每天換各種各樣的菜式,保證每天工作的效率和身體的健康,這些問題就產(chǎn)生了快捷訂餐的要求,最快的方式莫過于利用計(jì)算機(jī)網(wǎng)絡(luò),將餐飲業(yè)和計(jì)算機(jī)網(wǎng)絡(luò)結(jié)合起來,就形成了網(wǎng)上訂餐系統(tǒng),能足不出戶,輕松閑逸地實(shí)現(xiàn)自己訂購餐飲和食品(包括飯、菜、盒飯便當(dāng)?shù)龋?,有能力的餐飲企業(yè)對對餐品提供商提供網(wǎng)上訂餐服務(wù),不僅提高餐飲企業(yè)的服務(wù)質(zhì)量,擴(kuò)大知名度,也是為最終用戶提供方便快捷的食品服務(wù)方
19、式。</p><p><b> 1.2研究意義</b></p><p> 隨著人民生活水平的不斷發(fā)展和提高,餐飲業(yè)在服務(wù)行業(yè)中的地位也越來越重要,如何從激烈的競爭中脫穎而出,已經(jīng)成為每位餐飲經(jīng)營者的思考的問題。經(jīng)過多年的發(fā)展,對餐飲企業(yè)的管理已經(jīng)逐漸由簡單的人工管理,進(jìn)入到規(guī)范的科學(xué)管理的階段。在科學(xué)的管理的具體實(shí)現(xiàn)方法中,最有效果的工具就是應(yīng)用管理軟件進(jìn)行管理。
20、將應(yīng)用軟件用于現(xiàn)代化的餐飲業(yè),解決了傳統(tǒng)的記賬,統(tǒng)計(jì),核算方式計(jì)費(fèi)等費(fèi)時費(fèi)力的難題,既容易操作,又不會出錯誤,提高了餐飲業(yè)管理水平。</p><p> 餐飲業(yè)是一種個性化、多樣化的服務(wù)產(chǎn)業(yè)。隨著網(wǎng)絡(luò)技術(shù)的發(fā)展和普及,將餐飲服務(wù)與個性化、多樣化服務(wù)的電子商務(wù)相結(jié)合,形成了方便、快捷、個性化的網(wǎng)上訂餐系統(tǒng),通過網(wǎng)上訂餐,顧客不必親臨現(xiàn)場,便可以為自己、家人、朋友聚會等置辦一份既營養(yǎng)又實(shí)惠的美食。其最大的優(yōu)勢在于:圖
21、文并茂,信息能夠及時更新和在線查看,并有效地解決了傳統(tǒng)就餐過程出現(xiàn)的排隊(duì),擁擠,信息不能及時更新的現(xiàn)象。這樣既節(jié)省了時間,也可以為廣大用戶提供更多選擇。</p><p> 1.3 JSP的運(yùn)行原理 </p><p> 在JSP第一次獲得來自于客戶端瀏覽器的請求時,JSP文件將被JSP引擎(JSP engine)轉(zhuǎn)換成一個Servlet,即將”.jsp”文件編譯成Java Class文
22、件。當(dāng)Servlet引擎接收到請求后,如果設(shè)置了使用最新的JSP,它就會去找JSP文件,檢查該文件在上次編譯后是否改動過。如果改動過,就會重新編譯生成新的Servlet,最終將請求轉(zhuǎn)交給編譯好的Servlet引擎執(zhí)行。如圖1.1所示:</p><p> 圖1.1 JSP運(yùn)行原理</p><p> 在編譯時如果發(fā)現(xiàn)JSP文件有任何語法錯誤,轉(zhuǎn)換過程將中斷,并向客戶端發(fā)出出錯信息;如果編
23、譯成功,則所轉(zhuǎn)換產(chǎn)生的Servlet代碼被編譯,然后該Servlet被JSP引擎加載到內(nèi)存中。此時JSP引擎還請求了jspInit()方法的執(zhí)行,并對此Servlet初始化。JspInit()方法在Servlet的生命周期中只被請求一次,然后將被調(diào)用來處理客戶端的請求和回復(fù)操作。對于所有隨后對該JSP文件的請求,服務(wù)器將檢查該JSP文件自最后一次被存取后是否經(jīng)過修改。如果沒有修改,則將請求交還給還在內(nèi)存中的Servlet的jspServ
24、ice()方法,執(zhí)行回復(fù)操作。由于Servlet始終駐于內(nèi)存,所以響應(yīng)是非常快的。Jsp頁面在第一次訪問時由于要轉(zhuǎn)化和編譯,運(yùn)行速度較慢,但是當(dāng)?shù)诙卧L問該頁時,由于文件已經(jīng)被編譯成字節(jié)碼文件了,所以速度非常得快。</p><p> 1.4 系統(tǒng)的運(yùn)行環(huán)境</p><p> 要運(yùn)行Jsp,需要有支持Jsp的服務(wù)器。這里分2種情況:一種是自身就支持Jsp的服務(wù)器,如Weblogic,JS
25、WDK等;而另一種則是在不支持Jsp的服務(wù)器上安裝Jsp引擎的插件,如在IIS,Apache等服務(wù)器上安裝WebSphere,tomcat等插件。其中主流服務(wù)器是Weblogic和tomcat.</p><p> Weblogic是一款功能強(qiáng)大的服務(wù)器軟件,配置比較簡單,而且Jsp的擴(kuò)展功能較多,附帶了數(shù)據(jù)庫的JDBC驅(qū)動程序。,支持JHTML(一種與Jsp十分相似的技術(shù)),是目前市場占有率最高的服務(wù)器。不過,
26、Weblogic的運(yùn)行情況不太穩(wěn)定,使用它調(diào)試Jsp文件,出現(xiàn)語法錯誤或者數(shù)據(jù)庫連接錯誤時,Weblogic就有可能崩潰。</p><p> Tomcat服務(wù)器是Apache Group Jakarta小組開發(fā)的一個免費(fèi)服務(wù)器軟件,適合于嵌入Apache中使用,而且,它的源代碼可以免費(fèi)獲得,你可以自由地對它進(jìn)行擴(kuò)充。Tomcat服務(wù)器的兼容性很好,如WebLogic服務(wù)器采用其為Web服務(wù)器引擎,Jbuilde
27、r將其作為標(biāo)準(zhǔn)的測試服務(wù)器,Sun公司也將其作為JSP技術(shù)應(yīng)用的示例服務(wù)器。不足之處是它的配置比較麻煩,而且有一些安全性的問題沒有解決。但是Tomcat服務(wù)器有眾多大軟件公司的支持,而且服務(wù)器的性能穩(wěn)定,其發(fā)展前景很好。本系統(tǒng)就是用該服務(wù)器的。</p><p><b> 2 系統(tǒng)分析</b></p><p><b> 2.1 需求分析</b>
28、</p><p> 2.1.1 任務(wù)概述</p><p> 綜合應(yīng)用主流Jsp技術(shù),Struts Web框架技術(shù),數(shù)據(jù)庫技術(shù),軟件測試技術(shù),網(wǎng)站部署與發(fā)布等技術(shù),遵從IT企業(yè)生產(chǎn)性項(xiàng)目的軟件產(chǎn)品生命周期開發(fā)工程模型或敏捷開發(fā)及持續(xù)集成模型,應(yīng)用軟件工程相關(guān)工具,完成網(wǎng)上訂餐系統(tǒng)。</p><p> 根據(jù)系統(tǒng)說明書進(jìn)行新系統(tǒng)的物理設(shè)計(jì),提出一個由一系列模塊和元素
29、組成的新系統(tǒng)設(shè)計(jì)方案。通常分為總體設(shè)計(jì)和詳細(xì)設(shè)計(jì)兩個階段。</p><p> 總體設(shè)計(jì)階段的主要任務(wù)是:系統(tǒng)模塊結(jié)構(gòu)的設(shè)計(jì)、系統(tǒng)整體框架設(shè)計(jì)。</p><p> 詳細(xì)設(shè)計(jì)階段的主要任務(wù)是:數(shù)據(jù)庫設(shè)計(jì)和數(shù)據(jù)文件的設(shè)計(jì)、編碼設(shè)計(jì)、輸入/輸出設(shè)計(jì)、模塊邏輯設(shè)計(jì)、包的設(shè)計(jì)、各模塊類的設(shè)計(jì)等。</p><p> 在該項(xiàng)目中系統(tǒng)被分為四大模塊:菜色展示模塊、購物車模塊、菜
30、肴搜索模塊、后臺管理模塊。主要任務(wù)就是將這四大模塊分別細(xì)化設(shè)計(jì),確定各自的字段、數(shù)據(jù)庫等相關(guān)事項(xiàng),然后再統(tǒng)籌在一起組成一個大的框架,最后成形整個管理系統(tǒng)。</p><p> 2.1.2 需求描述</p><p><b> <1>菜色展示系統(tǒng)</b></p><p> 菜色展示系統(tǒng)是一套基于數(shù)據(jù)庫平臺的即時發(fā)布系統(tǒng),可用于各類菜
31、色的展示、添加、修改和刪除等。網(wǎng)站管理員可以管理菜色簡介、價格、圖片等多類信息。瀏覽者在前臺可以瀏覽到菜色的所有資料,如菜色價格和詳細(xì)介紹等菜色信息。</p><p><b> <2>購物車</b></p><p> 購物車能夠幫助顧客通過存放所需的菜的信息,將它們列在一起,并提供商品的總共數(shù)目和價格等功能,方便顧客進(jìn)行統(tǒng)一的管理和結(jié)算。</p&
32、gt;<p><b> <3>搜索系統(tǒng)</b></p><p> 商品搜索在本網(wǎng)站中也是一項(xiàng)很重要的功能,主要幫助用戶快速地找到想要購買的菜。可以利用數(shù)據(jù)庫和信息檢索技術(shù)為用戶提供商品及其他信息的查詢功能。</p><p><b> <4>后臺管理</b></p><p> 后
33、臺管理在考慮管理操作簡便的同時,要提供強(qiáng)大的管理模式,包括管理員角色的設(shè)置,商品管理,訂單管理,留言板管理,網(wǎng)站基本信息管理等。</p><p> 2.1.3 面向的用戶群體</p><p> 本系統(tǒng)所面向的用戶群分為網(wǎng)上訂餐者、網(wǎng)站管理人員兩種。</p><p> 網(wǎng)上訂餐者可以執(zhí)行查看菜譜,搜索,下定單,評論,進(jìn)入留言板,注冊新用戶這些功能,通過這些功能,
34、網(wǎng)上訂餐者可以訂購自己喜歡的特色食品,也可以直接預(yù)定時間,來享受服務(wù)。</p><p> 網(wǎng)站管理人員可以執(zhí)行管理定單,菜譜,管理留言板這些功能,對餐廳進(jìn)行管理。</p><p><b> 2.2 開發(fā)環(huán)境</b></p><p> 硬件:CPU:Pentium 1GHZ以上</p><p><b>
35、內(nèi)存:64MB以上</b></p><p> 軟件:客戶端軟件:操作系統(tǒng):Windows 2000 / XP /Vista、Win7</p><p> 瀏覽器:IE6.0及以上版本、FireFox等</p><p> 服務(wù)器端軟件:操作系統(tǒng):Windows 2000 Server或更高版本</p><p> Web服務(wù)器:
36、Tomcat6.0</p><p> 數(shù)據(jù)庫產(chǎn)品:SQL Server 2000 </p><p><b> 2.3 功能分析</b></p><p> 2.3.1 系統(tǒng)用例圖</p><p> 網(wǎng)上訂餐系統(tǒng)用例圖,如下圖2.1所示:</p><p> 圖2.1 網(wǎng)上訂餐系統(tǒng)用例圖<
37、;/p><p><b> 一般用戶、會員</b></p><p> 1.系統(tǒng)遵循開放模式,注冊用戶可以按照自己的權(quán)限;未注冊用戶也可以任意查看,但在訂餐、更新個人資料要求正式登陸系統(tǒng)。</p><p> 2.菜肴信息主要包括ID、名稱,時間,內(nèi)容,類型,價格,介紹,圖片等。</p><p> 3.訂餐功能,用戶需要登
38、陸后才能進(jìn)行訂餐否則,普通游客不可以訂餐。</p><p> 4.訂單管理,用戶登陸后,可直接訂餐,也可以加入購物車,結(jié)賬時候可以選擇外賣或者是菜店內(nèi)食用,直接跳轉(zhuǎn)到結(jié)賬頁面。</p><p> 5.如果用登陸后,可以查看購物車也可以查看以前訂單,可以點(diǎn)擊更新信息,或者退出。</p><p><b> 管理員</b></p>
39、<p> 1.管理員擁有最大權(quán)限,可以進(jìn)入管理頁面并配置系統(tǒng)信息。</p><p> 2.管理員可以管理會員,對會員進(jìn)行查看、刪除多余的會員信息。</p><p> 3.管理員可以隨時更新菜肴信息,添加、修改菜系信息以及刪除菜肴。</p><p> 4.管理員查看用戶訂單信息,并可以刪除多余的訂單信息。</p><p>
40、 5.管理員查看包間信息,并可以刪除、添加信息。</p><p> 6.管理員查看菜系類別信息,添加、刪除菜系類別信息。</p><p> 2.3.2 系統(tǒng)業(yè)務(wù)流程分析</p><p> 用戶首先登錄網(wǎng)站,如果用戶還沒有登錄名,首先要進(jìn)行用注冊。注冊后,在登錄時用戶名與密碼驗(yàn)證通過就能做相關(guān)操作。如果用戶名不存在或密碼不正確,則提示重新登錄。</p>
41、;<p> 用戶成功登錄之后,進(jìn)入主頁面,可選基本業(yè)務(wù)有可以在線訂餐,還可以修改個人信息、退出系統(tǒng)。如果當(dāng)前登錄用戶為管理員,則可以刪除其用戶信息和用戶的留言信息,還可以對菜肴、包間信息、菜肴類別、訂單信息、進(jìn)行錄入、修改、刪除、查詢、等,系統(tǒng)業(yè)務(wù)流程圖如圖2.2所示:</p><p> 圖2.2 系統(tǒng)業(yè)務(wù)流程圖</p><p><b> 3數(shù)據(jù)庫設(shè)計(jì)<
42、/b></p><p> 3.1 數(shù)據(jù)庫E-R圖</p><p> 根據(jù)數(shù)據(jù)庫表的設(shè)計(jì),繪制網(wǎng)上訂餐系統(tǒng)的數(shù)據(jù)庫E-R圖,見圖3.1所示:</p><p> 圖3.1 數(shù)據(jù)庫E-R圖</p><p> 3.2 數(shù)據(jù)庫表的設(shè)計(jì)</p><p> 此在線訂餐系統(tǒng)采用SQL Server 2000數(shù)據(jù)庫管理系
43、統(tǒng)。首先用戶需要在SQL Server 2000中建立一個數(shù)據(jù)庫,將其命名為EDinner,然后根據(jù)數(shù)據(jù)庫的邏輯結(jié)構(gòu)分析創(chuàng)建7張數(shù)據(jù)表。</p><p> 1.用戶表(Users):用于存放注冊用戶和管理員的記錄,見表3.1所示。</p><p> 表3.1 My-Users表結(jié)構(gòu)</p><p> 2.購物車表(OrderList):用于存放顧客所購買的菜肴
44、信息,見表3.2所示。</p><p> 表3.2 OrderList表結(jié)構(gòu)</p><p> 菜肴信息表(CMenu):用于存放初始的菜肴信息,見表3.3所示。</p><p> 表3.3 CMenu表結(jié)構(gòu)</p><p> 訂單表(Korder):用于存放訂單數(shù)據(jù),見表3.4所示。</p><p> 表
45、3.4 Korder表結(jié)構(gòu)</p><p> 分店表(Area):用于存放分店的信息數(shù)據(jù),見表3.5所示。</p><p> 表3.5 Area表結(jié)構(gòu)</p><p> 幫助文件表(CHelp):用于存放用戶指南之類的數(shù)據(jù),見表3.6所示。</p><p> 表3.6 CHelp表結(jié)構(gòu)</p><p> 留言
46、表(Cmemo): 用于存放用戶留言的信息,見表3.7所示。</p><p> 表3.7 Cmemo表結(jié)構(gòu)</p><p><b> 4 系統(tǒng)詳細(xì)設(shè)計(jì)</b></p><p> 4.1 系統(tǒng)架構(gòu)層次</p><p> 該網(wǎng)絡(luò)訂餐系統(tǒng)通過三層架構(gòu)層次來實(shí)現(xiàn),以確保系統(tǒng)運(yùn)行的可靠性和安全性,下面是層層之間的關(guān)系,如下
47、圖4.1所示: </p><p> 圖4.1 系統(tǒng)架構(gòu)層次</p><p> 4.2 系統(tǒng)模塊設(shè)計(jì)</p><p> 4.2.1 總體模塊功能描述</p><p> 該系統(tǒng)主要分為前臺用戶、游客,后臺管理員權(quán)限,根據(jù)對顧客網(wǎng)上訂餐系統(tǒng)業(yè)務(wù)流程的分析,已看出顧客點(diǎn)菜主要涉及到一些數(shù)據(jù)庫的邏輯和程序應(yīng)用邏輯。</p><
48、;p> 顧客登錄網(wǎng)上訂餐系統(tǒng)進(jìn)行菜單瀏覽、顧客注冊為會員。會員對自己的個人信息進(jìn)行更改,比如送餐地址和聯(lián)系電話。以及賬戶密碼。顧客對已選的菜單進(jìn)行更改選擇的數(shù)量或者取消選擇。當(dāng)顧客確定訂餐完畢后,顧客將其提交只服務(wù)器后臺點(diǎn)餐系統(tǒng),并生成訂單。生成訂單后,進(jìn)入付款頁,可以多數(shù)量購買,價格要跟著數(shù)量增加,可以增刪菜品。管理員在后臺登錄后,可以創(chuàng)建新的管理員。管理員可以對餐廳網(wǎng)上訂餐系統(tǒng)上的菜單進(jìn)行添加、刪除和修改,比如更改菜單的圖片
49、,價格,菜單的描述,更換新品,添加新菜,每周更新一次菜譜等。管理員對菜單進(jìn)行管理,確定訂單的生成。管理員根據(jù)不同的屬性來查詢訂單,比如生成日期或者編號等,系統(tǒng)功能模塊結(jié)構(gòu)圖如圖4.2所示:</p><p> 圖4.2 系統(tǒng)功能模塊結(jié)構(gòu)圖</p><p> 4.2.2 用戶模塊功能描述</p><p><b> 用戶功能: </b><
50、;/p><p> 網(wǎng)站用戶可以進(jìn)行注冊行為,輸入資料提交至hillMan數(shù)據(jù)庫的user1表之中。注冊成功之后,直接登錄。</p><p> 用戶可以進(jìn)行登錄行為,登錄后會根據(jù)其先前注冊的資料,驗(yàn)證用戶的合法性,并跳轉(zhuǎn)到指定頁面上。</p><p> 用戶資料修改是為用戶更改個人信息所提供的窗口,用戶只有登錄網(wǎng)頁后才有權(quán)限修改個人資料信息。</p>
51、<p> 用戶訪問網(wǎng)上訂餐系統(tǒng)時,可以注冊或登錄,然后進(jìn)行相關(guān)的訂餐操作,操作流程如下圖4.3所示:</p><p> 圖4.3 用戶功能結(jié)構(gòu)圖</p><p> 4.2.3 菜式模塊共描述</p><p><b> 菜式:</b></p><p> 用戶通過使用購物車程序,可以使得網(wǎng)上購物更方便、更
52、快捷。用戶要購買商品,首先要將其放人購物車。同時用戶還可以查看,修改購物車?yán)锏纳唐窋?shù)量,系統(tǒng)將自動計(jì)算商品總價格等等。</p><p> 菜式列表供用戶選擇所需的菜式,將其加入購物車,注冊用戶可以下訂單,如下圖4.4所示:</p><p> 圖4.4 菜式功能結(jié)構(gòu)圖</p><p> 4.2.4 留言板模塊功能描述</p><p>&l
53、t;b> 留言板:</b></p><p> 訪客可以進(jìn)入留言板,根據(jù)相關(guān)主題進(jìn)行留言,注冊用戶可以創(chuàng)建新帖,如下圖4.5所示:</p><p> 圖4.5 留言板功能結(jié)構(gòu)圖</p><p> 4.2.5 后臺管理員模塊功能描述</p><p><b> 后臺管理員:</b></p>
54、;<p> 管理菜式的添加,刪除,修改,訂單的刪除,修改,留言的刪除,用戶的查看,如下圖4.6所示:</p><p> 圖4.6 后臺管理員功能結(jié)構(gòu)圖</p><p><b> 5 系統(tǒng)實(shí)現(xiàn)</b></p><p><b> 5.1 用戶注冊</b></p><p> 用戶信
55、息包括用戶名、用戶密碼,聯(lián)系電話,聯(lián)系地址,點(diǎn)擊“注冊”,如果用戶沒輸入必要的字段,就會提示用戶輸入,完成注冊。</p><p> 用戶注冊頁面設(shè)計(jì)如圖5.1所示:</p><p> 圖5.1 用戶注冊圖</p><p> 首先把reg.jsp文件的表單屬性設(shè)置成<form name="form2" method="post
56、" action="add.jsp">,再用JSP中request對象的getParameter方法獲得FORM表單信息。具體代碼如下:</p><p><b> <%</b></p><p> Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver
57、").newInstance();</p><p> String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=Edinner";</p><p> String user="sa";</p><p> String password=
58、"";</p><p> Connection conn=DriverManager.getConnection(url,user,password);</p><p> Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);&l
59、t;/p><p> String name=(String)request.getParameter("uname");</p><p> String psw=(String)request.getParameter("passWord");</p><p> String phone=(String)request.ge
60、tParameter("phone");</p><p> String address= (String)request.getParameter("address");</p><p> String sql="insert into users(UserName,psw,U_Phone,U_Address,Power)values
61、('"+name+"','"+psw+"','"+phone+"','"+address+"',2)";</p><p> stmt.executeUpdate(sql); </p><p> response.sendRedirec
62、t("ok.jsp"); </p><p><b> %></b></p><p><b> 5.2 用戶登錄</b></p><p> 用戶登陸模塊實(shí)現(xiàn)用戶登陸功能,它驗(yàn)證用戶提交的用戶名和密碼是否被授權(quán),如果登錄名為空,會提示請輸入用戶名,如果密碼沒輸入或輸入錯誤,會輸入密碼為空或錯誤,
63、并根據(jù)訪問權(quán)限為用戶提供相應(yīng)的業(yè)務(wù)功能。</p><p> 用戶登頁面設(shè)計(jì)如圖所示5.2所示:</p><p> 圖5.2 用戶登錄界面設(shè)計(jì)</p><p> 用戶只有登錄系統(tǒng)后才能訂餐。登錄時,用戶需要在login.jsp頁面中輸入用戶名和密碼并提交到check.jsp中。check.jsp核實(shí)用戶名和密碼正確后,才允許用戶登錄,正確登錄后用戶就可以查詢菜肴
64、信息拉。</p><p> 這里是用Session對象的setAttribute方法設(shè)定指定名字的屬性值,同時用request對象的getParameter方法獲得用戶名以及密碼,代碼如下:</p><p><b> <% …………</b></p><p> session.setAttribute("login&qu
65、ot;,"0");</p><p><b> …………</b></p><p> String name=(String)request.getParameter("uname");</p><p> String psw=(String)request.getParameter("pas
66、sWord");</p><p> String sql="select * from My_Users where UserName='"+name+"' AND PassWord='"+psw+"'";</p><p> ResultSet rs = stmt.executeQue
67、ry(sql); </p><p><b> %></b></p><p> 獲取到用戶名和密碼后,將它與用戶表中的用戶名和密碼進(jìn)行核對,如果一致則是合法用戶,可以登錄進(jìn)入showmenu.jsp頁面,如果不是則返回login.jsp主頁重新輸入。</p><p><b> <% </b></p&g
68、t;<p> if (!rs.next())</p><p> response.sendRedirect("login.jsp"); </p><p><b> else </b></p><p> //session.setAttribute("login","1&qu
69、ot;);</p><p><b> {</b></p><p> if (rs.getInt("Power")==1) </p><p> { session.setAttribute("login","1");</p><p><b>
70、}</b></p><p> else if (rs.getInt("Power")==2) </p><p><b> {</b></p><p> session.setAttribute("login","2");// 1 管理員,2 客戶</p>
71、<p><b> }</b></p><p> session.setAttribute("username",name);</p><p> response.sendRedirect("showmenu.jsp"); </p><p><b> } %>
72、 </b></p><p><b> 5.3 在線訂餐</b></p><p> 用戶登錄系統(tǒng)后,就可以購買美味了。購買時,用戶需要查看都有哪些菜,這就需要一個菜單列表列出店中所有的菜肴。列表對應(yīng)的是showmenu.jsp頁面,主要內(nèi)容有菜名、說明、圖片、價格。進(jìn)入詳細(xì)介紹頁面后,用戶可以選擇份數(shù)來訂購了,訂餐頁面設(shè)計(jì)如圖5.3所示:</p&g
73、t;<p> 圖5.3 菜肴展示圖</p><p> 在列表頁面中單擊“圖片”超鏈接,可以查看菜肴的詳細(xì)信息。每份菜肴還需要提供“添加到購物車”的按紐,以便用戶能夠方便地購買,菜肴詳細(xì)介紹如下圖5.4所示: </p><p> 圖5.4 菜肴詳細(xì)介紹圖</p><p><b> 5.4 購物車</b></p>
74、<p> 用戶查看購物車對應(yīng)的是shoplist.jsp頁面。此頁面提取當(dāng)前用戶的所有訂單列表,用戶可以在該頁面上修改自己的購物車,將自己不想買的菜刪除,用戶查看購物車如下圖5.5所示;</p><p> 圖5.5 購物車管理圖</p><p><b> 代碼實(shí)現(xiàn)如下:</b></p><p> orderInfo.jsp頁
75、面:</p><p><b> <% </b></p><p> String uname= (String)session.getAttribute("username");</p><p><b> %></b></p><p> <form act
76、ion="order.jsp" method="post" onSubmit="return check()"></p><p> <table cellspacing=1 cellpadding=4 width="92%" height="100" border=0</p><p
77、> align="CENTER" bgcolor="#c0c0c0"></p><p> <tr bgcolor="#dadada"></p><p> <td colspan="5" height="25" align=center><fon
78、t color="#000000">請確認(rèn)支付和配送信息</font></td></p><p><b> </tr></b></p><p> <tr bgcolor="#ffffff"></p><p> <td width="
79、;22%" align="RIGHT"><font color="#000000">訂 餐</p><p> 人:</font></td></p><p> <td colspan=4 width="78%"><%=uname%></p>
80、<p> <input type="hidden" name="cname" value="<%=uname%>"></p><p> <font id="us"></font></td></p><p><b> <
81、/tr></b></p><p> <tr bgcolor="#ffffff"></p><p> <td width="22%" align="RIGHT"><font color="#000000">送貨地址:</font></td
82、></p><p> <td colspan=4 width="78%"><input type="text" name="address"</p><p> maxlength="200" onBlur="address()"></p>&l
83、t;p> <font id="addr"></font></p><p><b> </td></b></p><p><b> </tr></b></p><p> <tr bgcolor="#ffffff">
84、;</p><p> <td width="22%" height="31" align="RIGHT"><font</p><p> color="#000000">聯(lián)系電話:</font></td></p><p> <td
85、 colspan=4 width="78%" height="31"><input type="text"</p><p> name="tel" maxlength="13" onBlur="telcalled()"></p><p> <f
86、ont id="telmsg"></font></td></p><p><b> </tr></b></p><p> <tr bgcolor="#ffffff"></p><p> <td width="22%" a
87、lign="RIGHT"><font color="#000000">應(yīng)付金額:</font></td></p><p> <td colspan=4 width="78%"></p><p> 人民幣: <%=new DecimalFormat("0.00
88、").format(session.getAttribute("total")) %>元</p><p> <font id="money"></font></td></p><p><b> </tr></b></p><p> &l
89、t;tr bgcolor="#ffffff"></p><p> <td width="22%" height="31" align="RIGHT"><font</p><p> color="#000000">配送方式:</font></
90、td></p><p> <td colspan=4 width="78%" height="31"></p><p> <table width='100%' border='0' cellpadding='3' cellspacing='1'</p&
91、gt;<p> bgcolor='#c0c0c0'></p><p> <tr bgcolor='#ffffff'></p><p> <td align='center' width='100'>送餐上門</td></p><p> &l
92、t;td nowrap><font color='#000000'> 10元起送</font></td></p><p><b> </tr></b></p><p><b> </table></b></p><p> <tr
93、bgcolor="#ffffff"></p><p> <td width="22%" height="31" align="right"><font</p><p> color="#000000">訂單附言:</font></td&g
94、t;</p><p> <td colspan=4 width="78%" height="25"><textarea name="notice"</p><p> rows="6"></textarea></td></p><p>&
95、lt;b> </tr></b></p><p> <tr bgcolor="#dadada"></p><p> <td colspan="5" height="12" align="center"><input type="submi
96、t"</p><p> value="確認(rèn)以上信息無誤,提交"></td>如果購買的菜超過兩份,則系統(tǒng)將其金額累加,代碼如下:</p><p><b> <%</b></p><p> ResultSet rs1=stmt.executeQuery(sql1);</p>
97、<p> float n=0;</p><p> while(rs1.next())</p><p> { String m=rs1.getString("Prince");</p><p> n+=Float.parseFloat(m);</p><p><b> }%></b
98、></p><p> <td><font color="#000000"><b>總金融<%=n %></b></font><br></td></p><p><b> }%></b></p><p><b&g
99、t; 5.5 訂單管理</b></p><p> 對于網(wǎng)絡(luò)商店來說,需要記錄用戶購買菜肴的情況,這就需要記錄訂單信息。用戶每一次購買,都自動生成一個購買訂單供管理員查看,因此就需要設(shè)計(jì)一個管理員管理訂單的功能,訂單中記錄的信息主要涉及購物車數(shù)據(jù)表Korder中的數(shù)據(jù)。</p><p> 訂單頁面應(yīng)該顯示所有用戶訂單的列表。應(yīng)該顯示的信息有訂單編號、用戶名、總金額、付款狀態(tài)
100、。管理員在此頁面中可以查看每一個訂單的菜肴列表情況,可以刪除任何一個訂單。訂單管理頁面如圖5.6所示。</p><p> 圖5.6 訂單管理頁面</p><p><b> 5.6 留言板</b></p><p> 用戶登陸后,可以再留言板發(fā)表自己的看法,也可以在此給我們留言,留言板頁面如下圖5.7所示:</p><p
101、> 圖5.7 留言板界面</p><p><b> 6 系統(tǒng)測試</b></p><p><b> 6.1 單元測試</b></p><p> 黑盒測試也稱為功能測試,它著眼于程序的外部特征,而不考慮程序的內(nèi)部邏輯結(jié)構(gòu)。測試者把被測程序看成一個黑盒,不用關(guān)心程序的內(nèi)部結(jié)構(gòu)。黑盒測試是在程序接口處進(jìn)行測試,它只
102、檢查程序功能是否能按照規(guī)格說明書的規(guī)定正常使用,程序是否能適當(dāng)?shù)亟邮蛰斎霐?shù)據(jù)產(chǎn)生正確的輸出信息,并且保持外部信息的完整性。 黑盒測試主要采用的技術(shù)有:等價分類法、邊沿值分析法、錯誤推測法和因果圖等技術(shù)。</p><p> 在黑盒測試過程中因?yàn)榧僭O(shè)系統(tǒng)的程序是不可見的,測試過程主要在系統(tǒng)的外部進(jìn)行,如輸入和接口部分等。</p><p><b> 黑盒子測試的過程:&
103、lt;/b></p><p> 1.劃分等價類并編號,如表6.1所示:</p><p> 表6.1 等價類劃分表</p><p> 2.設(shè)計(jì)測試用例,以便覆蓋所有有效等價類。測試數(shù)據(jù)用戶名為“chenlin”密碼為“fastkk”,測試數(shù)據(jù)有效,覆蓋的有效等價類、。</p><p> 3.為每一個無效等價類設(shè)計(jì)一個測試用例<
104、;/p><p> 測試數(shù)據(jù)用戶名:“”密碼:“xxxxxxxxxxyyyyyyyyyyzzz”,測試數(shù)據(jù)無效,覆蓋的有效等價類、。</p><p> 測試數(shù)據(jù)用戶名:“xxxxxxxxxxyyyyyyyyyyzzz”密碼:“”,測試數(shù)據(jù)無效,覆蓋的有效等價類、。</p><p> 測試數(shù)據(jù)用戶名:“”密碼:“”,測試數(shù)據(jù)無效,覆蓋的有效等價類、。</p>
105、;<p> 測試數(shù)據(jù)用戶名:“xxxxxxxxxxyyyyyyyyyyzzz”密碼:“xxxxxxxxxxyyyyyyyyyyx”,測試數(shù)據(jù)無效,覆蓋的有效等價類、。</p><p><b> 6.2 功能測試</b></p><p> 6.2.1 系統(tǒng)管理模塊的功能測試</p><p> 在此模塊中,系統(tǒng)管理員用戶登陸后
106、能進(jìn)行查看、增加、刪除、更改、查詢、非系統(tǒng)管理員用戶權(quán)力有限,不能進(jìn)行這個模塊的功能。</p><p> 6.2.2 菜肴管理模塊</p><p> 在此模塊中,系統(tǒng)管理員可以對菜肴項(xiàng)目進(jìn)行添加,刪除操作。</p><p> 6.2.3 訂單管理模塊</p><p> 在此模塊中,信息管理員用戶登陸后能進(jìn)行查看、處理訂單記錄。<
107、/p><p> 6.2.4 購物車模塊</p><p> 在此模塊中,用戶登陸后能進(jìn)行查看、刪除購物車中的內(nèi)容。</p><p> 6.2.5 留言板模塊</p><p> 在此模塊中,用戶可以留言,并查看所有的留言。</p><p> 通過面向?qū)ο笳Z言設(shè)計(jì)類,java和jsp相結(jié)合,采用MVC模式,在jsp頁面
108、中實(shí)現(xiàn)對類的屬性和方法的調(diào)用。</p><p> 根據(jù)上述功能介紹,總結(jié)出客戶端的頁面設(shè)計(jì)如表2-2所列。</p><p><b> 硬件接口:無 </b></p><p> 軟件接口:通過JDBC ODBC橋接器與MySQL 數(shù)據(jù)庫進(jìn)行連接。</p><p><b> 致 謝</b>
109、</p><p> 在本次畢業(yè)設(shè)計(jì)實(shí)踐中,指導(dǎo)老師在做人、敬業(yè)、創(chuàng)新思維等方面,均給予我極大的幫助,使我很受啟發(fā)。本系統(tǒng)功能還不是十分的完善,但基本上能完成用戶在網(wǎng)上訂餐。其主要功能有用戶登錄,菜單查詢,購物車,以及訂單處理等功能。界面簡單明了,易操作。</p><p> 通過畢業(yè)設(shè)計(jì)我學(xué)到了很多新知識,個人能力得到很大的提高。在設(shè)計(jì)中經(jīng)常遇到種種困難與挫折,這個時候我總是聯(lián)系導(dǎo)師,他
110、不但給予我的很多的鼓勵,而且在設(shè)計(jì)上提出了很多正確的建議和善意的批評??傊?,我的畢業(yè)設(shè)計(jì)的順利完成離不開他們的幫助,在此,我對他們表示衷心的感謝!</p><p> 不過對我來說,由于時間有限,也包括我們的知識水平有限,系統(tǒng)中有不足之處,還請各位老師指導(dǎo)指正。</p><p><b> 參考文獻(xiàn)</b></p><p> [1]薩師煊,《
111、王珊.數(shù)據(jù)庫系統(tǒng)概論[M]》, 北京,高等教育出版社,2005.2.</p><p> [2]程志艷,張亮,馬建紅,《JSP實(shí)用簡明教程[M]》, 北京,清華大學(xué)出版社,2005.12.</p><p> [3]楊學(xué)瑜,王志軍,劉同利,《JSP入門與提高[M]》, 北京,清華大學(xué)出版社,2002.3.</p><p> [4]黃理,《JSP輕松開發(fā)WEB網(wǎng)站[
112、M]》,北京,希望電子出版社,2003.11.</p><p> [5]劉彬,《JSP數(shù)據(jù)庫高級教程[M]》,北京,清華大學(xué)出版社,2006.3.</p><p> [6] 吳其慶著,《JSP網(wǎng)站設(shè)計(jì)經(jīng)典教程》,北京,冶金工業(yè)出版社.2001.4.</p><p> [7] 潘郁主著,《電子商務(wù)數(shù)據(jù)庫技術(shù)》,北京,北京大學(xué)出版社.2002.5.</p&g
113、t;<p> [8] 蔣瀚洋,李月軍,龐婭娟,《SQL Server 2005數(shù)據(jù)庫管理與開發(fā)教程[M]》.,北京,人民郵電出版社,2009.7</p><p> [9]孫衛(wèi)琴,李洪成,《Tomcat 與 Java Web 開發(fā)技術(shù)詳解》,北京,電子工業(yè)出版社,2003.6</p><p> [10]孫一林,彭波,《Java數(shù)據(jù)庫編程實(shí)例》,北京,清華大學(xué)出版社,200
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 網(wǎng)上訂餐系統(tǒng)畢業(yè)設(shè)計(jì)論文
- 網(wǎng)上訂餐系統(tǒng)畢業(yè)設(shè)計(jì)論文
- 網(wǎng)上訂餐系統(tǒng)畢業(yè)設(shè)計(jì)論文
- 畢業(yè)設(shè)計(jì)論文 網(wǎng)上訂餐系統(tǒng)設(shè)計(jì)
- 網(wǎng)上購物系統(tǒng)畢業(yè)設(shè)計(jì)說明書
- 網(wǎng)上訂餐系統(tǒng)-畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)---網(wǎng)上訂餐系統(tǒng)
- 網(wǎng)上訂餐系統(tǒng)畢業(yè)設(shè)計(jì)3
- 畢業(yè)設(shè)計(jì)--畢業(yè)設(shè)計(jì)管理系統(tǒng)設(shè)計(jì)說明書
- 博客系統(tǒng)設(shè)計(jì)說明書畢業(yè)設(shè)計(jì)論文
- 網(wǎng)上書店畢業(yè)設(shè)計(jì)說明書
- jsp網(wǎng)上書店系統(tǒng)畢業(yè)設(shè)計(jì)說明書
- 畢業(yè)設(shè)計(jì)說明書(論文).doc
- 畢業(yè)設(shè)計(jì)說明書(論文).doc
- 畢業(yè)設(shè)計(jì)說明書(論文).doc
- 畢業(yè)設(shè)計(jì)說明書(論文).doc
- 畢業(yè)設(shè)計(jì)說明書(論文).doc
- 礦井畢業(yè)設(shè)計(jì)畢業(yè)設(shè)計(jì)說明書
- 【畢業(yè)設(shè)計(jì)】墊圈內(nèi)徑檢測裝置畢業(yè)設(shè)計(jì)說明書課程畢業(yè)設(shè)計(jì)說明書
- 【畢業(yè)設(shè)計(jì)】臺虎鉗畢業(yè)設(shè)計(jì)說明書
評論
0/150
提交評論