網(wǎng)上訂餐系統(tǒng)畢業(yè)論文-Java_第1頁(yè)
網(wǎng)上訂餐系統(tǒng)畢業(yè)論文-Java_第2頁(yè)
網(wǎng)上訂餐系統(tǒng)畢業(yè)論文-Java_第3頁(yè)
網(wǎng)上訂餐系統(tǒng)畢業(yè)論文-Java_第4頁(yè)
網(wǎng)上訂餐系統(tǒng)畢業(yè)論文-Java_第5頁(yè)
已閱讀5頁(yè),還剩17頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

./分院名稱(chēng):學(xué)生學(xué)號(hào):師學(xué)院本科畢業(yè)論文〔設(shè)計(jì)〔理工類(lèi)題目:網(wǎng)上訂餐系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)專(zhuān)業(yè):計(jì)算機(jī)科學(xué)與技術(shù)作者姓名:指導(dǎo)教師:指導(dǎo)教師職稱(chēng):年月.師學(xué)院本科畢業(yè)論文〔設(shè)計(jì)作者承諾保證書(shū)本人重承諾:本篇畢業(yè)論文〔設(shè)計(jì)的容真實(shí)、可靠。如果存在弄虛作假、抄襲的情況,本人愿承擔(dān)全部責(zé)任。論文作者簽名:日期:年月日師學(xué)院本科畢業(yè)論文〔設(shè)計(jì)指導(dǎo)教師承諾保證書(shū)本人重承諾:我已按有關(guān)規(guī)定對(duì)本篇畢業(yè)論文〔設(shè)計(jì)的選題與容進(jìn)行指導(dǎo)和審核,堅(jiān)持一人一題制,確認(rèn)由作者獨(dú)立完成。如果存在學(xué)風(fēng)問(wèn)題,本人愿意承擔(dān)指導(dǎo)教師的相關(guān)責(zé)任。指導(dǎo)教師簽名:日期:年月日摘要二十一世紀(jì)是信息化、知識(shí)化的世紀(jì),隨著社會(huì)的進(jìn)步、計(jì)算機(jī)應(yīng)用的快速發(fā)展和網(wǎng)絡(luò)應(yīng)用的不斷擴(kuò)大,并使傳統(tǒng)的訂餐形式得到了極大的擴(kuò)充,使人們訂餐更加的方便。基于Web的網(wǎng)上訂餐系統(tǒng),它是一種基于計(jì)算機(jī)網(wǎng)絡(luò)的網(wǎng)上訂餐形式,它的出現(xiàn),大擴(kuò)充了現(xiàn)行的訂餐方式,使餐飲擺脫了空間上和時(shí)間上的束縛,不管誰(shuí),只要會(huì)上網(wǎng),都可以坐在電腦前面,方便地進(jìn)行網(wǎng)上訂餐,可以看成是對(duì)餐飲業(yè)的一次革命。通過(guò)網(wǎng)上訂餐系統(tǒng),可以在家中或辦公室為自己訂一份既營(yíng)養(yǎng)又實(shí)惠的美食。本文就是基于此目的實(shí)現(xiàn)一個(gè)網(wǎng)上購(gòu)餐系統(tǒng)。本系統(tǒng)是用戶實(shí)現(xiàn)網(wǎng)絡(luò)交易的一種方式。設(shè)計(jì)和實(shí)現(xiàn)了一個(gè)B/S結(jié)構(gòu)的網(wǎng)上訂餐系統(tǒng),重點(diǎn)論述了系統(tǒng)的功能與實(shí)現(xiàn)、數(shù)據(jù)流程及存儲(chǔ)。包括會(huì)員管理、餐品信息介紹、網(wǎng)上訂餐、用戶留言、系統(tǒng)用戶管理以及后臺(tái)數(shù)據(jù)庫(kù)管理等。本文先是對(duì)系統(tǒng)的需求分析做了詳細(xì)的介紹,然后對(duì)系統(tǒng)的概要設(shè)計(jì)進(jìn)行了闡述并重點(diǎn)介紹了網(wǎng)上訂餐系統(tǒng)各功能模塊的具體設(shè)計(jì)和實(shí)現(xiàn)。本系統(tǒng)是在MySQL數(shù)據(jù)庫(kù)、Java語(yǔ)言和MyEclipse平臺(tái)技術(shù)實(shí)現(xiàn)的。既擁有良好便捷的前臺(tái)操作界面,也有穩(wěn)定的后臺(tái)支持。系統(tǒng)旨在提供一個(gè)可供操作、功能完全、特色突出的網(wǎng)上訂餐系統(tǒng)。關(guān)鍵詞:網(wǎng)上訂餐系統(tǒng)JAVAMySQLSSH2.AbstractTwenty-firstcenturyisainformationalknowledgeablecentury.Withtherapiddevelopmentofsociety,theuseofthecomputerapplicationandthenetworkapplication,thetraditionalorderformofmealshasbeengreatlyexpanded,makinglifemoreconvenient.OnlinemealorderingsystembasedonWebissuchacomputernetworkbasedontheonlinemealorderingformwhichhasgreatlyexpandedtheexistingorderway.Nomatterwho,aslongaswiththeInternet,cansitinfrontofthecomputer,orderingamealconvenientlyonline.Itisakindofrevolutionofdailylife.Onlinemealorderingsystemcanbeusedinthehomeorofficetobuyanutritionandaffordablefoodforsomeone.Basedonthis,thisarticleimplementsanonlinemealsystem.Thesystemistheuserawayfornetworktransactions.theon-linemealorderingsystemoftheB/Sstructureisdesignedandimplemented,itemphaticallyelaboratesthefunctionandimplementationofsystem,dataflowandstoragesuchasthemembermanagement,informationintroductionoforder,theon-linemealordering,userinformation,systemusermanagementaswellastheadministrationofbackstagedatabase.Thisarticleanalyzesthesystemrequirements,andmakesadetailedintroduction,andthenhighlightedthedesignandimplementationoftheonlinemeal-ordersystem.ThesystemisimpliedbyMySQLdatabase,JavalanguageandMyEclipse.Itnotonlyhasgoodprospectsoffriendlyinterface,andalsoastablebackgroundsupport.Thesystemisdesignedtoprovideanoperable,fullyfunctional,featureprominentsystemforonlinemealordering.KeyWords:OnlineorderingsystemJAVAMySQLSSH2.目錄24224承諾保證書(shū)I29415摘要II20104AbstractIII18998第一章緒論1255161.1本課題的來(lái)源及研究意義123631.1.1本課題的來(lái)源1154631.1.2課題的研究意義 226361.2訂餐系統(tǒng)概述 2126931.2.1訂餐系統(tǒng)的發(fā)展歷史 229505第二章相關(guān)開(kāi)發(fā)技術(shù)321322.1J2EE設(shè)計(jì)平臺(tái)3309182.2MySql378382.2.1MySql簡(jiǎn)介3299502.2.2MySql優(yōu)勢(shì)3209442.3struts24134312.3.1struts2簡(jiǎn)介457282.3.2struts2框架結(jié)構(gòu)4131802.4spring4128792.4.1spring簡(jiǎn)介459672.4.2sring核心機(jī)制5225532.5hibernate5188912.5.1hibernate簡(jiǎn)介536332.5.2hibernate核心接口54991第三章需求分析6284873.1網(wǎng)上訂餐需求分析6121023.1.1功能需求分析6291713.2系統(tǒng)架構(gòu)分析7276143.3可行性分析76774第四章系統(tǒng)設(shè)計(jì)8212714.1系統(tǒng)設(shè)計(jì)目標(biāo)8203914.1.1系統(tǒng)安全性8193394.1.2可維護(hù)性852064.1.3用戶操作843504.1.4運(yùn)行速度8124494.1.5界面82124.2用戶類(lèi)別功能設(shè)計(jì)9294564.2.1訂餐用戶功能9254224.2.2餐館管理員功能9121484.3總體設(shè)計(jì)10244074.3.1用戶登錄1045704.3.2訂餐服務(wù)11302644.3.3訂餐處理11199974.4數(shù)據(jù)庫(kù)設(shè)計(jì)1234314.4.1數(shù)據(jù)庫(kù)設(shè)計(jì)概述12145384.4.5數(shù)據(jù)庫(kù)模型1575第五章系統(tǒng)實(shí)現(xiàn)16318695.1登陸和注冊(cè)16165625.2菜單信息瀏覽16304395.3訂餐服務(wù)1710845.4用戶反饋17253575.5訂單處理17118085.6餐館信息管理18252225.7程序相關(guān)1824547結(jié)論1917869參考文獻(xiàn) 2012542致21.緒論網(wǎng)上訂餐就是互聯(lián)網(wǎng)的深入應(yīng)用。用戶通過(guò)互聯(lián)網(wǎng),能足不出戶,輕松閑逸地實(shí)現(xiàn)自己訂購(gòu)餐飲和食品〔包括飯、菜、盒飯、便當(dāng)?shù)鹊囊环N網(wǎng)絡(luò)訂餐形式。隨著食天下網(wǎng)上訂餐平臺(tái)的興起,網(wǎng)上訂餐已經(jīng)逐漸成為了白領(lǐng)階層中的一種潮流了。網(wǎng)上訂餐一般都會(huì)集中在一個(gè)時(shí)段,這會(huì)給餐飲企業(yè)制造出訂餐的高峰時(shí)段,訂餐者的需求在很多時(shí)候會(huì)得不到滿足,這種不如意,誕生的總是網(wǎng)上訂餐"無(wú)保障","線上看,線下訂"正好能幫助改變這種會(huì)衍生惡性循環(huán)的效應(yīng);通過(guò)線下聯(lián)系和溝通,訂餐者會(huì)對(duì)送餐時(shí)間能適當(dāng)把控,這樣也就心里有數(shù),在這樣的情況下,餐飲企業(yè)和用餐者在口頭協(xié)商的前提下,能達(dá)成一種雙方都能接受的協(xié)議,網(wǎng)上訂餐用戶一般都不會(huì)產(chǎn)生不滿情緒,這能抵消消費(fèi)者的不滿情緒。想實(shí)現(xiàn)網(wǎng)上訂購(gòu),這些網(wǎng)上訂餐的形式應(yīng)該很難,其中原因主要就是餐飲行業(yè)普遍存在的信息化意識(shí)薄弱,這讓網(wǎng)上訂餐成為實(shí)在的瓶頸,短時(shí)期這是很難突破的,這也是為什么現(xiàn)在真正能實(shí)現(xiàn)網(wǎng)上訂餐、并能被廣泛接納的網(wǎng)上訂餐行為,依然離不開(kāi)直接訂購(gòu)的主要原因。網(wǎng)上訂餐,想正真實(shí)現(xiàn)"網(wǎng)上訂,網(wǎng)上付"的正規(guī)化,還需要很長(zhǎng)的一段時(shí)日。1.1本課題的來(lái)源及研究意義1.1.1本課題的來(lái)源隨著網(wǎng)絡(luò)技術(shù)的發(fā)展和普及,Internet已成為人們獲取有關(guān)信息和相互交流的重要途徑之一,越來(lái)越多的機(jī)構(gòu)和組織開(kāi)始利用網(wǎng)絡(luò)資源傳遞、發(fā)布、收集和管理信息。這對(duì)各種類(lèi)型的網(wǎng)絡(luò)提供一次很大的機(jī)遇與挑戰(zhàn),特別是通過(guò)網(wǎng)絡(luò)進(jìn)行信息交互的這種活動(dòng),更使網(wǎng)絡(luò)的經(jīng)營(yíng)方式充滿了活力和機(jī)動(dòng)性[1]?;贐/S模式的JAVA網(wǎng)上訂餐系統(tǒng)是應(yīng)用于網(wǎng)絡(luò)交流領(lǐng)域的系統(tǒng),它的主要特點(diǎn)有:<1>通用性:網(wǎng)上訂餐系統(tǒng)具有良好的界面,適合推廣給所有用戶,能夠給用戶提供良好的服務(wù)。<2>便捷性:本系統(tǒng)最大的特點(diǎn)就是方便快捷,用戶使用本系統(tǒng)可以足不出戶就享受到優(yōu)質(zhì)服務(wù),在現(xiàn)代人們的生活中很適用。人們對(duì)于訂餐的要能夠減少排隊(duì)等待的時(shí)間,此系統(tǒng)的設(shè)計(jì)正是為了迎合大家的這種需求,可以讓用戶節(jié)約許多的時(shí)間,提高了生活效率[2]。1.1.2課題的研究意義網(wǎng)上訂餐系統(tǒng)為人們的生活提供了方便快捷的消費(fèi)方式:1.顧客去餐廳消費(fèi)不用需要排隊(duì)點(diǎn)餐,可以方便的打開(kāi)我們的,選擇自己喜歡的餐廳,瀏覽餐廳的菜單,進(jìn)行網(wǎng)上點(diǎn)餐,省去了很多的時(shí)間。2.對(duì)于餐廳,可以擴(kuò)大自己的銷(xiāo)售領(lǐng)域,通過(guò)我們的可以很好的做廣告。每個(gè)餐廳有它自己的主頁(yè),管理自己的主頁(yè);餐廳不僅僅在某個(gè)商業(yè)小區(qū)經(jīng)營(yíng),餐廳還可以給顧客提供送外賣(mài)服務(wù),這樣就大方便了那些宅男宅女們,不用再買(mǎi)那些快餐似的垃圾食品,還能很好地享受到可口的飯菜。通過(guò)這種方式,餐廳的營(yíng)業(yè)圍將大提高,營(yíng)業(yè)額必然會(huì)上升。本系統(tǒng)針對(duì)所有用戶群體,建立了客戶端及服務(wù)器端。主要解決的問(wèn)題包括:<1>對(duì)于使用界面,需要人性化,能夠給用戶一種溫馨與簡(jiǎn)易的感覺(jué);<2>系統(tǒng)應(yīng)能夠及時(shí)響應(yīng)用戶的請(qǐng)求,并及時(shí)提供幫助。本系統(tǒng)開(kāi)發(fā)的意義在提供給用戶方便快速的訂餐服務(wù),滿足用戶的需要,解決傳統(tǒng)訂餐方式的不足。1.2訂餐系統(tǒng)概述1.2.1訂餐系統(tǒng)的發(fā)展歷史隨著互聯(lián)網(wǎng)用戶的增多,工作節(jié)奏的加快,網(wǎng)絡(luò)訂餐成為眾多年輕網(wǎng)民及白領(lǐng)人士生活中的一部分。大眾點(diǎn)評(píng)網(wǎng)、豆丁網(wǎng)等的成立,為眾多辦公樓、工作繁忙的白領(lǐng)解決了吃飯問(wèn)題。網(wǎng)絡(luò)訂餐的手段和方式分類(lèi),目前餐飲業(yè)主要通過(guò)以下三種方法開(kāi)展:1.通過(guò)餐飲訂餐。這種訂餐方式主要通過(guò)專(zhuān)門(mén)的實(shí)現(xiàn)訂餐,用戶通過(guò)網(wǎng)絡(luò)實(shí)現(xiàn)對(duì)餐館的查詢(xún)及餐館的菜譜查詢(xún)和預(yù)定服務(wù),相應(yīng)企業(yè)給予通過(guò)訂餐的顧客相應(yīng)的優(yōu)惠。2.通過(guò)及時(shí)的通訊工具〔QQ,MSN等的網(wǎng)絡(luò)訂餐。這種餐飲企業(yè)往往不具備建立訂餐系統(tǒng)的資金與技術(shù)實(shí)力,主要通過(guò)及時(shí)的通訊工具〔QQ,MSN等的實(shí)現(xiàn)訂餐。這種餐飲企業(yè)往往是區(qū)域性的,主要分布在居民小區(qū)及學(xué)校周邊,規(guī)模一般較小。3.通過(guò)電子的網(wǎng)絡(luò)訂餐。這種訂餐方式主要是在相應(yīng)餐飲企業(yè)舉辦大型酒席時(shí),顧客提供給餐飲企業(yè)餐單時(shí)使用。因?yàn)槭褂糜啿陀袝r(shí)間差,而且要收發(fā)略顯麻煩,所以目前較少使用。綜上,第一類(lèi)訂餐方式使用最為廣泛,建立較容易成本低,但對(duì)于傳統(tǒng)店面餐飲收效甚微,無(wú)法成為主要的利潤(rùn)來(lái)源。其余兩類(lèi)有網(wǎng)絡(luò)訂餐的實(shí)質(zhì),但僅作為目前網(wǎng)絡(luò)訂餐的輔助手段[3,4]。.相關(guān)開(kāi)發(fā)技術(shù)2.1J2EE設(shè)計(jì)平臺(tái)J2EEJava2平臺(tái)企業(yè)版〔Java2Platform,EnterpriseEdition是一套全然不同于傳統(tǒng)應(yīng)用開(kāi)發(fā)的技術(shù)架構(gòu),它包含許多組件,主要可以簡(jiǎn)化并且規(guī)應(yīng)用系統(tǒng)的開(kāi)發(fā)及部署,進(jìn)而提高可移植性、安全與再用價(jià)值[5]。目前,Java2平臺(tái)它有3個(gè)版本,它們是適用于小型設(shè)備和智能卡的Java2平臺(tái)Micro版〔Java2PlatformMicroEdition,J2ME、適用于桌面系統(tǒng)的Java2平臺(tái)標(biāo)準(zhǔn)版〔Java2PlatformStandardEdition,J2SE、適用于創(chuàng)建服務(wù)器應(yīng)用程序和服務(wù)的Java2平臺(tái)企業(yè)版〔Java2PlatformEnterpriseEdition,J2EE。J2EE它是一種利用Java2平臺(tái)來(lái)簡(jiǎn)化企業(yè)的解決方案的開(kāi)發(fā)、部署和管理等相關(guān)的復(fù)雜問(wèn)題的體系結(jié)構(gòu)。J2EE技術(shù)的基礎(chǔ)是核心的Java平臺(tái)或Java2平臺(tái)的標(biāo)準(zhǔn)版,J2EE它不僅鞏固標(biāo)準(zhǔn)版中的許多優(yōu)點(diǎn),例如"編寫(xiě)一次、隨處運(yùn)行"的特性、方便存取數(shù)據(jù)庫(kù)的JDBCAPI、CORBA技術(shù)及能夠在Internet應(yīng)用中保護(hù)數(shù)據(jù)的安全模式等等,同時(shí)提供了對(duì)EJB〔EnterpriseJavaBeans、JavaServletsAPI、JSP〔JavaServerPages以及XML技術(shù)的全面支持。其最終目的就是成為一個(gè)能夠使企業(yè)開(kāi)發(fā)者大幅縮短投放市場(chǎng)時(shí)間的體系結(jié)構(gòu)[6]。2.2MySql2.2.1MySql簡(jiǎn)介MySQL它是一個(gè)小型關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),MySQL它還是一種關(guān)聯(lián)數(shù)據(jù)庫(kù)管理的系統(tǒng),關(guān)聯(lián)數(shù)據(jù)庫(kù)將數(shù)據(jù)保存于不同的表中,而不是將所有數(shù)據(jù)容放在一個(gè)大倉(cāng)庫(kù)。這樣就提高了速度和靈活性。MySQL的是SQL"結(jié)構(gòu)化查詢(xún)語(yǔ)言"。SQL它是用于訪問(wèn)數(shù)據(jù)庫(kù)中的最常用標(biāo)準(zhǔn)化語(yǔ)言。MySQL軟件采用了GPL〔GNU通用公共許可證。由于它體積小、速度快、總體擁有成本低,特別是開(kāi)放源碼這一特點(diǎn),許多中小型為了降低總體成本就選擇了MySQL作為數(shù)據(jù)庫(kù)[7,8]。2.2.2MySql優(yōu)勢(shì)〔1它是使用C和C++編寫(xiě),并使用了眾多的編譯器進(jìn)行測(cè)試,保證了源代碼的可移植性;〔2支持AIX、HP-UX、NovellNetware、Linux、MacOS、OpenBSD、Solaris、Windows、FreeBSDOS/2Wrap等多種操作系統(tǒng);〔3為多種編程語(yǔ)言都提供了API。這些編程語(yǔ)言包括C、C++、Java、Perl、PHP、Ruby、和TclEiffel等;〔4既能作一個(gè)單獨(dú)的應(yīng)用程序應(yīng)用在客戶端服務(wù)器網(wǎng)絡(luò)環(huán)境中,還能作為一個(gè)庫(kù)而嵌入到其他的軟件中提供多種語(yǔ)言支持,常見(jiàn)的編碼如中文的GBK、BIG5,日文種的Shift、JIS以用作數(shù)據(jù)表名和數(shù)據(jù)列名;〔5提供了TCP/IP、ODBC和JDBC等許多種數(shù)據(jù)庫(kù)連接方法;〔6它還提供了用于管理、檢查、優(yōu)化數(shù)據(jù)庫(kù)的操作的管理工具;〔7可以處理有上千萬(wàn)條記錄的大型數(shù)據(jù)庫(kù)[9]。2.3struts22.3.1struts2簡(jiǎn)介Struts2它是Struts的下一代產(chǎn)品,是融合了struts1和WebWork的技術(shù),在它們基礎(chǔ)上合并的全新的框架。其全新的Struts2的體系結(jié)構(gòu)與Struts1的體系結(jié)構(gòu)有著巨大差別。Struts2它是以WebWork為核心,采用了攔截器機(jī)制來(lái)處理用戶的請(qǐng)求,這樣的設(shè)計(jì)讓業(yè)務(wù)邏輯控制器能夠與ServletAPI完全脫離,因此Struts2可以理解成WebWork的更新產(chǎn)品。雖然從Struts1到Struts2有著根本性的變化,但是相對(duì)于WebWork,Struts2它的變化還是很小[10]。2.3.2struts2框架結(jié)構(gòu)當(dāng)Web容器收到請(qǐng)求〔HttpServletRequest后,它將請(qǐng)求傳遞給一個(gè)標(biāo)準(zhǔn)的過(guò)濾鏈包括〔ActionContextCleanUp過(guò)濾器,然后經(jīng)過(guò)Otherfilters<SiteMesh,etc>,再然后需要調(diào)用FilterDispatcher這個(gè)核心控制器,然后它再調(diào)用ActionMapper確定請(qǐng)求來(lái)自哪個(gè)Action,ActionMapper返回一個(gè)收集Action詳細(xì)信息的ActionMaping的對(duì)象。接下來(lái)FilterDispatcher它將控制權(quán)派給ActionProxy,ActionProxy調(diào)用配置管理器<ConfigurationManager>從配置文件中讀取配置信息文件<struts.xml>,然后創(chuàng)建ActionInvocation對(duì)象,ActionInvocation在調(diào)用Action之前它會(huì)依次的調(diào)用所用配置的攔截器〔InterceptorN一旦執(zhí)行結(jié)果后返回結(jié)果字符串ActionInvocation負(fù)責(zé)查找結(jié)果字符串對(duì)應(yīng)的結(jié)果集<Result然后執(zhí)行這個(gè)Result。Result會(huì)調(diào)用一些模版〔JSP來(lái)表頁(yè)面,隨后攔截器<InterceptorN>會(huì)被執(zhí)行<順序和Action執(zhí)行之前相反>最后響應(yīng)<HttpServletResponse>它會(huì)被返回在web.xml中配置的那些過(guò)濾器和核心控制器〔FilterDispatcher中[11,12]。2.4spring2.4.1spring簡(jiǎn)介它是為了解決企業(yè)應(yīng)用程序開(kāi)發(fā)的復(fù)雜性而由RodJohnson創(chuàng)建的。框架的主要好處之一就是它的分層架構(gòu),分層架構(gòu)可以允許使用者選擇使用哪一個(gè)組件,同時(shí)并為J2EE應(yīng)用程序開(kāi)發(fā)提供集成的框架。Spring使用基本的JavaBean來(lái)完成從前只可能是由EJB來(lái)完成的事情。但Spring的用途不僅局限于服務(wù)器端的開(kāi)發(fā)。從簡(jiǎn)單性、可測(cè)試性和松耦合的角度而言,任何Java的應(yīng)用都可以從Spring中受益頗多[13]。2.4.2sring核心機(jī)制控制反轉(zhuǎn)模式〔依賴(lài)性注入的基本概念是:不為創(chuàng)建對(duì)象,但是描述創(chuàng)建它的方式。在代碼中不直接和對(duì)象和服務(wù)連接,而是在配置文件中來(lái)描述哪一個(gè)組件它需要哪一項(xiàng)服務(wù)。容器〔在Spring框架中是IOC容器它是負(fù)責(zé)將其聯(lián)系在一起。在典型的IOC場(chǎng)景中,是容器創(chuàng)建了所有對(duì)象,并且設(shè)置必要的屬性來(lái)將它們連接在一起,決定什么時(shí)間去調(diào)用方法[14]。2.5hibernate2.5.1hibernate簡(jiǎn)介Hibernate它是一個(gè)開(kāi)放源代碼的對(duì)象關(guān)系映射框架,它是對(duì)JDBC進(jìn)行了非常輕量級(jí)的對(duì)象封裝,使Java程序員能夠隨心所欲的使用對(duì)象編程思維來(lái)操縱數(shù)據(jù)庫(kù)。Hibernate它可以應(yīng)用在任何使用JDBC的場(chǎng)合,既能夠在Java的客戶端程序使用,也能夠在Servlet/JSP的Web應(yīng)用中使用,最有意義的是,Hibernate它能夠在應(yīng)用EJB的J2EE架構(gòu)中取代CMP,來(lái)完成數(shù)據(jù)持久化的重任[15]。2.5.2hibernate核心接口Session接口它是負(fù)責(zé)執(zhí)行被持久化對(duì)象的CRUD操作<CRUD的任務(wù)是完成與數(shù)據(jù)庫(kù)的交流,包含了許多常見(jiàn)的SQL語(yǔ)句>。但是,需要注意的是Session對(duì)象是非線程安全的。并且Hibernate中的session不同于JSP應(yīng)用中的HttpSession[16]。這里當(dāng)使用session這個(gè)術(shù)語(yǔ)時(shí),其實(shí)指的是Hibernate中的session,在以后會(huì)將HttpSession對(duì)象稱(chēng)為用戶session。SessionFactory接口它是負(fù)責(zé)初始化Hibernate的。它既可以充當(dāng)數(shù)據(jù)存儲(chǔ)源的代理,還負(fù)責(zé)創(chuàng)建Session對(duì)象。在這里還用到工廠模式。但需要注意的是SessionFactory它并不是輕量級(jí)的,因?yàn)橐话闱闆r下,一個(gè)項(xiàng)目通常只需要一個(gè)SessionFactory就夠,但是當(dāng)需要操作多個(gè)數(shù)據(jù)庫(kù)時(shí),可以為每個(gè)數(shù)據(jù)庫(kù)都指定一個(gè)SessionFactory。Configuration類(lèi)它是負(fù)責(zé)配置并啟動(dòng)Hibernate的,創(chuàng)建SessionFactory對(duì)象的。在Hibernate的啟動(dòng)過(guò)程中,Configuration類(lèi)的實(shí)例它先定位映射文檔位置、讀取配置,然后創(chuàng)建SessionFactory這個(gè)對(duì)象[17]。Transaction接口它是負(fù)責(zé)事務(wù)的相關(guān)操作。它是可選的,同時(shí)開(kāi)發(fā)人員也可以設(shè)計(jì)編寫(xiě)自己的底層事務(wù)處理代碼[18]。需求分析3.1網(wǎng)上訂餐需求分析3.1.1功能需求分析本系統(tǒng)主要是實(shí)現(xiàn)網(wǎng)上瀏覽菜單、訂餐、產(chǎn)生訂單等功能的系統(tǒng)。需要實(shí)現(xiàn)菜品信息的提示、購(gòu)物車(chē)管理、客戶信息注冊(cè)、登錄管理、訂單處理和信息反饋等容。需要完成的主要任務(wù)如下:當(dāng)客戶進(jìn)入網(wǎng)上訂餐時(shí),應(yīng)該在訂餐頁(yè)面中顯示相應(yīng)的菜品信息,來(lái)供客戶去選擇所需要的菜品,同時(shí)還提供按菜品名稱(chēng),快速查詢(xún)所需要菜品信息的功能。當(dāng)客戶選擇預(yù)定某個(gè)菜品時(shí),應(yīng)該能夠?qū)?duì)應(yīng)菜品信息,如:價(jià)格、數(shù)量記錄到對(duì)應(yīng)的購(gòu)物車(chē)中,此時(shí)客戶可以選擇選擇其他菜品或是查看自己的購(gòu)物車(chē),最后,在購(gòu)物車(chē)中填下相應(yīng)的送餐信息,提交訂餐的訂單后,自動(dòng)清除以生成訂單的購(gòu)物車(chē)中的信息。餐廳服務(wù)人員根據(jù)訂單信息,查看詳細(xì)訂單明細(xì)并根據(jù)實(shí)際情況處理訂餐。分析網(wǎng)上訂餐系統(tǒng),制訂整個(gè)系統(tǒng)框架如圖3-1:圖3-1系統(tǒng)整體框架圖目前,用于需求建模的方法有很多,最常見(jiàn)的是包括數(shù)據(jù)流圖<DFD>、實(shí)體關(guān)系圖<ERD>和UML三種方式。UML〔統(tǒng)模語(yǔ)言是一種建模語(yǔ)言,它的特點(diǎn)是良好的定義、表達(dá)能力突出、具有多重功能。軟件工程中的一些方法和技術(shù)也都應(yīng)用在其中。從軟件需求分析開(kāi)始就有了很多的應(yīng)用,并且貫穿始終。本系統(tǒng)使用UML中的用例圖、活動(dòng)圖、狀態(tài)圖來(lái)對(duì)需求建模。代碼的編寫(xiě)是以最終的類(lèi)圖和對(duì)類(lèi)圖的補(bǔ)充說(shuō)明文檔為基礎(chǔ)的。通常都是先畫(huà)用例圖和分析用例。然后把用例圖中的actor去除,其余的名詞中的大多就是類(lèi)了,再根據(jù)具體情況斟酌就可以畫(huà)類(lèi)圖。類(lèi)圖并非一下子畫(huà)完的,可以在一開(kāi)始先畫(huà)出一些必要的成員變量和成員函數(shù),再分析業(yè)務(wù)邏輯,并且可以開(kāi)始畫(huà)狀態(tài)圖、活動(dòng)圖和協(xié)作圖、順序圖,在畫(huà)這些圖的時(shí)候?qū)I(yè)務(wù)邏輯就會(huì)有更多的認(rèn)識(shí)。但這時(shí)也會(huì)發(fā)現(xiàn)類(lèi)圖中的一些漏洞,然后再去補(bǔ)充類(lèi)圖。3.2系統(tǒng)架構(gòu)分析本網(wǎng)上訂餐系統(tǒng)采用了B/S架構(gòu)的設(shè)計(jì)體系,B/S結(jié)構(gòu)相對(duì)于傳統(tǒng)的C/S結(jié)構(gòu),它的這種結(jié)構(gòu)能使得數(shù)據(jù)只有結(jié)果集在瀏覽器中顯示,數(shù)據(jù)的處理在服務(wù)器中進(jìn)行,然后用戶就不用安裝客戶端了,而且因?yàn)橥ㄟ^(guò)服務(wù)器端統(tǒng)一管理數(shù)據(jù),很大程度降低了開(kāi)發(fā)WEB應(yīng)用的難度;易于保證數(shù)據(jù)的一致性。B/S模式的三層模型:第一層表示層。用戶接口部分它就是數(shù)據(jù)的表示層,會(huì)把用戶和系統(tǒng)連接起來(lái)傳遞信息。它能夠?qū)崿F(xiàn)對(duì)輸入的數(shù)據(jù)進(jìn)行檢查和對(duì)外輸出的數(shù)據(jù)的功能,以便顯示出來(lái)。當(dāng)某個(gè)Web瀏覽器需要獲取資源,對(duì)一個(gè)服務(wù)器要申請(qǐng)服務(wù)時(shí),服務(wù)器會(huì)在驗(yàn)證了用戶信息以后,把所需的文件資料都傳送給客戶端,其采用的是HTTP協(xié)議傳送,文件資料就能夠被用戶接收了并且可以顯示在瀏覽器上。第二層事務(wù)邏輯層。事務(wù)邏輯層是應(yīng)用的主體,它也可以被叫做功能層,業(yè)務(wù)處理程序基本上都是在這一層中。統(tǒng)計(jì)、匯總、分析、打印功能等等這些功能都是在功能層。申請(qǐng)的方式是通過(guò)SQL向數(shù)據(jù)庫(kù)來(lái)進(jìn)行操作,根據(jù)具體的需求和用戶的特殊要求,來(lái)程序使用數(shù)據(jù)庫(kù)中的數(shù)據(jù),處理之后的數(shù)據(jù)會(huì)從數(shù)據(jù)服務(wù)器轉(zhuǎn)到web上的服務(wù)器,最后客戶端從web服務(wù)器上得到數(shù)據(jù)。第三層數(shù)據(jù)庫(kù)層。數(shù)據(jù)庫(kù)層是由兩部分組成,一部分是數(shù)據(jù)庫(kù)管理系統(tǒng),另一部分是數(shù)據(jù)庫(kù),各個(gè)部分獨(dú)自處理它的任務(wù),任務(wù)是它對(duì)數(shù)據(jù)庫(kù)進(jìn)行處理,對(duì)數(shù)據(jù)庫(kù)的操作,例如增刪改查等,web服務(wù)器能夠獲取最后的結(jié)果。負(fù)責(zé)管理其數(shù)據(jù)庫(kù)的事數(shù)據(jù)庫(kù)管理系統(tǒng),提供給應(yīng)用程序各種各樣的服務(wù),數(shù)據(jù)庫(kù)管理系統(tǒng)處在數(shù)據(jù)庫(kù)服務(wù)器端[18]。3.3可行性分析隨著中國(guó)人民的物質(zhì)、精神和文化水平的不斷提高,人們已不再僅是停留在吃飽的程度,而是不但要吃飽,更要吃好,并且越來(lái)越挑刺。正是基于此目的,網(wǎng)上訂餐業(yè)務(wù)的出現(xiàn),迎合了這些人的需求,他們不但省去了自己做飯的麻煩,還能尋找和發(fā)現(xiàn)新的菜品,品嘗不同風(fēng)格及不同種類(lèi)的菜品。網(wǎng)上訂餐業(yè)務(wù)在中國(guó)有著良好的發(fā)展空間和不錯(cuò)的發(fā)展前景。綜上,我們決定利用JAVA和MySQL來(lái)設(shè)計(jì)網(wǎng)上訂餐系統(tǒng)。JAVA可以創(chuàng)建與運(yùn)用動(dòng)態(tài)、交互的WEB服務(wù)器應(yīng)用程序。MySQL是一個(gè)杰出的數(shù)據(jù)庫(kù)平臺(tái),具有功能強(qiáng)大,安全可靠等特點(diǎn),可用于大型聯(lián)機(jī)事務(wù)處理、數(shù)據(jù)倉(cāng)庫(kù)及電子商務(wù)等[19]。系統(tǒng)設(shè)計(jì)4.1系統(tǒng)設(shè)計(jì)目標(biāo)4.1.1系統(tǒng)安全性對(duì)于不同的用戶有著不同的權(quán)限,系統(tǒng)對(duì)于他們有良好的區(qū)分。同時(shí)保證了數(shù)據(jù)的安全性。可靠準(zhǔn)確的數(shù)據(jù)、可恢復(fù)性的系統(tǒng)都是必須的。4.1.2可維護(hù)性在使用系統(tǒng)的過(guò)程中,會(huì)碰到很多新的要求,有時(shí)候還要對(duì)新的容進(jìn)行擴(kuò)充,因此在設(shè)計(jì)系統(tǒng)時(shí)一定要考慮到,設(shè)計(jì)出來(lái)的系統(tǒng)是否能滿足實(shí)際的應(yīng)用,并能隨時(shí)添加新的功能。管理員會(huì)不定時(shí)對(duì)系統(tǒng)進(jìn)行更新,如新功能的開(kāi)發(fā)和數(shù)據(jù)的維護(hù)等。4.1.3用戶操作設(shè)計(jì)的目標(biāo)中應(yīng)該有能夠使用戶使用方便,操作簡(jiǎn)潔明了,這樣才能更好讓系統(tǒng)發(fā)揮其的作用。本系統(tǒng)中對(duì)用戶有著很明確的操作指示,我們可以在網(wǎng)頁(yè)中瀏覽系統(tǒng)并為用戶提供給的任何服務(wù),例如查看菜品信息,個(gè)人信息,密碼修改以及個(gè)人發(fā)表的信息等。4.1.4運(yùn)行速度系統(tǒng)響應(yīng)時(shí)間對(duì)于系統(tǒng)是至關(guān)重要。想到每位用戶都不喜歡傳統(tǒng)訂餐方式等待的長(zhǎng)遠(yuǎn)時(shí)間,后臺(tái)會(huì)不斷提高系統(tǒng)的運(yùn)行速度,來(lái)爭(zhēng)取在第一時(shí)間滿足用戶的訂餐需求。對(duì)于管理員,需要注意的是在提高響應(yīng)時(shí)間的時(shí)候,務(wù)必不能忘記系統(tǒng)的安全性。系統(tǒng)的速度,主要與瀏覽器與服務(wù)器之間的網(wǎng)絡(luò)通信速度以及服務(wù)器在處理事務(wù)時(shí)的運(yùn)行速度。對(duì)此,應(yīng)該選擇網(wǎng)絡(luò)連接更加快速,子較少的優(yōu)質(zhì)線路對(duì)服務(wù)器線路進(jìn)行鋪設(shè),其次是在編程過(guò)程中減少對(duì)數(shù)據(jù)庫(kù)的訪問(wèn),加快訪問(wèn)速度,事務(wù)處理邏輯更加合理化,減少不必要的計(jì)算冗余。4.1.5界面人和機(jī)器的互動(dòng)過(guò)程<HumanMachineInteraction>中,有一個(gè)層面,即我們所說(shuō)的界面<interface>。用戶界面設(shè)計(jì)是屏幕產(chǎn)品的重要組成部分。界面設(shè)計(jì)是一個(gè)復(fù)雜的有不同學(xué)科參與的工程,認(rèn)知心理學(xué)、設(shè)計(jì)學(xué)、語(yǔ)言學(xué)等在此都扮演著重要的角色。用戶界面是用戶與程序溝通的唯一途徑,要能為用戶提供方便有效的服務(wù)。

用戶界面設(shè)計(jì)的三大原則是:置界面于用戶的控制之下、減少用戶的記憶負(fù)擔(dān)、保持界面的一致性。詳細(xì)說(shuō)來(lái)有以下幾點(diǎn)。1.簡(jiǎn)易性界面的簡(jiǎn)潔是要讓用戶便于使用、便于了解、并能減少用戶發(fā)生錯(cuò)誤選擇的可能性。2.用戶語(yǔ)言界面中要使用能反應(yīng)用戶本身的語(yǔ)言,而不是游戲設(shè)計(jì)者的語(yǔ)言。3.記憶負(fù)擔(dān)最小化人腦不是電腦,在設(shè)計(jì)界面時(shí)必須要考慮人類(lèi)大腦處理信息的限度。人類(lèi)的短期記憶極不穩(wěn)定、有限,24小時(shí)存在25%的遺忘率。所以對(duì)用戶來(lái)說(shuō),瀏覽信息要比記憶更容易。4.一致性是每一個(gè)優(yōu)秀界面都具備的特點(diǎn)。界面的結(jié)構(gòu)必須清晰且一致,風(fēng)格必須與游戲容相一致。5.清楚在視覺(jué)效果上便于理解和使用。4.2用戶類(lèi)別功能設(shè)計(jì)4.2.1訂餐用戶功能圖4-1訂餐用戶功能圖4.2.2餐館管理員功能圖4-2餐館管理員功能圖4.3總體設(shè)計(jì)4.3.1用戶登錄圖4-3用戶登錄流程圖用戶登錄實(shí)現(xiàn)為本注冊(cè)用戶提供身份確認(rèn)的功能,保證合法用戶的應(yīng)有權(quán)益。而且是否登錄也將決定用戶能否訂餐。用戶登錄的前置條件是在登錄前,用戶必須完成"注冊(cè)"。流程如下:進(jìn)入首頁(yè)之后,會(huì)看到一個(gè)登陸頁(yè)面,只有在注冊(cè)之后才能使用本系統(tǒng),注冊(cè)之后,后臺(tái)會(huì)收到相關(guān)信息,只有用戶名和密碼正確才能登陸成功。4.3.2訂餐服務(wù)圖4-4訂餐服務(wù)流程圖在訂餐服務(wù)用例中,每個(gè)用戶都有個(gè)購(gòu)物車(chē),用戶可以將自己選定的菜品及其數(shù)量放入到購(gòu)物車(chē)中,并且隨時(shí)可以查看自己預(yù)定的菜品的數(shù)量和總價(jià)格。本用例開(kāi)始前用戶必須登錄到系統(tǒng)中。如果用例成功,顧客可以瀏覽自己購(gòu)物車(chē)中的信息并決定是購(gòu)買(mǎi)還是刪除。4.3.3訂餐處理圖4-5訂單處理流程圖當(dāng)用戶提交已訂的菜單或想取消已訂的菜單時(shí),都會(huì)在前臺(tái)自動(dòng)生成;處理訂單的過(guò)程是訂餐管理人員參與的,當(dāng)前臺(tái)有新的訂單生成時(shí),會(huì)自動(dòng)在后臺(tái)的現(xiàn)有訂單列表中顯示出來(lái),訂餐管理人員可以點(diǎn)擊查看未處理的訂單,根據(jù)實(shí)際情況進(jìn)行處理,或者刪除不需要的訂單記錄。具體流程如下:對(duì)于用戶,在生成訂單之前,可以隨意瀏覽菜單信息,并選擇是否訂購(gòu)及提交之前是否刪除;對(duì)于管理員,可以查看用戶生成的訂單信息,并在確認(rèn)用戶收到所訂購(gòu)的菜之后,有權(quán)刪除該用戶的訂單。之前已經(jīng)完成需求分析,現(xiàn)在需要進(jìn)行概念設(shè)計(jì)、邏輯設(shè)計(jì)和物理設(shè)計(jì),本章將敘述這三個(gè)階段的設(shè)計(jì)思路和設(shè)計(jì)過(guò)程。4.4數(shù)據(jù)庫(kù)設(shè)計(jì)4.4.1數(shù)據(jù)庫(kù)設(shè)計(jì)概述概要設(shè)計(jì)的主要任務(wù)是把需求分析得到的DFD轉(zhuǎn)換為數(shù)據(jù)和軟件結(jié)構(gòu)。軟件結(jié)構(gòu)在設(shè)計(jì)時(shí)需要完成的任務(wù)是:把按功能的不同模塊劃分、確立層次結(jié)構(gòu)及相互調(diào)用、接口與人機(jī)間的聯(lián)系。數(shù)據(jù)的結(jié)構(gòu)特性的確定、數(shù)據(jù)特征的全部描述和數(shù)據(jù)庫(kù)的詳細(xì)設(shè)計(jì)。顯然,經(jīng)過(guò)概要設(shè)計(jì)之后,就建立了一個(gè)系統(tǒng)的邏輯模型,該模型不受具體的計(jì)算機(jī)影響[20]。4.4.2數(shù)據(jù)庫(kù)表的設(shè)計(jì)數(shù)據(jù)庫(kù)的主要表詳細(xì)結(jié)構(gòu)如下:表4-1用戶表:user字段名類(lèi)型說(shuō)明useridInt<11>用戶iduemailVarchar<32>用戶UnameVarchar<32>用戶名UpswdVarhar〔32用戶密碼UphoneInt<11>用戶isConfirmTinyint<4>系統(tǒng)管理員權(quán)限表4-2餐館表:restaurant字段名類(lèi)型說(shuō)明RidInt<11>餐館idRpswdVarchar<32>餐館登陸密碼RseatVarchar<128>餐館地址RitemVarhar〔128餐館特色RphoneVarchar〔32餐館RstartmoneyFloat〔8起送金額RsendmoneyFloat〔8送餐金額Rstatuetinyint<4>餐館狀態(tài)RstyleTinyint〔4餐館類(lèi)型RnameChar〔128餐館名稱(chēng)表4-3菜系表 :cookstyle字段名類(lèi)型說(shuō)明csidInt<11>菜系idRidInt<11>關(guān)聯(lián)餐館DnameVarchar<128>菜系名稱(chēng)表4-4菜品表 :dishes字段名類(lèi)型說(shuō)明didInt<11>菜品idRidInt<11>關(guān)聯(lián)餐館DnameVarchar<128>菜品名稱(chēng)DmoneyFloat〔8菜品價(jià)格CsidInt〔11關(guān)聯(lián)菜系表表4-5評(píng)價(jià)表:discuss字段名類(lèi)型說(shuō)明DisidInt<11>評(píng)價(jià)idRidInt<11>關(guān)聯(lián)餐館UseridInt〔11關(guān)聯(lián)用戶表DiscontentText評(píng)論容TastenumberTinyint口味得分ServicenumberTinyint服務(wù)得分SpicenumberTinyint速度得分DistimeDatetime評(píng)論時(shí)間表4-6回復(fù)評(píng)論表:redis字段名類(lèi)型說(shuō)明RedisidInt<11>回復(fù)評(píng)論idDisidInt<11>關(guān)聯(lián)評(píng)論表RediscontentText回復(fù)評(píng)論容表4-7公告表:notice字段名類(lèi)型說(shuō)明NidInt<11>公告idTitleChar〔128標(biāo)題NcontentText公告容NtimeDatetime發(fā)布時(shí)間表4-8送餐時(shí)間表:sendtime字段名類(lèi)型說(shuō)明SidInt<11>送餐時(shí)間idRidInt<11>關(guān)聯(lián)餐館SstartTime送餐起始時(shí)間SsendTime送餐結(jié)束時(shí)間表4-9訂餐時(shí)間表:pretime字段名類(lèi)型說(shuō)明pidInt<11>訂餐時(shí)間idRidInt<11>關(guān)聯(lián)餐館pstartTime訂餐起始時(shí)間psendTime訂餐結(jié)束時(shí)間表4-10訂單表:orderform字段名類(lèi)型說(shuō)明oridInt<11>訂單idUseridInt<11>關(guān)聯(lián)用戶OrtimeTime下單時(shí)間OrstatueTinyint訂單狀態(tài)FormChar〔129訂過(guò)的餐廳表4-11訂餐者信息表:tb字段名類(lèi)型說(shuō)明TbidInt<11>信息idTbnameVarchar訂餐者TbtelVarchar訂餐者TbaddressVarchar送餐地址MytimeSmallint是否定時(shí)送餐DdltimeVarchar送餐時(shí)間TbremarkText訂餐者備注OridInt關(guān)聯(lián)訂單表表4-12訂單項(xiàng)表:formitem字段名類(lèi)型說(shuō)明FidInt<11>訂單項(xiàng)idDidInt<11>關(guān)聯(lián)菜品表OridInt〔11關(guān)聯(lián)訂單4.4.5數(shù)據(jù)庫(kù)模型數(shù)據(jù)庫(kù)各表關(guān)聯(lián)關(guān)系圖4-6所示:圖4-6數(shù)據(jù)庫(kù)模型圖系統(tǒng)實(shí)現(xiàn)5.1登陸和注冊(cè)首頁(yè)為url為"/index",處理方法為IndexAction中Index<>,如圖5-1所示:圖5-1首頁(yè)展示圖非登錄用戶在之瀏覽飯店以及飯店菜品信息,但還無(wú)法訂餐網(wǎng)上訂餐服務(wù)只有登陸以后才能進(jìn)行,這樣確保了訂餐服務(wù)的有效性,避免預(yù)定后,不履行訂單的惡意行為。5.2菜單信息瀏覽在菜單信息中,可以直接瀏覽到全部的菜單信息,信息包括了:菜名,價(jià)格等。在該網(wǎng)頁(yè)上也可以查看菜品的詳細(xì)信息。如圖5-2所示:圖5-2訂餐界面圖當(dāng)用戶點(diǎn)擊訂購(gòu)若還沒(méi)有登錄,則跳轉(zhuǎn)到登陸頁(yè)面,若已登錄。在右側(cè)會(huì)有小購(gòu)物車(chē)提示用戶,如圖5-3所示:圖5-3購(gòu)物籃圖〔此購(gòu)物車(chē)在未登錄狀態(tài)時(shí)是不顯示的點(diǎn)擊確認(rèn)可以進(jìn)入購(gòu)物車(chē)進(jìn)行訂單的最后處理,點(diǎn)擊清除,可以消除已經(jīng)訂購(gòu)的菜品5.3訂餐服務(wù)當(dāng)用戶進(jìn)行訂餐時(shí),系統(tǒng)為用戶生成了一個(gè)虛擬的購(gòu)物車(chē),在用戶瀏覽詳細(xì)的菜單信息時(shí),將此菜品放入購(gòu)物車(chē)中。在訂餐過(guò)程中,用戶可以查看自己購(gòu)物車(chē)中選購(gòu)的菜品和金額,根據(jù)自己的需要可以清空購(gòu)物車(chē)中的菜品,還可以選擇繼續(xù)訂餐,在查看購(gòu)物車(chē)時(shí)填入相關(guān)送餐信息,點(diǎn)擊"提交訂單",完成了整個(gè)訂餐流程。5.4用戶反饋用戶可以給飯店進(jìn)行評(píng)論和評(píng)分,如圖5-4所示:圖5-4用戶信息反饋圖5.5訂單處理用戶下單后,可以在我的賬戶中查看訂單,并對(duì)未完成的訂單做完成處理,如圖5-5所示:圖5-5訂單確認(rèn)圖5.6餐館信息管理餐館管理員需要登錄后才能進(jìn)入餐館后臺(tái)管理。餐館登陸成功后會(huì)跳轉(zhuǎn)至餐館管理頁(yè)面,如圖5-6所示:圖5-6餐館信息管理圖這里可以對(duì)餐館中的信息進(jìn)行操作例如對(duì)菜品的增加等點(diǎn)擊訂單產(chǎn)看連接可以看到已下單的菜單,這個(gè)菜單包含本店需要做的菜品并有送餐地址,點(diǎn)擊確認(rèn)訂單后,將不再顯示在此訂單表中。5.7程序相關(guān)程序?yàn)榻档婉詈隙?采用多層銜接,其中action調(diào)用service,service調(diào)用dao.impl,dao.impl實(shí)現(xiàn)dao,dao中定義對(duì)model的操作。如圖5-7所示:圖5-7程序構(gòu)架圖Action:包中包含了所有的action類(lèi)Dao:包含事務(wù)處理的接口Dao.impl:dao的實(shí)現(xiàn)類(lèi)Model:包含實(shí)體類(lèi)Service:調(diào)用Dao.impl降低耦合,能更好得實(shí)現(xiàn)系統(tǒng)的延展與維護(hù)Util:包含一些用到的工具類(lèi),例如中文編碼設(shè)置.結(jié)論該課題是利用J2EE技術(shù),它是基于B/S模式開(kāi)發(fā)實(shí)現(xiàn)的網(wǎng)上訂餐系統(tǒng),在分析、研究網(wǎng)上訂餐課題的基礎(chǔ)上,對(duì)系統(tǒng)的組織結(jié)構(gòu)、數(shù)據(jù)流程、用戶需求等容都進(jìn)行了詳細(xì)的調(diào)查分析。在設(shè)計(jì)的過(guò)程中

溫馨提示

  • 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ù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論