外賣(mài)平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)_第1頁(yè)
外賣(mài)平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)_第2頁(yè)
外賣(mài)平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)_第3頁(yè)
外賣(mài)平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)_第4頁(yè)
外賣(mài)平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)_第5頁(yè)
已閱讀5頁(yè),還剩58頁(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)介

第1章緒論萬(wàn)物互聯(lián),人們開(kāi)始進(jìn)入了信息化的時(shí)代。在這個(gè)信息化的時(shí)代,人類正在進(jìn)行著前所未有的信息變革,網(wǎng)絡(luò)普及度越來(lái)越廣,網(wǎng)絡(luò)速度越來(lái)越快,互聯(lián)網(wǎng)作為世界上覆蓋面積最大,規(guī)模最廣,資源最豐富的計(jì)算機(jī)網(wǎng)絡(luò)而存在著。在這個(gè)網(wǎng)絡(luò)普及的時(shí)代,人們?cè)谧陨砩钏讲粩嗵岣叩那闆r下,并且不斷追求高效率的生活方式。本畢業(yè)設(shè)計(jì)采用JSP動(dòng)態(tài)開(kāi)發(fā)模式,將主要功能分為一個(gè)單元模塊然后存入數(shù)據(jù)庫(kù)中,利用動(dòng)態(tài)網(wǎng)頁(yè)生成主要的網(wǎng)頁(yè)信息。這種開(kāi)發(fā)形式不僅效率高,而且節(jié)省了大量的人力物力,同時(shí)節(jié)省開(kāi)發(fā)時(shí)間。在后期的維護(hù)中,可以根據(jù)不同功能的需要找到對(duì)應(yīng)的界面與功能模塊進(jìn)行維護(hù)修改。在整個(gè)軟件過(guò)程中,在前期的背景調(diào)查與技術(shù)準(zhǔn)備上做足了充分的準(zhǔn)備,在需求分析與詳細(xì)設(shè)計(jì)階段,積極向老師請(qǐng)教,完善該模塊中的細(xì)節(jié)章節(jié)。因?yàn)榍捌诠ぷ鳒?zhǔn)備充分,在項(xiàng)目實(shí)現(xiàn)階段遇到的大部分問(wèn)題迎刃而解,最后在測(cè)試階段進(jìn)行了系統(tǒng)周密的測(cè)試。1.1選題的依據(jù)及意義信息技術(shù)不斷的發(fā)展,給我們帶來(lái)機(jī)遇的同時(shí),傳統(tǒng)的餐飲服務(wù)行業(yè)也面臨著非常嚴(yán)峻的挑戰(zhàn)。因?yàn)?,在這個(gè)開(kāi)放式的互聯(lián)網(wǎng)環(huán)境下,傳統(tǒng)的訂餐服務(wù)是以資金運(yùn)動(dòng)為對(duì)象的管理模式,這就使得傳統(tǒng)餐飲業(yè)存在很多弊端同時(shí)也存在許多局限性,在當(dāng)前的開(kāi)放的環(huán)境下,已經(jīng)很難再滿足企業(yè)經(jīng)營(yíng)管理的各種需求,可以說(shuō),傳統(tǒng)的訂餐信息管理模式,不僅不能適應(yīng)企業(yè)的長(zhǎng)遠(yuǎn)發(fā)展,也不能適應(yīng)當(dāng)前社會(huì)發(fā)展新形勢(shì)對(duì)企業(yè)的要求。在互聯(lián)網(wǎng)快速發(fā)展的今天,互聯(lián)網(wǎng)技術(shù)在人們的衣食住行等各個(gè)方面被廣泛的應(yīng)用。正是因?yàn)榛ヂ?lián)網(wǎng)技術(shù)的不斷發(fā)展壯大,現(xiàn)如今各個(gè)行業(yè)中都在轉(zhuǎn)型,傳統(tǒng)的模式被新的時(shí)代所取代?;ヂ?lián)網(wǎng)技術(shù)給人們帶了極大的方便與便捷,讓人們的衣食住行發(fā)生了很大的變化。例如,購(gòu)物方式,出行方式,旅游住宿等各個(gè)方面。外賣(mài)這個(gè)詞語(yǔ)我想大家都不陌生,隨著互聯(lián)網(wǎng)的不斷成熟發(fā)展外賣(mài)正逐漸被人們所接受,在這個(gè)到處都是互聯(lián)網(wǎng)的世界里,我們只有在在應(yīng)用上不斷創(chuàng)新,才能擁有掌握未來(lái)方向的權(quán)利,我們才有權(quán)利去把握行業(yè)中的機(jī)遇,成為這個(gè)時(shí)代的先驅(qū)楷模。社會(huì)是不斷進(jìn)步的,時(shí)代是不斷發(fā)展的,網(wǎng)絡(luò)訂餐終將成為人們生活密不可分的一部分。傳統(tǒng)的銷售模式,在實(shí)體店的緊跟式的銷售模式,會(huì)給消費(fèi)者一種不自由,被監(jiān)視的感覺(jué)?;贘AVA的網(wǎng)上訂餐系統(tǒng)系統(tǒng),緊跟數(shù)據(jù)時(shí)代的步伐,使用JAVA開(kāi)發(fā)語(yǔ)言,配備MySQL數(shù)據(jù)庫(kù)。扎根于實(shí)際問(wèn)題所開(kāi)發(fā)出來(lái)的一套系統(tǒng)。這個(gè)系統(tǒng)的使得人們足不出戶,只需要一部電子設(shè)備就可以輕松的在線購(gòu)物,給人們帶來(lái)輕松感與愉悅感?;贘AVA的網(wǎng)上訂餐系統(tǒng)系統(tǒng)是根據(jù)實(shí)際生活中的購(gòu)物需求,并用科學(xué)的分析方法,加上計(jì)算機(jī)語(yǔ)言的設(shè)計(jì)與實(shí)現(xiàn),一步步最終成型。系統(tǒng)是基于開(kāi)發(fā)中常用的B/S架構(gòu)模式,將JSP技術(shù)和JAVA作為主要語(yǔ)言,利用MySQL數(shù)據(jù)庫(kù),以及MyEclipse10.0為開(kāi)發(fā)環(huán)境。根據(jù)科學(xué)的需求分析設(shè)計(jì)出符合邏輯與需求的功能。并且具有系統(tǒng)界面友好,功能齊全,人機(jī)交匯簡(jiǎn)單高效的特點(diǎn)。1.2國(guó)內(nèi)外現(xiàn)狀研究“互聯(lián)網(wǎng)+”的興起,萬(wàn)物互聯(lián)。這是一個(gè)數(shù)字化的時(shí)代,這個(gè)時(shí)代為各個(gè)行業(yè)帶了新鮮的血液,各個(gè)行業(yè)也在積極轉(zhuǎn)型。在訂餐行業(yè),多數(shù)品牌都有自己的實(shí)體店與網(wǎng)店,這是一個(gè)很好的銷售途徑。實(shí)體店交易感覺(jué)讓人更加放心,因?yàn)槟憧梢援?dāng)場(chǎng)就可以看到你想訂購(gòu)的餐品,但是價(jià)格有時(shí)很貴。網(wǎng)店交易效率高,足不出戶就可以完成采購(gòu),價(jià)格也透明,同行業(yè)中會(huì)有一個(gè)價(jià)格線,并且優(yōu)惠力度大,現(xiàn)在的產(chǎn)品也有正品保證,解決用戶不信任的心理。實(shí)體店與網(wǎng)店各有各自的好處,但是現(xiàn)在是一個(gè)信息化,電商發(fā)達(dá)的年代。網(wǎng)上交易的優(yōu)勢(shì)被現(xiàn)在的整體氛圍推到了一個(gè)很有優(yōu)勢(shì)的點(diǎn)上。而實(shí)體店變得更像是選擇、瀏覽商品的地方。多功能的網(wǎng)上訂餐服務(wù),可以使消費(fèi)者從容的在本網(wǎng)站瀏覽網(wǎng)站中不同餐館的菜單,對(duì)價(jià)格進(jìn)行對(duì)比,從而選擇性價(jià)比最優(yōu)質(zhì)的美味佳肴。目前據(jù)有關(guān)部門(mén)調(diào)查,通過(guò)網(wǎng)絡(luò)商家提供外賣(mài)送餐服務(wù)使得商家營(yíng)業(yè)額得到了大幅度提升。國(guó)外的餐飲消費(fèi)者越來(lái)越趨向于通過(guò)網(wǎng)絡(luò)購(gòu)買(mǎi)食物這種新的就餐形式,這類消費(fèi)者中一半以上來(lái)自年輕一代。特別是現(xiàn)在新冠肺炎疫情的關(guān)鍵時(shí)期網(wǎng)絡(luò)訂餐變成了人們的首選,這樣減少了人與人之間的接觸,避免人們聚集導(dǎo)致疫情無(wú)法控制。如今的計(jì)算機(jī)言語(yǔ)已經(jīng)成熟,技術(shù)層次沒(méi)有任何的問(wèn)題。JSP與Java在開(kāi)發(fā)語(yǔ)言上唄廣泛使用,數(shù)據(jù)庫(kù)現(xiàn)階段也已經(jīng)成熟,硬件方面現(xiàn)在計(jì)算機(jī)的運(yùn)行內(nèi)存與硬盤(pán)內(nèi)存大的驚人,應(yīng)用在開(kāi)發(fā)軟件方面沒(méi)有任何問(wèn)題,所以為我們開(kāi)發(fā)提供了一個(gè)良好的軟硬件的支持。所以外賣(mài)平臺(tái)系統(tǒng)前景非常廣闊,不僅方便了人們就餐同時(shí)也方便了商家銷售的需求。1.3研究目的這次畢業(yè)項(xiàng)目研究的主要目的是根據(jù)分析現(xiàn)在的經(jīng)濟(jì)大環(huán)境,經(jīng)過(guò)科學(xué)系統(tǒng)的需求分析得出一個(gè)準(zhǔn)確的需求,然后加上成熟的開(kāi)發(fā)技術(shù),最終實(shí)現(xiàn)系統(tǒng)的功能。同時(shí),也對(duì)電商式的銷售與實(shí)體店的直銷進(jìn)行了比較,類別對(duì)比兩種途徑的優(yōu)缺點(diǎn)。得出一個(gè)商家真正需要的系統(tǒng)。網(wǎng)上訂餐系統(tǒng)的優(yōu)點(diǎn)有:價(jià)格優(yōu)勢(shì)。線上銷售不定期的推送各種優(yōu)惠券,來(lái)達(dá)到刺激消費(fèi)的效果,同時(shí)還不會(huì)產(chǎn)生其他費(fèi)用,這樣商鋪在價(jià)格上就存在一定的優(yōu)勢(shì),從而增加經(jīng)營(yíng)者的營(yíng)業(yè)額,提高收入水平。操作簡(jiǎn)單。人們只需要一臺(tái)電腦或者一部手機(jī),就可以無(wú)需走出家門(mén),隨時(shí)隨地打開(kāi)網(wǎng)站或者平臺(tái)購(gòu)買(mǎi)商品,提高了整體購(gòu)買(mǎi)的效率,并且客戶感覺(jué)十分方便。方便管理,系統(tǒng)根據(jù)登陸者角色的不同設(shè)置的賬號(hào)也不相同,不同的角色,擁有的權(quán)限和功能也不盡相同,舉個(gè)例子作為商家我們可以在系統(tǒng)中銷售自己的菜品,作為客戶可以選擇購(gòu)買(mǎi)商品,作為管理員可以管理系統(tǒng)查看客戶訂單,審核后臺(tái)等操作。成本低。不需要支付商鋪的租金以及銷售專員的費(fèi)用,節(jié)省了一部分費(fèi)用;同時(shí)人們也可以足不出戶就可以在網(wǎng)絡(luò)上購(gòu)買(mǎi)自己所需要的食物,節(jié)省了時(shí)間也節(jié)省了在路上的消費(fèi)。不受地域限制。因?yàn)榫W(wǎng)店的顧客來(lái)源很廣闊,而且不受地域的限制,可以有效的增加自己的市場(chǎng),同時(shí)可以起到了營(yíng)銷的作用,提高了自己品牌在市場(chǎng)上的知名度。減少接觸。特別是在現(xiàn)在疫情嚴(yán)重的時(shí)期,應(yīng)該避免人與人之間的接觸,盡可能的控制疫情的傳播,作為新時(shí)代的大學(xué)生我們應(yīng)該盡量減少不必要。但是網(wǎng)上銷售也有缺點(diǎn)顧客看不到實(shí)際的餐品效果,往往人們不能很直觀的看到自己選擇的物品的真實(shí)效果,僅僅根據(jù)效果圖沒(méi)有面對(duì)面觀看的效果,常常會(huì)出現(xiàn)實(shí)物與圖片不符合的情況。另一方面,在運(yùn)輸?shù)倪^(guò)程中也會(huì)出現(xiàn)例如:運(yùn)輸中菜品涼了影響菜品的口感、運(yùn)輸中部分菜品會(huì)有湯水容易撒漏、運(yùn)輸人員無(wú)法準(zhǔn)時(shí)送出訂單等一系列的問(wèn)題??傊?,網(wǎng)上訂餐系統(tǒng)的前景還是清晰明朗的,但是需要我們?nèi)ゲ粩嗤晟乒δ?,努力探索,用?yōu)質(zhì)的產(chǎn)品和優(yōu)秀的服務(wù)在市場(chǎng)中探索。網(wǎng)上訂餐服務(wù)一定會(huì)是現(xiàn)在社會(huì)的一大趨勢(shì)。1.4設(shè)計(jì)思想本系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)以功能豐富,界面簡(jiǎn)潔明了,操作簡(jiǎn)單為原則。在整個(gè)系統(tǒng)的設(shè)計(jì)過(guò)程中,首先整理準(zhǔn)備好整個(gè)開(kāi)發(fā)過(guò)程中所要使用的計(jì)算機(jī)編程語(yǔ)言,然后使用科學(xué)的分析方法根據(jù)實(shí)際需求分析整個(gè)系統(tǒng)的可行性分析、需求分析、功能分析等一系列的分析,然后進(jìn)行系統(tǒng)的構(gòu)建,構(gòu)建完成后,進(jìn)入代碼的實(shí)現(xiàn)階段,然后進(jìn)入周密的軟件測(cè)試階段。在設(shè)計(jì)數(shù)據(jù)庫(kù)時(shí),使用的是SQLServer的開(kāi)源數(shù)據(jù)庫(kù)。首先搭建數(shù)據(jù)表,確定每一個(gè)表里面的屬性以及要求。等到表創(chuàng)建完成后在向里面插入數(shù)據(jù)。開(kāi)發(fā)工具使用的是MyEclipse,保證開(kāi)發(fā)速度與系統(tǒng)功能適用性主要技術(shù)和工具介紹一個(gè)系統(tǒng)的開(kāi)發(fā)必須要有開(kāi)發(fā)環(huán)境和工具的支持才可以。所以本章主要講述了在本系統(tǒng)開(kāi)發(fā)過(guò)程中所使用到的主要技術(shù)和工具,其中包括JavaEE框架技術(shù)、MyEclipse與Tomcat簡(jiǎn)介和SQLServer數(shù)據(jù)庫(kù)等內(nèi)容。2.1JavaEE技術(shù)JavaEE是以開(kāi)放、高標(biāo)準(zhǔn)為基礎(chǔ)的平臺(tái),開(kāi)發(fā)、部署、管理、web為對(duì)象的企業(yè)級(jí)應(yīng)用。2.2MyEclipse與Tomcat簡(jiǎn)介MyEclipse作為一款功能強(qiáng)大、操作簡(jiǎn)單的集成開(kāi)發(fā)環(huán)境,主要將其用于JAVA,JavaEE等,MyEclipse作為集成開(kāi)發(fā)環(huán)境它可以滿足對(duì)開(kāi)發(fā)的基本需求,也可以配合數(shù)據(jù)庫(kù)完成對(duì)一個(gè)完整項(xiàng)目的開(kāi)發(fā)。它對(duì)應(yīng)用程序進(jìn)行一個(gè)整合,其強(qiáng)大的性能大大提高了效率。在使用java語(yǔ)言開(kāi)發(fā)的過(guò)程中,MyEclipse是一個(gè)強(qiáng)大而優(yōu)秀的開(kāi)發(fā)環(huán)境。它擁有支持的語(yǔ)言十分廣泛,在開(kāi)發(fā)語(yǔ)言方面,比如C語(yǔ)言,Java語(yǔ)言。在結(jié)構(gòu)上,EE模型,作為WEB開(kāi)發(fā)工具,數(shù)據(jù)庫(kù)的服務(wù)等一系列的結(jié)構(gòu)或語(yǔ)言都是支持,十分強(qiáng)大;開(kāi)發(fā)者在開(kāi)發(fā)的過(guò)程中常常會(huì)遇到各種開(kāi)源工具不一致的情況,而MyEclipse提供了很多私有且開(kāi)放的集合,從而解決了這個(gè)問(wèn)題。開(kāi)放性,各種語(yǔ)言,各種項(xiàng)目都可以運(yùn)轉(zhuǎn),包括各種電腦系統(tǒng)都可以運(yùn)行;自身包含很多編輯器,解決很多問(wèn)題;效率高,對(duì)電腦機(jī)器的CPU消耗低等特點(diǎn)。Tomcat作為一個(gè)開(kāi)源的WEB應(yīng)用服務(wù)器,它在運(yùn)行時(shí)占用了很小的系統(tǒng)資源并且擴(kuò)展性良好。因此將Tomcat作為一個(gè)小項(xiàng)目的應(yīng)用服務(wù)器是再合適不過(guò)了。其工作原理主要是當(dāng)開(kāi)發(fā)者在一臺(tái)機(jī)器上配置好Apache服務(wù)器之后,開(kāi)發(fā)者可以通過(guò)它來(lái)對(duì)相應(yīng)的HTML頁(yè)面進(jìn)行訪問(wèn),而Tomcat運(yùn)行的JSP頁(yè)面是與Servlet相對(duì)應(yīng)進(jìn)行訪問(wèn)請(qǐng)求的。在本系統(tǒng)開(kāi)發(fā)的過(guò)程是在Tomcat6.0環(huán)境下編譯的。Tomcat的環(huán)境主要有以下幾方面技術(shù)優(yōu)勢(shì):Tomcat的最大優(yōu)點(diǎn)是它是開(kāi)源的。沒(méi)有必要掏錢(qián)來(lái)使用這種軟件。人們可以很容易地在互聯(lián)網(wǎng)上下載它,并配置它,并開(kāi)始使用它。Apache軟件基礎(chǔ)提供定期更新,使其與其他軟件版本兼容,并提供錯(cuò)誤修復(fù),從而使開(kāi)發(fā)人員更易于使用。Tomcat支持SSL(安全套接字層),因此可以使用SSL證書(shū)進(jìn)行配置,通過(guò)提供安全連接來(lái)保護(hù)敏感數(shù)據(jù)。Tomcat也可以配置為在不同的端口上運(yùn)行多個(gè)Web應(yīng)用程序。例如,它可以在8080、8081、9090端口號(hào)上運(yùn)行三個(gè)應(yīng)用程序。默認(rèn)情況下,ApacheTomcat使用端口號(hào)8080。據(jù)說(shuō)它很輕。也就是說(shuō),它在內(nèi)存和資源利用率方面消耗較少,從而使應(yīng)用程序在大多數(shù)系統(tǒng)上平穩(wěn)運(yùn)行,而無(wú)需特定的系統(tǒng)要求。2.3SQLServer數(shù)據(jù)庫(kù)簡(jiǎn)介作為一個(gè)擁有可擴(kuò)展,高性能等特點(diǎn)的數(shù)據(jù)庫(kù),SQLServer很好的應(yīng)對(duì)了大量數(shù)據(jù)涌進(jìn)數(shù)據(jù)庫(kù)這一問(wèn)題。SQLServer數(shù)據(jù)庫(kù)具有高性能設(shè)計(jì)的特點(diǎn),它可以很快的納入與提取數(shù)據(jù)。它的系統(tǒng)管理很先進(jìn),存儲(chǔ)的算法先進(jìn),很高效快速的進(jìn)行增刪改查對(duì)應(yīng)的數(shù)據(jù)操作。這個(gè)數(shù)據(jù)庫(kù)具有著很強(qiáng)大的事務(wù)處理功能,采用各種辦法讓數(shù)據(jù)得以完整的保存。SQLServer是通過(guò)索引的唯一性,來(lái)確保行數(shù)據(jù)也是唯一性。這樣通過(guò)SQLServer使檢索的速度加快,使得用戶可以快速的查詢出他所需要的數(shù)據(jù)。這個(gè)數(shù)據(jù)庫(kù)具有高效快速特點(diǎn)而且安全性也很可靠,對(duì)數(shù)據(jù)用自己獨(dú)特的加密方式,使得數(shù)據(jù)非常安全可靠。同時(shí)在數(shù)據(jù)存儲(chǔ)的過(guò)程中就可以進(jìn)行編譯處理,這樣以后將不再需要編譯的處理,大大節(jié)省了時(shí)間。以上這些是SQLServer數(shù)據(jù)庫(kù)的部分特點(diǎn)。數(shù)據(jù)庫(kù)的應(yīng)用讓我們儲(chǔ)存數(shù)據(jù)變得輕而易舉,數(shù)據(jù)庫(kù)的應(yīng)用解放了大量數(shù)據(jù)沒(méi)有地方放的尷尬場(chǎng)景。數(shù)據(jù)庫(kù)讓我們的開(kāi)發(fā)變得更加的簡(jiǎn)單。2.4B/S結(jié)構(gòu)B/S結(jié)構(gòu)是指瀏覽器與服務(wù)器架構(gòu)。在使用這個(gè)架構(gòu)時(shí)B/S不需要安裝客戶端,只要我們的電腦上有web瀏覽器就可以。B/S架構(gòu)具有很好的交互性,我們可以直接將它放在廣域網(wǎng)上,通過(guò)權(quán)限的控制來(lái)訪問(wèn)網(wǎng)站。B/S架構(gòu)操作簡(jiǎn)單,只需要升級(jí)服務(wù)器就可以。同時(shí),B/S架構(gòu)也有明顯的缺點(diǎn),在跨瀏覽器使用時(shí)表現(xiàn)不佳同時(shí)為了凸顯速度與安全性消耗了很大的設(shè)計(jì)成本。2.5JSP技術(shù)JSP程序動(dòng)態(tài)部分用JAVA編寫(xiě),JAVA語(yǔ)言十分強(qiáng)發(fā),依托于JAVA的強(qiáng)大,JSP也具有強(qiáng)大與易用的特點(diǎn)。使用JSP的優(yōu)勢(shì)點(diǎn)在于一次編譯,就可以到處進(jìn)行運(yùn)行。系統(tǒng)與環(huán)境可以隨意變動(dòng),但是代碼部分不需要進(jìn)行任何的改動(dòng)。同時(shí)JSP技術(shù)擁有系統(tǒng)多平臺(tái)支持的特點(diǎn),通常JSP頁(yè)面可以在任何開(kāi)發(fā)平臺(tái)上運(yùn)行使用,因?yàn)樗鼜?qiáng)大的生命力與行業(yè)標(biāo)準(zhǔn)使得突破了跨平臺(tái)的壁壘。JSP技術(shù)可塑性強(qiáng),從單臺(tái)服務(wù)器到多臺(tái)服務(wù)器均可使用。它也受到多種強(qiáng)大開(kāi)發(fā)工具支持,扎根于JAVA,而java行業(yè)第一設(shè)計(jì)語(yǔ)言,為他的發(fā)展提供了堅(jiān)實(shí)的基礎(chǔ)。它也支持服務(wù)器端組件。但是在交互請(qǐng)求中,則需要刷新網(wǎng)頁(yè),這樣就給客戶帶來(lái)了不好的體驗(yàn)。2.6數(shù)據(jù)庫(kù)管理技術(shù)在管理數(shù)據(jù)庫(kù)的時(shí)候通常會(huì)遇到以下幾個(gè)問(wèn)題:1.信息冗余度高。2、數(shù)據(jù)交互效率低。3、信息安全問(wèn)題。系統(tǒng)分析每個(gè)系統(tǒng)的開(kāi)發(fā)都要先對(duì)系統(tǒng)進(jìn)行全面的的分析包括可行性分析、需求分析、業(yè)務(wù)流程分析和數(shù)據(jù)流程分析的方面的分析,這樣才會(huì)對(duì)我們所開(kāi)發(fā)的系統(tǒng)擁有全面的認(rèn)識(shí),才可以讓我們?cè)陂_(kāi)發(fā)系統(tǒng)過(guò)程中少走彎路。3.1可行性分析3.1.1技術(shù)可行性本系統(tǒng)是基于B/S模式下,使用JSP與JAVA語(yǔ)言共同完成,數(shù)據(jù)庫(kù)使用的是SQLServer數(shù)據(jù)庫(kù),將MyEclipse作為開(kāi)發(fā)環(huán)境。再加上平時(shí)所學(xué)習(xí)的知識(shí)與其他途徑獲取的知識(shí),一步一步積攢而成的。3.1.2運(yùn)行可行性在運(yùn)行方面,目前現(xiàn)在的大學(xué)生都有一定的計(jì)算機(jī)操作基礎(chǔ),而且在校園內(nèi)有大量公共的電腦供大家選擇使用,所以大家很容易上手,沒(méi)有困難點(diǎn),不用特意培訓(xùn),操作系統(tǒng)簡(jiǎn)單,功能清晰,運(yùn)行沒(méi)有問(wèn)題。3.1.3時(shí)間可行性在做一個(gè)功能明確的項(xiàng)目時(shí),前期做足了充足的分析,這一個(gè)學(xué)起的時(shí)間感覺(jué)把專業(yè)知識(shí)重新整合了一遍,整體的時(shí)間沒(méi)有任何的問(wèn)題,時(shí)間很充裕,所以時(shí)間可行性沒(méi)有問(wèn)題。3.1.4經(jīng)濟(jì)可行性MyEclipse作為一款免費(fèi)的系統(tǒng)開(kāi)發(fā)環(huán)境,與當(dāng)下開(kāi)發(fā)流行的免費(fèi)服務(wù)器tomcat相結(jié)合就可以基本實(shí)現(xiàn)該項(xiàng)目。在所有開(kāi)發(fā)過(guò)程中的所使用的軟件都是免費(fèi)的,前期開(kāi)發(fā)所用到的費(fèi)用極低,整個(gè)項(xiàng)目不會(huì)因?yàn)橘Y金問(wèn)題而被滯留,所以在開(kāi)發(fā)過(guò)程中沒(méi)有經(jīng)濟(jì)困擾。3.1.5法律可行性本系統(tǒng)不存在侵犯?jìng)€(gè)人私生活和侵犯?jìng)€(gè)人責(zé)任的法律問(wèn)題,使用本系統(tǒng)也不存在法律糾紛問(wèn)題,因此本系統(tǒng)具有法律可行性。綜合上述各方面的可行性分析,本系統(tǒng)開(kāi)發(fā)符合當(dāng)前開(kāi)發(fā)的各項(xiàng)需要,而且具有一定的實(shí)用意義。該系統(tǒng)的可行性在技術(shù)、運(yùn)行、時(shí)間、經(jīng)濟(jì)和法律等方面中都得到了確認(rèn)。3.2需求分析在通過(guò)查詢問(wèn)卷的形式收集到的問(wèn)題和需求,通過(guò)系統(tǒng)功能需求的分析,建立了符合當(dāng)下信息發(fā)展的校園外賣(mài)訂餐平臺(tái)。本系統(tǒng)主要包含了針對(duì)系統(tǒng)用戶的管理、商戶用戶的管理、菜單管理、菜品幾個(gè)管理等多個(gè)功能模塊。下面將分別簡(jiǎn)單闡述一下這幾個(gè)功能模塊需求。系統(tǒng)用戶的管理模塊按照角色的不同分為管理員、顧客、商家三種。當(dāng)用戶作為管理員登錄到系統(tǒng)中去管理整個(gè)系統(tǒng)。當(dāng)用戶作為顧客登錄本系統(tǒng)之后顧客可以進(jìn)行最主要的訂餐操作也可以對(duì)自身的個(gè)人信息進(jìn)行修改。當(dāng)用戶第一次登錄時(shí),作為游客用戶可以通過(guò)系統(tǒng)進(jìn)行注冊(cè),當(dāng)游客用戶進(jìn)行操作時(shí)系統(tǒng)將會(huì)審核并反饋用戶是否在系統(tǒng)中注冊(cè)成功,一旦注冊(cè)成功系統(tǒng)將會(huì)記錄用戶注冊(cè)時(shí)所填寫(xiě)的基本信息。本系統(tǒng)還添加了管理員模塊,我們可以在本系統(tǒng)中添加其他的管理人員,在系統(tǒng)中管理員分為兩個(gè)角色包括普通管理員和超級(jí)管理員,這兩種管理員分別有不同的權(quán)限但是超級(jí)管理員只有一種。本系統(tǒng)主要是圍繞商家、顧客和管理員三個(gè)角色來(lái)展開(kāi)設(shè)計(jì)的,不同的角色擁有的功能也不同。系統(tǒng)的功能用例圖如圖3-1所示。圖3-1系統(tǒng)功能用例圖本系統(tǒng)還添加了餐廳宣傳模塊,在進(jìn)入本系統(tǒng)的時(shí)候系統(tǒng)中會(huì)有餐廳宣傳列表,系統(tǒng)將數(shù)據(jù)庫(kù)的商品表通過(guò)列表的形式展示給用戶查看。商家可以添加對(duì)本餐廳的宣傳,包括新菜品的宣傳,優(yōu)惠套餐等宣傳措施。同樣商家也可以修改餐廳的宣傳。本系統(tǒng)將菜品進(jìn)行分類管理可以使用戶更快的找到自己想吃的菜也使的餐廳菜品有很好的定位。菜品信息的管理,該模塊用戶可以直接在頁(yè)面中選擇所需要的菜品也可以通過(guò)關(guān)鍵字來(lái)查詢到所需要的菜品。當(dāng)商家在上傳菜品信息時(shí)出現(xiàn)錯(cuò)誤的操作或者商家的菜品信息已經(jīng)過(guò)期時(shí),商家可以通過(guò)修改或刪除的操作重新上傳新的菜品信息。本系統(tǒng)的開(kāi)發(fā)初衷就是想讓用戶對(duì)自己的訂單有明確的記錄方便查詢。在本系統(tǒng)中管理員可以查看系統(tǒng)中的所有訂單,同樣可以通過(guò)關(guān)鍵字進(jìn)行查詢。在用戶模塊中,當(dāng)用戶登錄到本系統(tǒng)時(shí),用戶可以查看自己本人的信息,如果出現(xiàn)錯(cuò)誤和需要更新的地方用戶可以進(jìn)行修改。用戶也可以查看自己的系統(tǒng)信息包括用戶名常用地址等。用戶可以修改自己的賬號(hào)密碼??梢酝ㄟ^(guò)關(guān)鍵字搜索站內(nèi)所有信息。系統(tǒng)管理模塊:包括數(shù)據(jù)備份。在退出模塊中不同的用戶都是通過(guò)退出操作來(lái)退出本系統(tǒng)的。3.3業(yè)務(wù)流程分析本系統(tǒng)的總體業(yè)務(wù)流程包括以下操作:當(dāng)用戶以用餐者的身份在系統(tǒng)頁(yè)面輸入賬號(hào)和密碼點(diǎn)擊登錄以后,數(shù)據(jù)庫(kù)開(kāi)始對(duì)該用餐者的身份進(jìn)行驗(yàn)證,在數(shù)據(jù)庫(kù)驗(yàn)證通過(guò)以后用戶將會(huì)登錄跳轉(zhuǎn)到系統(tǒng)的主頁(yè),只有經(jīng)過(guò)之前的操作才可以開(kāi)始使用系統(tǒng),從而進(jìn)行管理系統(tǒng)的操作,當(dāng)用戶作為管理員的身份在后臺(tái)登錄頁(yè)面輸入賬號(hào)和密碼點(diǎn)擊登錄以后,同樣進(jìn)行身份驗(yàn)證,在身份驗(yàn)證成功之后同樣進(jìn)行跳轉(zhuǎn),但此時(shí)將會(huì)登錄跳轉(zhuǎn)到管理員主頁(yè)使用管理員權(quán)限,對(duì)系統(tǒng)進(jìn)行管理等功能的操作。系統(tǒng)的業(yè)務(wù)流程如圖3-2所示。圖3-2系統(tǒng)業(yè)務(wù)流程圖3.4數(shù)據(jù)流程分析數(shù)據(jù)流圖(又稱DFD)是通過(guò)使用圖形的方法,闡述系統(tǒng)所具備的邏輯功能的過(guò)程,描述了系統(tǒng)數(shù)據(jù)的流動(dòng)和邏輯變換。因?yàn)樵摲椒梢詫o(wú)法用語(yǔ)言進(jìn)行描述的問(wèn)題通過(guò)圖形的方式表述,所以開(kāi)發(fā)者廣泛使用該方法,它是當(dāng)前應(yīng)用范圍較為廣泛的結(jié)構(gòu)化系統(tǒng)分析方法。零層數(shù)據(jù)流程是流程中最抽象的一層,它包括了用戶注冊(cè)與登錄管理、用戶功能管理和檢索維護(hù)管理等功能模塊,在登錄注冊(cè)模塊使用到的數(shù)據(jù)存儲(chǔ)有用戶賬戶信息文檔、用戶信息文檔,用戶功能管理模塊需要的存儲(chǔ)是用戶動(dòng)態(tài)信息文檔、圖片信息文檔,檢索維護(hù)是通過(guò)以上這些文檔信息通過(guò)關(guān)鍵詞進(jìn)行搜索。系統(tǒng)的0層數(shù)據(jù)流圖如圖3-3所示:圖3-3(0層)系統(tǒng)數(shù)據(jù)流圖在1層數(shù)據(jù)流圖中,數(shù)據(jù)實(shí)體包含普通用戶和管理員用戶兩類實(shí)體。功能選擇、菜品類別管理、菜品信息管理、加入購(gòu)物車等一系列操作為普通用戶的數(shù)據(jù)流程,作為管理員用戶將對(duì)整個(gè)系統(tǒng)進(jìn)行管理。普通用戶數(shù)據(jù)流只對(duì)自身的信息進(jìn)行操作,但管理員數(shù)對(duì)系統(tǒng)各用戶的信息進(jìn)行操作包括提示、添加、修改、查詢、刪除等一系列操作。系統(tǒng)的1層數(shù)據(jù)流圖如圖3-4所示:圖3-4(1層)系統(tǒng)數(shù)據(jù)流圖系統(tǒng)的2層數(shù)據(jù)流圖如圖3-5所示。2層則是作為管理員對(duì)后臺(tái)系統(tǒng)數(shù)據(jù)進(jìn)行操作的流圖,管理員可以通過(guò)添加、修改和刪除的操作來(lái)對(duì)系統(tǒng)進(jìn)行管理。圖3-5(2層)系統(tǒng)數(shù)據(jù)流圖3.4.1系統(tǒng)操作流程系統(tǒng)的操作流程圖如圖3-6,當(dāng)管理用戶打開(kāi)系統(tǒng)的主界面之后功能操作之前管理用戶需要登錄后臺(tái)管理員界面,這時(shí)管理員用戶點(diǎn)擊登錄跳轉(zhuǎn)到后臺(tái)管理員用戶登錄界面,輸入管理員的賬號(hào)和密碼,后臺(tái)數(shù)據(jù)庫(kù)進(jìn)行判定數(shù)據(jù)的合法性,如果合法則登錄跳轉(zhuǎn)到功能界面,反之不合法則顯示錯(cuò)誤信息后返回到管理員用戶登錄界面重新登錄。圖3-6系統(tǒng)操作流程圖3.4.2數(shù)據(jù)增加流程在用戶添加某些信息時(shí),系統(tǒng)后臺(tái)將會(huì)自動(dòng)生成不可修改的編號(hào),等待用戶將其他信息一并輸入之后,系統(tǒng)將會(huì)判定用戶輸入的信息是否合法,如果系統(tǒng)判定輸入數(shù)據(jù)合法則該數(shù)據(jù)將會(huì)寫(xiě)入并保存到數(shù)據(jù)庫(kù)中,反之如果系統(tǒng)判定該數(shù)據(jù)不合法則會(huì)要求用戶重新輸入信息,輸入后循環(huán)上述操作指導(dǎo)數(shù)據(jù)合法。數(shù)據(jù)增加流程圖如圖3-7所示。圖3-7數(shù)據(jù)增加流程圖3.4.3數(shù)據(jù)修改流程修改用戶信息,首先需要選中一條用戶需要修改的記錄,然后在原信息上直接輸入修改后的數(shù)據(jù),并對(duì)修改后的數(shù)據(jù)進(jìn)行合法性的判定,如果判定修改后的數(shù)據(jù)合法則寫(xiě)入并保存數(shù)據(jù)庫(kù),反之如果判定數(shù)據(jù)不合法則需要用戶重新輸入所要修改的數(shù)據(jù)并再次判定數(shù)據(jù)的合法性。數(shù)據(jù)修改流程圖如圖3-8所示:圖3-8數(shù)據(jù)修改流程圖3.4.4數(shù)據(jù)刪除流程當(dāng)用戶想要?jiǎng)h除某條信息時(shí),同樣需要選定一條需要?jiǎng)h除的記錄,點(diǎn)擊刪除按鈕之后系統(tǒng)將會(huì)提示該用戶是否確定刪除所選中的記錄,如果用戶點(diǎn)擊確定則刪除數(shù)據(jù)庫(kù)中相關(guān)的內(nèi)容,如果用戶點(diǎn)擊不確定則系統(tǒng)將會(huì)返回到上一層等待用戶的下一步操作。數(shù)據(jù)刪除流程圖如圖3-9所示:圖3-9數(shù)據(jù)刪除流程圖系統(tǒng)概要設(shè)計(jì)本章主要講述了系統(tǒng)開(kāi)發(fā)過(guò)程中系統(tǒng)的概要設(shè)計(jì)包含了系統(tǒng)中結(jié)構(gòu)的設(shè)計(jì),功能模塊的設(shè)計(jì),數(shù)據(jù)庫(kù)的設(shè)計(jì)這三個(gè)方面。4.1系統(tǒng)結(jié)構(gòu)設(shè)計(jì)本系統(tǒng)結(jié)構(gòu)大致分為用戶端的設(shè)計(jì)和管理員端的設(shè)計(jì)兩部分。用戶端的設(shè)計(jì)體現(xiàn)為在系統(tǒng)中普通用戶的注冊(cè)與登錄方面,在用戶登錄到系統(tǒng)以后,用戶可以查看自身的基本信息并隨時(shí)修改更新自身的信息;管理員端的設(shè)計(jì)主要是體現(xiàn)在當(dāng)管理員登錄到本系統(tǒng)后,整個(gè)系統(tǒng)的相關(guān)操作都是由管理員來(lái)進(jìn)行的,管理員的用戶權(quán)限高于用戶。系統(tǒng)的功能結(jié)構(gòu)圖如圖4-1所示:圖4-1系統(tǒng)功能結(jié)構(gòu)圖4.2功能模塊設(shè)計(jì)用戶注冊(cè)模塊:作為一個(gè)游客用戶如果想要使用本系統(tǒng)則可以通過(guò)系統(tǒng)進(jìn)行賬號(hào)的注冊(cè),用戶賬號(hào)注冊(cè)的時(shí)候需要輸入一些基本信息數(shù)據(jù)包括用戶名、密碼、郵箱、手機(jī)號(hào)、身份證、學(xué)號(hào)等信息,在用戶提交注冊(cè)信息之后,系統(tǒng)通過(guò)JSP代碼判斷用戶輸入的注冊(cè)數(shù)據(jù)是否符合系統(tǒng)規(guī)定,如果符合規(guī)格后,則會(huì)新增一個(gè)用戶記錄到數(shù)據(jù)庫(kù)中。用戶登錄模塊:當(dāng)用戶使用本系統(tǒng)時(shí)需要進(jìn)行登錄的操作,登錄時(shí)需要用戶輸入用戶名、密碼和驗(yàn)證碼作為登錄依據(jù),在用戶輸入完畢之后系統(tǒng)將會(huì)首先對(duì)用戶輸入的驗(yàn)證碼進(jìn)行判定,當(dāng)驗(yàn)證碼判定正確時(shí),系統(tǒng)將會(huì)對(duì)用戶輸入的用戶名及密碼進(jìn)行合法性的判斷,如果用戶輸入的用戶名不存在或者密碼不正確時(shí),系統(tǒng)將會(huì)提醒用戶輸入的信息有誤請(qǐng)?jiān)俅屋斎氩⒎祷氐匠跏嫉卿浗缑娴却脩舻闹匦螺斎?。餐廳宣傳管理模塊:商家發(fā)布餐廳宣傳,餐廳宣傳存儲(chǔ)在活動(dòng)表中,商家確認(rèn)發(fā)布的活動(dòng)后,系統(tǒng)將會(huì)跳轉(zhuǎn)活動(dòng)發(fā)布頁(yè)面,待商家提交本餐廳所要宣傳的信息后,管理員在后臺(tái)對(duì)宣傳信息是否合法進(jìn)行審核,審核通過(guò)后展示到頁(yè)面中。商品信息管理模塊:這里主要指的是菜品,當(dāng)商家上傳本商店菜品時(shí)系統(tǒng)將會(huì)在服務(wù)器中創(chuàng)建菜品信息的信息表,信息表將會(huì)展示給管理員,管理員對(duì)菜品信息的數(shù)據(jù)進(jìn)行審核,當(dāng)商家在添加本商鋪菜品信息之后,系統(tǒng)將會(huì)對(duì)添加的商品信息的輸入格式進(jìn)行合法性的判斷,當(dāng)系統(tǒng)判斷正確后,系統(tǒng)將會(huì)把添加的菜品信息插入菜品信息表中。菜品類別的管理模塊:主要時(shí)指對(duì)商家上傳的菜品類別進(jìn)行分析歸類,當(dāng)商家上傳菜品信息后系統(tǒng)對(duì)菜品的類別錄入到菜品類別列表,顧客可以通過(guò)菜品類別進(jìn)行搜索,商家也可對(duì)菜品類別進(jìn)行修改或刪除等操作,這些對(duì)數(shù)據(jù)庫(kù)的操作都是通過(guò)SQL語(yǔ)句來(lái)實(shí)現(xiàn)的,然后將數(shù)據(jù)放置到HTML界面中。后臺(tái)系統(tǒng)管理員模塊:管理員對(duì)用戶和商戶進(jìn)行審核,對(duì)問(wèn)題訂單的處理等操作。4.3數(shù)據(jù)庫(kù)設(shè)計(jì)4.3.1數(shù)據(jù)庫(kù)的概要設(shè)計(jì)一個(gè)系統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì)在這一套開(kāi)發(fā)系統(tǒng)中扮演者非常重要的角色,一個(gè)完善的數(shù)據(jù)庫(kù)建立的可以讓開(kāi)發(fā)者更快的完成需要開(kāi)發(fā)的項(xiàng)目。庫(kù)存管理系統(tǒng)開(kāi)發(fā)和創(chuàng)立的核心技術(shù)是數(shù)據(jù)庫(kù)的創(chuàng)建,簡(jiǎn)單的說(shuō),就是根據(jù)用戶的開(kāi)發(fā)需求創(chuàng)立滿足用戶需求的數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)的三個(gè)階段包括收集和分析用戶要求、建立E-R模型和數(shù)據(jù)庫(kù)模式設(shè)計(jì)。首先收集和分析用戶需求,開(kāi)發(fā)者把收集到的用戶需求進(jìn)行分析,通過(guò)對(duì)用戶需求的分析來(lái)確定系統(tǒng)開(kāi)發(fā)的范圍并對(duì)用戶活動(dòng)所涉及到的數(shù)據(jù)以及系統(tǒng)的數(shù)據(jù)進(jìn)行分析。其次再建立E-R模型,在建立E-R模型時(shí)應(yīng)當(dāng)遵循由小到大來(lái)建立,先對(duì)局部的數(shù)據(jù)進(jìn)行E-R模型的設(shè)計(jì),然后對(duì)總體的數(shù)據(jù)進(jìn)行E-R模型的設(shè)計(jì)。最后開(kāi)發(fā)者應(yīng)該先將E-R圖轉(zhuǎn)換為關(guān)系模型的初步設(shè)計(jì),再進(jìn)行對(duì)模式調(diào)整和改善的優(yōu)化設(shè)計(jì)。我們?cè)谠O(shè)計(jì)系統(tǒng)數(shù)據(jù)庫(kù)的時(shí)候,為了讓整個(gè)庫(kù)存信息管理系統(tǒng)密切結(jié)合,可以把整個(gè)系統(tǒng)的數(shù)據(jù)設(shè)計(jì)和處理設(shè)計(jì)密切結(jié)合起來(lái)。采用傳統(tǒng)手工整理來(lái)對(duì)復(fù)雜信息結(jié)構(gòu),應(yīng)用環(huán)境多樣的數(shù)據(jù)進(jìn)行整理的方法,會(huì)出現(xiàn)很大的不確定性,這個(gè)不確定性在于整個(gè)數(shù)據(jù)整理人員的水平高低,如果水平高的人出現(xiàn)的失誤就少,水平低的人出現(xiàn)的失誤就增多。數(shù)據(jù)庫(kù)的設(shè)計(jì)在人們看更多的是一項(xiàng)技巧而不是一個(gè)工程項(xiàng)目,沒(méi)有正確的理論知識(shí)和正確的解決方法的支持。所以在項(xiàng)目交付運(yùn)行了一段時(shí)間之后總會(huì)有些莫名其妙的事情發(fā)生,這樣整個(gè)軟件系統(tǒng)的質(zhì)量就很難得到保障從而導(dǎo)致使用者出現(xiàn)很多的損失。所以為了更好的解決這些根本性的問(wèn)題,近些年來(lái)人們不斷的探索其中的奧妙只為了能夠采取新的數(shù)據(jù)庫(kù)管理方式,從而使得整個(gè)系統(tǒng)運(yùn)行的更好更快。4.3.2概念設(shè)計(jì)在一個(gè)完整的數(shù)據(jù)庫(kù)分析過(guò)程中,我們通常采用E-R圖的方式來(lái)建立它們之間相對(duì)應(yīng)的關(guān)系,其中它有三種概念分別為:用來(lái)維持和不斷利用數(shù)據(jù)的一個(gè)大集合被稱為實(shí)體;該物體本身所具有的一些特點(diǎn)被統(tǒng)稱為屬性;每個(gè)數(shù)據(jù)實(shí)體之間的種種聯(lián)系叫做關(guān)系,它給各個(gè)實(shí)體之間建立起相對(duì)應(yīng)的模型。再由系統(tǒng)各個(gè)實(shí)體之間的關(guān)系,得出總體的系統(tǒng)E-R圖。如圖4-2所示:圖4-2系統(tǒng)總體ER圖4.3.3表設(shè)計(jì)在一個(gè)數(shù)據(jù)庫(kù)的設(shè)計(jì)中,需要開(kāi)發(fā)者建立最符合客戶需求的數(shù)據(jù)庫(kù)計(jì)劃。同時(shí)需要進(jìn)行規(guī)范化處理,從而避免發(fā)生一些不必要的錯(cuò)誤。同時(shí)數(shù)據(jù)庫(kù)開(kāi)發(fā)過(guò)程中必須保證數(shù)據(jù)庫(kù)的完整性。還要根據(jù)每個(gè)用戶設(shè)置不同的權(quán)限。因?yàn)殚_(kāi)發(fā)是為了讓?xiě)?yīng)用程序的性能需求得以實(shí)現(xiàn),那么在設(shè)計(jì)數(shù)據(jù)庫(kù)的時(shí)候就必須要靠SQLServer中的各個(gè)功能來(lái)支持應(yīng)用程序的實(shí)現(xiàn)。數(shù)據(jù)庫(kù)設(shè)計(jì)完成之后還需要定期的維護(hù)。在本系統(tǒng)開(kāi)發(fā)過(guò)程中服務(wù)器上建立了名為jspmmsmkzxdcglxt4283的數(shù)據(jù)庫(kù),其中包括以下表:系統(tǒng)用戶注冊(cè)表包括兩個(gè)角色分別為用戶和商家。用戶注冊(cè)表中有的字段包括用戶ID、用戶名、密碼、時(shí)間等關(guān)鍵字段,當(dāng)我們?cè)诮⒈硎菍?duì)相關(guān)字段進(jìn)行分析包括字段類型、大小、是否為空、長(zhǎng)度等。如表4-1。表4-1用戶注冊(cè)表序號(hào)字段名稱字段類型大小允許為空最大長(zhǎng)度備注1IDInt4自增編號(hào)10

2usernameVarChar50是255

3pwdVarChar50是255

4addtimeDateTime8是23

商家注冊(cè)時(shí)需要填寫(xiě)一些基本信息包括ID、商家的賬號(hào)、密碼、店家的名稱、負(fù)責(zé)人、營(yíng)業(yè)執(zhí)照等信息,這些都是商家注冊(cè)時(shí)關(guān)鍵的字段對(duì)這些字段的屬性進(jìn)行分析的得出商家數(shù)據(jù)庫(kù)表。如表4-2所示。表4-2商家注冊(cè)表序號(hào)字段名稱字段類型大小允許為空最大長(zhǎng)度備注1IDInt4自增編號(hào)10

2dianjiazhanghaoVarChar50是255

3mimaVarChar50是255

4dianjiamingchengVarChar50是255

5fuzerenVarChar50是255

6lianxifangshiVarChar50是255

7dizhiVarChar300是255

8yingyezhizhaoVarChar300是255

9dianpuzhaopianVarChar50是255

10beizhuVarChar500是255

11isshVarChar2是255

12addtimeDateTime8是23

在注冊(cè)商品類別表時(shí)同樣需要對(duì)商品類別的數(shù)據(jù)進(jìn)行分析包括商品ID以及商品類別兩個(gè)字段,對(duì)這兩個(gè)字段的屬性進(jìn)行分析。如表4-3所示。表4-3類別表序號(hào)字段名稱字段類型大小允許為空最大長(zhǎng)度備注1IDInt4自增編號(hào)10

2leibieVarChar50是255

在設(shè)計(jì)購(gòu)物車數(shù)據(jù)庫(kù)建表時(shí)利用E-R圖對(duì)購(gòu)物車中的數(shù)據(jù)分析包括:ID、商品編號(hào)、商品名稱、商品類別、銷售價(jià)格、庫(kù)存、店家、購(gòu)買(mǎi)數(shù)量、總價(jià)等各個(gè)字段進(jìn)行分析。如表4-4所示。表4-4購(gòu)物車表序號(hào)字段名稱字段類型大小允許為空最大長(zhǎng)度備注1IDInt4自增編號(hào)10

2shangpinbianhaoVarChar50是255

3shangpinmingchengVarChar50是255

4shangpinleibieVarChar50是255

5xiaoshoujiageVarChar50是255

6kucunVarChar50是255

7fabudianjiaVarChar50是255

8dianjiamingchengVarChar50是255

9goumaishuliangVarChar50是255

10zongjineVarChar50是255

11goumairenVarChar50是255

12xingmingVarChar50是255

13shoujihaoVarChar50是255

14dizhiVarChar300是255

15beizhuVarChar500是255

16isshVarChar2是255

17addtimeDateTime8是23

留言板作為系統(tǒng)中的一部分需要對(duì)留言者的ID、名稱、性別、QQ等基本信息進(jìn)行保存以便其他顧客或者商家進(jìn)行查看,所以數(shù)據(jù)庫(kù)建表時(shí)也要對(duì)留言信息進(jìn)行建表。如表4-5所示。表4-5留言板表序號(hào)字段名稱字段類型大小允許為空最大長(zhǎng)度備注1IDInt4自增編號(hào)10

2chengVarChar50是255

3xingbieVarChar2是255

4QQVarChar50是255

5youxiangVarChar50是255

6dianhuaVarChar50是255

7neirongVarChar500是255

8addtimeDateTime8是23

9huifuneirongVarChar500是255

我們系統(tǒng)設(shè)計(jì)之初商家主要的功能就是售出商品同樣需要商品的入庫(kù),這樣數(shù)據(jù)庫(kù)建表時(shí)就需要對(duì)商品的屬性進(jìn)行分析,既然是入庫(kù)就需要入庫(kù)的數(shù)量及庫(kù)存用表的形式顯現(xiàn)出來(lái)。如表4-8所示。表4-6商品入庫(kù)表序號(hào)字段名稱字段類型大小允許為空最大長(zhǎng)度備注1IDInt4自增編號(hào)10

2shangpinbianhaoVarChar50是255

3shangpinmingchengVarChar50是255

4shangpinleibieVarChar50是255

5xiaoshoujiageVarChar50是255

6rukujiageVarChar50是255

7rukushuliangVarChar50是255

8rukudianjiaVarChar50是255

9dianjiamingchengVarChar50是255

10beizhuVarChar500是255

11addtimeDateTime8是23

在系統(tǒng)中商品的信息尤為重要,顧客在購(gòu)買(mǎi)商品或者查看商品時(shí)需要系統(tǒng)從數(shù)據(jù)庫(kù)中提取商品的信息,商家也可以及時(shí)的更新商品信息。商品信息的關(guān)鍵字段包括ID、商品的標(biāo)號(hào)、商品類別、價(jià)格、庫(kù)存、照片等字段,對(duì)這些字段分析其屬性建立信息表。如表4-7所示:表4-7商品信息表表序號(hào)字段名稱字段類型大小允許為空最大長(zhǎng)度備注1IDInt4自增編號(hào)10

2shangpinbianhaoVarChar50是255

3shangpinmingchengVarChar50是255

4shangpinleibieVarChar50是255

5xiaoshoujiageVarChar50是255

6kucunVarChar50是255

7xiaoliangVarChar50是255

8defenVarChar50是255

9fabudianjiaVarChar50是255

10dianjiamingchengVarChar50是255

11zhaopianVarChar50是255

12shangpinjianjieVarChar500是255

13isshVarChar2是255

14addtimeDateTime8是23

無(wú)論是顧客還是商家都需要去查看修改自己的訂單,訂單信息需要客戶上傳修改,也需要商家進(jìn)行確認(rèn)和處理。所以需要訂單同步到客戶和商家中所以把訂單放到數(shù)據(jù)庫(kù)中效果最好,這樣就需要在數(shù)據(jù)庫(kù)中生成訂單表以方便調(diào)用,對(duì)訂單表進(jìn)行分析了解訂單表關(guān)鍵字段包括ID、訂單號(hào)、商品信息、價(jià)格、商家名稱、購(gòu)買(mǎi)數(shù)量、地址等字段,分析字段屬性建立訂單表。如表4-8所示。表4-8生成訂單表序號(hào)字段名稱字段類型大小允許為空最大長(zhǎng)度備注1IDInt4自增編號(hào)10

2dingdanhaoVarChar50是255

3shangpinxinxiVarChar500是255

4zongjineVarChar50是255

5fabudianjiaVarChar50是255

6dianjiamingchengVarChar50是255

7goumairenVarChar50是255

8xingmingVarChar50是255

9shoujihaoVarChar50是255

10dizhiVarChar300是255

11beizhuVarChar500是255

12isshVarChar2是255

13iszfVarChar2是255

14addtimeDateTime8是23

8addtimeDateTime8是23

9huifuneirongVarChar500是255

本系統(tǒng)中客戶可以對(duì)自己購(gòu)買(mǎi)的商品進(jìn)行評(píng)論,評(píng)論后顯示在商品下供顧客和商家查看,對(duì)評(píng)論表分析屬性主要包括ID、評(píng)論顧客ID、評(píng)論人、評(píng)分和意見(jiàn)等,通過(guò)分析建立評(píng)論表。如表4-9所示。表4-9評(píng)論表序號(hào)字段名稱字段類型大小允許為空最大長(zhǎng)度備注1IDInt4自增編號(hào)10

2xinwenIDVarChar50是255

3pinglunneirongVarChar300是255

4pinglunrenVarChar50是255

5pingfenVarChar50是255

6biaoVarChar50是255

7addtimeDateTime8是23

本系統(tǒng)分為前臺(tái)系統(tǒng)和后臺(tái)系統(tǒng)兩部分,所以在前臺(tái)系統(tǒng)中主頁(yè)是所有人都可以查看的,這樣主頁(yè)中內(nèi)容的豐富就比較關(guān)鍵所以我在首頁(yè)中添加的一個(gè)新聞通知表,通過(guò)E-R圖分析新聞通知的屬性包括ID、標(biāo)題、內(nèi)容、添加人、圖片等,創(chuàng)建新聞通知表,如表4-10所示。表4-10新聞通知表序號(hào)字段名稱字段類型大小允許為空最大長(zhǎng)度備注1IDInt4自增編號(hào)10

2biaotiVarChar300是255

3leibieVarChar50是255

4neirongText16是255

5tianjiarenVarChar50是255

6shouyetupianVarChar50是255

7dianjilvInt4是10

8addtimeDateTime8是23

本系統(tǒng)為服務(wù)行業(yè)的產(chǎn)物所以必然要接受顧客的批評(píng),這就少不了客戶投訴這樣就衍生出客戶投訴表。通過(guò)E-R圖的分析投訴表中的屬性包括ID、名稱、投訴者的信息、投訴原因以及顧客給出的整改意見(jiàn)。如表4-11所示。表4-11投訴板表序號(hào)字段名稱字段類型大小允許為空最大長(zhǎng)度備注1IDInt4自增編號(hào)10

2chengVarChar50是255

3xingbieVarChar2是255

4QQVarChar50是255

5youxiangVarChar50是255

6dianhuaVarChar50是255

7neirongVarChar500是255

8addtimeDateTime8是23

9huifuneirongVarChar500是255

表4-12是收藏夾表,用于存儲(chǔ)每個(gè)用戶的收藏夾信息,包括ID、username和字段等字段,ID和username為外鍵分別關(guān)聯(lián)商品表的ID列和用戶表的ID列。表4-12收藏記錄表序號(hào)字段名稱字段類型大小允許為空最大長(zhǎng)度備注1IDInt4自增編號(hào)10

2usernameVarChar50是255

3xwidVarChar50是255

4ziduanVarChar50是255

5biaoVarChar50是255

6addtimeDateTime8是23

系統(tǒng)詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)本章講述了在本系統(tǒng)開(kāi)發(fā)中系統(tǒng)中的登錄、注冊(cè)、管理員等基本模塊詳細(xì)設(shè)計(jì)和實(shí)現(xiàn)。5.1基本任務(wù)在這個(gè)階段的設(shè)計(jì)工作中精確地描述出目標(biāo)系統(tǒng)是一個(gè)系統(tǒng)實(shí)現(xiàn)階段的根本目標(biāo),只有在這個(gè)根本目標(biāo)實(shí)現(xiàn)的情況下,才可以在編碼階段根據(jù)所描述的信息用程序語(yǔ)言直接進(jìn)行編寫(xiě)。為了將系統(tǒng)的每個(gè)功能模塊處理過(guò)程的詳細(xì)算法描述出來(lái)一般通過(guò)使用某種圖形、表格、語(yǔ)言等工具的方法來(lái)實(shí)現(xiàn)。其次對(duì)各個(gè)數(shù)據(jù)模塊內(nèi)的數(shù)據(jù)結(jié)構(gòu)進(jìn)行設(shè)計(jì)。明確的定義出對(duì)需求分析、概要設(shè)計(jì)確定的概念性的數(shù)據(jù)類型。并且將數(shù)據(jù)庫(kù)的物理結(jié)構(gòu)進(jìn)行確定。根據(jù)本系統(tǒng)的開(kāi)發(fā)類型進(jìn)行一系列設(shè)計(jì)。系統(tǒng)設(shè)計(jì)結(jié)束后將系統(tǒng)實(shí)現(xiàn)說(shuō)明書(shū)編寫(xiě)出來(lái)以便日后查看。最終對(duì)處理過(guò)程中的算法以及數(shù)據(jù)庫(kù)的物理結(jié)構(gòu)進(jìn)行評(píng)審操作,至此系統(tǒng)實(shí)現(xiàn)的基本任務(wù)才算完成。系統(tǒng)開(kāi)發(fā)時(shí)系統(tǒng)結(jié)構(gòu)可分為存放JAVA源代碼的Src文件夾,以及存放系統(tǒng)的數(shù)據(jù)庫(kù)文件database文件夾,系統(tǒng)的界面代碼文件存放在webroot文件中。Src文件夾里面包含control包、dao包、util包,dao包為邏輯層,是系統(tǒng)方法的底層包,包括各種數(shù)據(jù)增刪改查的方法,control包是控制層,用來(lái)連接邏輯層和視圖層,在邏輯層調(diào)用邏輯層,完成視圖層需要的功能,視圖層為系統(tǒng)的界面代碼,完成界面的設(shè)計(jì)和數(shù)據(jù)的顯示。系統(tǒng)結(jié)構(gòu)如下圖所示。圖5-1系統(tǒng)結(jié)構(gòu)5.2登錄模塊的實(shí)現(xiàn)5.2.1首頁(yè)實(shí)現(xiàn)首頁(yè)是網(wǎng)站的入口,網(wǎng)上訂餐系統(tǒng)本就是餐飲服務(wù)行業(yè),所以該系統(tǒng)的首頁(yè)也要做到盡量讓人賞心悅目,讓瀏覽系統(tǒng)的人繼續(xù)瀏覽下去的意向,只有這樣才達(dá)到了設(shè)計(jì)該系統(tǒng)的初衷。系統(tǒng)和用戶交互的關(guān)鍵所在是簡(jiǎn)潔明了的用戶界面,并且良好的用戶界面在很大的程度上影響著用戶對(duì)本系統(tǒng)的評(píng)價(jià)與選擇,所以開(kāi)發(fā)者在設(shè)計(jì)系統(tǒng)界面的時(shí)候,首頁(yè)頂部就告訴人們本系統(tǒng)是作為校園外賣(mài)訂餐系統(tǒng)存在的。其中網(wǎng)站首頁(yè)主要包含了:首頁(yè)、餐廳宣傳、系統(tǒng)簡(jiǎn)介、在線留言、用戶注冊(cè)、商家注冊(cè)、店鋪展示、菜品展示、后臺(tái)等功能。首頁(yè)頁(yè)面,如圖5.1所示。圖5.1首頁(yè)頁(yè)面圖首頁(yè)主要代碼如下:<%@pagelanguage="java"import="java.util.*"pageEncoding="gb2312"%><%@pageimport="util.Info"%><%@pageimport="dao.CommDAO"%><%@pageimport="util.PageManager"%>5.2.2管理員后臺(tái)登錄為了保障系統(tǒng)管理員的最高權(quán)限不受威脅,系統(tǒng)管理員登錄時(shí)需要在后臺(tái)管理員登錄界面輸入正確的用戶名、密碼、權(quán)限以及驗(yàn)證碼,之后單擊“登錄”按鈕系統(tǒng)才可以跳轉(zhuǎn)進(jìn)入到本系統(tǒng)的后臺(tái)管理員界面,進(jìn)入到界面內(nèi)才可以進(jìn)行只有管理員才可以操作的行為。用戶登錄流程圖如圖5-2所示。圖5-2用戶登錄流程圖系統(tǒng)管理員登錄界面區(qū)別于其他用戶的登錄界面獨(dú)立存在。系統(tǒng)管理員工登錄的流程圖如圖5-3所示。管理員需要正確的輸入管理員的用戶名、管理員的密碼以及當(dāng)前顯示的驗(yàn)證碼來(lái)登錄后臺(tái)管理系統(tǒng)。圖5-3管理員登錄流程圖如圖5-4所示為系統(tǒng)實(shí)現(xiàn)的管理員登錄頁(yè)面。圖5-4登錄界面用戶登錄的邏輯代碼如下:if(ac.equals("adminlogin")) { Stringusername=request.getParameter("username"); Stringpassword=request.getParameter("pwd"); Stringutype=request.getParameter("cx"); Stringpagerandom=request.getParameter("pagerandom")==null?"":request.getParameter("pagerandom"); Stringrandom=(String)request.getSession().getAttribute("random"); if(!pagerandom.equals(random)&&request.getParameter("a")!=null) { request.setAttribute("random",""); go("/login.jsp",request,response); } else{ Stringsql1="select*fromalluserswhereusername='"+username+"'andpwd='"+password+"'"; List<HashMap>userlist1=dao.select(sql1); if(userlist1.size()==1) { request.getSession().setAttribute("username",userlist1.get(0).get("username")); request.getSession().setAttribute("cx",userlist1.get(0).get("cx")); gor("main.jsp",request,response); }else{ request.setAttribute("error",""); go("/login.jsp",request,response); } } }5.3用戶注冊(cè)及登錄模塊的實(shí)現(xiàn)當(dāng)游客用戶首次登錄本系統(tǒng)網(wǎng)站時(shí)就會(huì)用到該功能模塊。在游客用戶成為本網(wǎng)站注冊(cè)用戶之前,用戶必須要進(jìn)行注冊(cè)的操作才可以繼續(xù)擁有訪問(wèn)本網(wǎng)站其他頁(yè)面的權(quán)利。當(dāng)游客用戶輸入用戶名、密碼、身份證、手機(jī)號(hào)等一些必填信息之后,點(diǎn)擊注冊(cè)按鈕才算完成用戶的注冊(cè)這一操作。用戶注冊(cè)流程圖如圖5-5所示。用戶注冊(cè)界面如圖5-6所示。圖5-5用戶注冊(cè)流程圖圖5-6用戶注冊(cè)用戶登錄界面如圖5-7所示。圖5-7用戶登錄<%HashMapext=newHashMap();ext.put("issh","否");newCommDAO().insert(request,response,"yonghuzhuce",ext,true,false,"index.jsp");%>Php:include_once'conn.php'; $addnew=$_POST["addnew"]; if($addnew=="1") { $username=$_POST['username']; $pwd=$_POST['pwd1']; $cx=$_POST['cx']; $sql="select*fromalluserswhereusername='$username'andpwd='$pwd'"; $query=SQL_query($sql); $rowscount=SQL_num_rows($query); if($rowscount>0) { echo"<scriptlanguage='javascript'>alert('該用戶名已經(jīng)存在,請(qǐng)換其他用戶名!');history.back();</script>"; } else { //date_default_timezone_set("PRC"); $ndate=date("Y-m-dH:i:s"); $sql="insertintoallusers(username,pwd,cx)values('$username','$pwd','$cx')"; SQL_query($sql); echo"<scriptlanguage='javascript'>alert('注冊(cè)成功!');location.href='yhzhgl.php';</script>"; } }5.4管理員模塊的實(shí)現(xiàn)5.4.1用戶管理模塊的實(shí)現(xiàn)在針對(duì)新用戶的添加以及老用戶的注銷時(shí)就用到了系統(tǒng)用戶管理模塊。但這一權(quán)限只有管理員擁有。添加新的時(shí)管理員需要對(duì)用戶名稱及其密碼進(jìn)行審核,老用戶的注銷也同樣如此。當(dāng)某些用戶需要注銷時(shí)需要管理員下拉用戶菜單,在菜單中找到相對(duì)應(yīng)的用戶名點(diǎn)擊刪除。才可以將其刪除。用戶管理的流程圖如圖5-8所示。圖5-8用戶管理流程圖用戶管理界面如圖5-9所示。圖5-9用戶管理系統(tǒng)用戶管理關(guān)鍵代碼為:<%newCommDAO().delete(request,"yonghuzhuce");Stringurl="yonghuzhuce_list.jsp?1=1";Stringsql="select*fromyonghuzhucewhere1=1"; if(request.getParameter("yonghuming")==""||request.getParameter("yonghuming")==null){}else{sql=sql+"andyonghuminglike'%"+request.getParameter("yonghuming").trim()+"%'";} if(request.getParameter("xingming")==""||request.getParameter("xingming")==null){}else{sql=sql+"andxingminglike'%"+request.getParameter("xingming").trim()+"%'";} if(request.getParameter("QQ")==""||request.getParameter("QQ")==null){}else{sql=sql+"andQQlike'%"+request.getParameter("QQ").trim()+"%'";} if(request.getParameter("youxiang")==""||request.getParameter("youxiang")==null){}else{sql=sql+"andyouxianglike'%"+request.getParameter("youxiang").trim()+"%'";} if(request.getParameter("dianhua")==""||request.getParameter("dianhua")==null){}else{sql=sql+"anddianhualike'%"+request.getParameter("dianhua").trim()+"%'";} if(request.getParameter("shenfenzheng")==""||request.getParameter("shenfenzheng")==null){}else{sql=sql+"andshenfenzhenglike'%"+request.getParameter("shenfenzheng").trim()+"%'";}sql+="orderbyiddesc"; //out.print(sql); ArrayList<HashMap>list=PageManager.getPages(url,10,sql,request); inti=0; for(HashMapmap:list){ i++;%>5.4.2用戶密碼修改模塊的實(shí)現(xiàn)在日常生活中我們多多少少會(huì)遇到忘記密碼的尷尬場(chǎng)景,所以用戶密碼修改模塊必不可少,其是針對(duì)當(dāng)前系統(tǒng)處于登錄狀態(tài)的用戶來(lái)對(duì)自己的登錄密碼進(jìn)行修改的操作。密碼修改流程圖如圖5-10所示。圖5-10密碼修改流程圖密碼修改界面中需要我們填寫(xiě)用戶的原密碼,然后填寫(xiě)用戶想要修改的新密碼同時(shí)新密碼也要填寫(xiě)確認(rèn)密碼,確認(rèn)密碼是為了防止用戶在修改密碼是輸入錯(cuò)誤或者鍵盤(pán)失靈設(shè)置的一個(gè)過(guò)濾器。如圖5-11所示。圖5-11修改密碼密碼修改關(guān)鍵代碼為:protectedvoidButton1_Click(objectsender,EventArgse){if(TextBox1.Text.ToString().Trim()==""||TextBox2.Text.ToString().Trim()==""||TextBox3.Text.ToString().Trim()==""){Response.Write("<script>javascript:alert('請(qǐng)?zhí)顚?xiě)完整');history.back();</script>");}else{if(TextBox2.Text.ToString().Trim()!=TextBox3.Text.ToString().Trim()){Response.Write("<script>javascript:alert('兩次密碼不一至,請(qǐng)確認(rèn)');history.back();</script>");}else{stringsql;sql="select*fromalluserswhereusername='"+Session["username"].ToString().Trim()+"'andpwd='"+TextBox1.Text.ToString().Trim()+"'";DataSetresult=newDataSet();result=newClass1().hsggetdata(sql);5.4.3餐廳宣傳管理模塊的實(shí)現(xiàn)餐廳宣傳信息添加功能主要指對(duì)其標(biāo)題、內(nèi)容等一些餐廳基本信息的展示及更新。餐廳宣傳查詢功能可以根據(jù)標(biāo)題、內(nèi)容等多種條件對(duì)餐廳宣傳信息進(jìn)行查詢。餐廳宣傳管理流程圖如圖5-12所示。圖5-12餐廳宣傳管理流程圖在商家對(duì)本餐廳添加宣傳語(yǔ)時(shí)需要對(duì)宣傳的標(biāo)題例如優(yōu)惠政策或者菜品宣傳進(jìn)行填寫(xiě)。其中必須填寫(xiě)的包括標(biāo)題、添加人等信息如圖5-13所示。圖5-13餐廳宣傳添加餐廳宣傳查詢?nèi)鐖D5-14所示。圖5-14餐廳宣傳查詢餐廳宣傳信息添加關(guān)鍵代碼為:protectedvoidButton1_Click(objectsender,EventArgse){stringsql;sql="insertintoliuyanban(cheng,biaoqing,biaoti,neirong,huifu)values('"+cheng.Text.ToString().Trim()+"','"+biaoqing.Text.ToString().Trim()+"','"+biaoti.Text.ToString().Trim()+"','"+neirong.Text.ToString().Trim()+"','"+huifu.Text.ToString().Trim()+"')";intresult;result=newClass1().hsgexucute(sql);if(result==1){Response.Write("<script>javascript:alert('添加成功');</script>");}else{Response.Write("<script>javascript:alert('系統(tǒng)錯(cuò)誤,請(qǐng)檢查數(shù)據(jù)庫(kù)設(shè)置問(wèn)題');</script>");}}5.4.4管理菜品類別模塊的實(shí)現(xiàn)管理員在發(fā)布新的菜品之后,往往會(huì)附加菜品的類別以進(jìn)行更好的分類,系統(tǒng)將會(huì)顯示菜品的類別,管理員對(duì)菜品的類別、日期等一些基本信息進(jìn)行添加、刪除和修改的操作。活動(dòng)管理流程圖如圖5-15所示。圖5-15菜品類別管理流程圖菜品類別添加如圖5-16所示。圖5-16菜品類別添加菜品類別查詢?nèi)鐖D5-17所示。圖5-17菜品類別查詢菜品類別關(guān)鍵代碼為:<%HashMapext=newHashMap();ext.put("issh","否");newCommDAO().insert(request,response,"caipinleibie",ext,true,false,"index.jsp");%>5.4.5菜品信息管理模塊的實(shí)現(xiàn)日常有些店鋪會(huì)發(fā)布一些新的菜品,當(dāng)管理員發(fā)布新的菜品時(shí),系統(tǒng)將會(huì)顯示發(fā)布菜品的信息。這一模塊的主要功能體現(xiàn)在對(duì)菜品的編號(hào)、類別等一些基本信息的添加、刪除和修改的操作。菜品信息管理流程圖如圖5-15所示。圖5-15菜品信息管理流程圖菜品信息添加模塊系統(tǒng)實(shí)現(xiàn)截圖如圖5-16所示。圖5-16菜品信息添加菜品信息查詢模塊系統(tǒng)實(shí)現(xiàn)截圖如圖5-17所示。圖5-17菜品信息查詢菜品信息關(guān)鍵代碼為:<%HashMapext=newHashMap();ext.put("issh","否");newCommDAO().insert(request,response,"caipinxinxi",ext,true,false,"index.jsp");5.5.5訂單管理實(shí)現(xiàn)既然是網(wǎng)上訂餐系統(tǒng)就必須要有訂單這一模塊,在用戶登錄情況下將所需要購(gòu)買(mǎi)的商品加入購(gòu)物車并付款之后,系統(tǒng)將會(huì)自動(dòng)生成訂單,用戶可以在登錄狀態(tài)下查詢自己的個(gè)人訂單情況,查看自己付款的訂單是否被商家接單,當(dāng)然如果用戶不想購(gòu)買(mǎi)此商品時(shí)也可以進(jìn)行取消當(dāng)前訂單的操作,在管理員權(quán)限中管理員可以對(duì)本系統(tǒng)中所有用戶的訂單進(jìn)行管理,管理員的權(quán)限包括審核用戶訂單是否合法,查詢用戶訂單,刪除錯(cuò)誤訂單,修改用戶訂單等一系列操作。訂單管理頁(yè)面,如圖5.18所示。圖5.18訂單管理頁(yè)面圖訂單管理主要代碼如下:publicfunctionlists(){$model=D('goods');$data=$model->search();$this->assign(array('data'=>$data['data'],'page'=>$data['page'],));$this->display();}

系統(tǒng)測(cè)試在軟件開(kāi)發(fā)的生命周期中軟件測(cè)試占據(jù)不可或缺的地位,軟件測(cè)試不僅時(shí)為了發(fā)現(xiàn)本系統(tǒng)開(kāi)發(fā)過(guò)程中的缺陷和漏洞,也是為了能夠盡早的識(shí)別項(xiàng)目可能存在的一些風(fēng)險(xiǎn)。一個(gè)系統(tǒng)的開(kāi)發(fā)都是為了之后系統(tǒng)的使用那么對(duì)系統(tǒng)的風(fēng)險(xiǎn)評(píng)估尤為重要,軟件測(cè)試為開(kāi)發(fā)人員和程序經(jīng)理提供反饋結(jié)果。再者,軟件測(cè)試可以確保在上線日期到來(lái)之前達(dá)到上線的標(biāo)準(zhǔn)。嚴(yán)格把控各個(gè)開(kāi)發(fā)階段的產(chǎn)品質(zhì)量尤為重要。本章是系統(tǒng)開(kāi)發(fā)過(guò)程中重要的以部分,一個(gè)系統(tǒng)能否使用都要經(jīng)過(guò)測(cè)試這一環(huán)節(jié),只有當(dāng)測(cè)試通過(guò)以后系統(tǒng)才可以進(jìn)行下一步,避免以后的損失。在此系統(tǒng)進(jìn)行初步實(shí)現(xiàn)之后,開(kāi)始進(jìn)行對(duì)系統(tǒng)的測(cè)試工作,測(cè)試的目的是要找出系統(tǒng)中存在的bug和系統(tǒng)的不完善部分,為開(kāi)發(fā)人員和項(xiàng)目經(jīng)理提供反饋,測(cè)試該項(xiàng)目是否達(dá)到了上線的標(biāo)準(zhǔn),測(cè)試的結(jié)果也為以后的測(cè)試和升級(jí)工作提供了憑證。6.1單元測(cè)試6.1.1注冊(cè)測(cè)試游客用戶必須要先注冊(cè)賬號(hào)才可以登錄系統(tǒng),當(dāng)游客用戶輸入合法的用戶名之后,需要填寫(xiě)用戶登錄的密碼并確認(rèn)輸入密碼,單擊注冊(cè)按鈕之后,系統(tǒng)會(huì)提示“注冊(cè)成功”這樣才算用戶注冊(cè)成功。當(dāng)游客用戶2次輸入的密碼不一致時(shí),系統(tǒng)會(huì)提示用戶兩次密碼不一致,請(qǐng)重新輸入密碼。注冊(cè)測(cè)試用例如表6-1所示。表6-1注冊(cè)測(cè)試用例測(cè)試模塊用戶注冊(cè)模塊測(cè)試測(cè)試目的測(cè)試當(dāng)注冊(cè)信息輸入不符合要求時(shí),系統(tǒng)是否能進(jìn)行相應(yīng)處理并給出提示。測(cè)試方法黑盒測(cè)試測(cè)試數(shù)據(jù)1不輸入用戶名和密碼,直接點(diǎn)擊注冊(cè)。2輸入未注冊(cè)過(guò)的用戶名。例如:abcd3輸入正確用戶名,兩次密碼不一樣。例如:用戶名abcdefg、密碼000,確認(rèn)密碼111預(yù)期結(jié)果1界面不跳轉(zhuǎn),彈出對(duì)話框,提示用戶對(duì)輸入必填項(xiàng)進(jìn)行輸入。2界面跳轉(zhuǎn),彈出對(duì)話框,提示用戶注冊(cè)成功。3界面不跳轉(zhuǎn),彈出對(duì)話框,提示兩次密碼不一致。實(shí)際結(jié)果與預(yù)想一致。結(jié)論注冊(cè)模塊實(shí)現(xiàn)了基本的異常輸入應(yīng)對(duì)。6.1.2登錄測(cè)試在登錄模塊中測(cè)試的主要目的是為了測(cè)試當(dāng)用戶輸入用戶名及密碼,單擊“登錄”按鈕之后,系統(tǒng)是否可以正常跳轉(zhuǎn)進(jìn)入系統(tǒng)首頁(yè)。登錄測(cè)試用例如表6-2所示。表6-2登錄測(cè)試用例測(cè)試模塊用戶登錄模塊測(cè)試測(cè)試目的測(cè)試當(dāng)?shù)顷懶畔⑤斎氩环弦髸r(shí),系統(tǒng)是否能給出相應(yīng)的提示。測(cè)試方法黑盒測(cè)試測(cè)試數(shù)據(jù)1不輸入用戶名和密碼,直接點(diǎn)擊登陸。2輸入未注冊(cè)過(guò)的用戶名。例如:abcdefg3輸入正確用戶名,錯(cuò)誤密碼。例如:用戶名abcdefg、密碼0004輸入正確用戶名,正確匹配密碼。例如:用戶名abcdefg、密碼111預(yù)期結(jié)果1界面不跳轉(zhuǎn),彈出對(duì)話框,提示用戶對(duì)輸入必填項(xiàng)進(jìn)行輸入。2界面不跳轉(zhuǎn),彈出對(duì)話框,提示用戶當(dāng)前用戶名尚未注冊(cè)。3界面不跳轉(zhuǎn),彈出對(duì)話框,提示用戶密碼錯(cuò)誤。4界面實(shí)現(xiàn)跳轉(zhuǎn),登陸功能正常進(jìn)行。實(shí)際結(jié)果與預(yù)想一致。結(jié)論登陸模塊實(shí)現(xiàn)了基本的異常輸入應(yīng)對(duì)。6.2集成測(cè)試集成測(cè)試的方案主要如下所述:將系統(tǒng)配置到另一臺(tái)計(jì)算機(jī)上,運(yùn)行出現(xiàn)錯(cuò)誤。修改配置信息后運(yùn)行成功。用戶信息管理模塊的綜合測(cè)試,首先添加一個(gè)新用戶為roess,給該用戶分配一般管理員角色權(quán)限,查看該用戶角色權(quán)限是否合適,保存設(shè)置,以roess身份登錄,查看所擁有權(quán)限?;貧w測(cè)試是重新運(yùn)行功能性和非功能性測(cè)試,以確保先前開(kāi)發(fā)和測(cè)試的軟件在更改后仍能運(yùn)行。在每次對(duì)系統(tǒng)實(shí)現(xiàn)一個(gè)小功能或者對(duì)系統(tǒng)做出一個(gè)小改變的時(shí)候就開(kāi)始測(cè)試是一個(gè)非常好的習(xí)慣,它可以使我們盡早的發(fā)現(xiàn)問(wèn)題或bug和縮小問(wèn)題的范圍,盡早的做出修改和處理,不會(huì)造成問(wèn)題的堆積,從而引發(fā)更多的問(wèn)題,也為以后的測(cè)試減少了工作難度。經(jīng)過(guò)測(cè)試,發(fā)現(xiàn)該系統(tǒng)滿足校園外賣(mài)訂餐平臺(tái)流程的基本工作流程和基本要求,符合預(yù)期想法。第7章總結(jié)經(jīng)過(guò)幾個(gè)月的努力還堅(jiān)持,外賣(mài)訂餐平臺(tái)終于完成了,程序功能模塊能按照需求來(lái)運(yùn)行,能實(shí)現(xiàn)多用戶的迸發(fā)使用,但是系統(tǒng)由于設(shè)計(jì)經(jīng)驗(yàn)以及專業(yè)知識(shí)的局限性,在本系統(tǒng)的開(kāi)發(fā)過(guò)程中,在一些功能方面和業(yè)務(wù)邏輯方面做得還是不夠完善全面,系統(tǒng)在某些方面還存在一些缺陷。因?yàn)樽陨淼脑O(shè)計(jì)功底有限,界面的設(shè)計(jì)布局以及外觀,未達(dá)到預(yù)期的效果,另一方面,系統(tǒng)中的模塊還有一些沒(méi)有考慮到的問(wèn)題。在以往的學(xué)習(xí)過(guò)程中都是小組完成一個(gè)項(xiàng)目,但是此次畢業(yè)設(shè)計(jì)需要獨(dú)立設(shè)計(jì)一個(gè)項(xiàng)目,編碼過(guò)程出現(xiàn)了許多問(wèn)題和困難,在自己看來(lái)正確沒(méi)有錯(cuò)誤的程序但是在運(yùn)行過(guò)程中總會(huì)出現(xiàn)各種各樣的問(wèn)題,找不出出錯(cuò)原因的所在。但這些問(wèn)題往往都是一些簡(jiǎn)單的問(wèn)題,例如標(biāo)點(diǎn)符號(hào)的中英文格式,自己的一些不好的編程習(xí)慣造成了這些錯(cuò)誤,經(jīng)過(guò)仔細(xì)觀察和同學(xué)的幫助下,這些問(wèn)題才得以解決。以前我們往往在設(shè)計(jì)中只是設(shè)計(jì)一個(gè)模塊或者其中的一部分功能的實(shí)現(xiàn),而這次畢業(yè)設(shè)計(jì)是需要結(jié)合我們四年所學(xué)計(jì)算機(jī)編程知識(shí)來(lái)設(shè)計(jì)一個(gè)完整的系統(tǒng)。在系統(tǒng)開(kāi)發(fā)的過(guò)程中要想自己的設(shè)計(jì)讓用戶體驗(yàn)感良好,就需要我們這些開(kāi)發(fā)者付出成倍的努力。在我的畢業(yè)設(shè)計(jì)中經(jīng)常會(huì)出現(xiàn)一些不明覺(jué)厲的問(wèn)題,每當(dāng)在這個(gè)時(shí)候我的室友就給予了我很大的幫助。目前我所開(kāi)發(fā)的校園外賣(mài)平臺(tái)系統(tǒng)功能較為簡(jiǎn)單,依然存在許多瑕疵,但是這也成為促進(jìn)我不斷努力進(jìn)步的動(dòng)力,我一定會(huì)更加努力在以后的生活中不斷進(jìn)步。

致謝2020年本是歷史長(zhǎng)河中一個(gè)普通的年份,但因?yàn)橐粓?chǎng)突如其來(lái)的疫情將它永遠(yuǎn)地載入史冊(cè)。而這場(chǎng)疫情,也讓我大學(xué)生涯的最后一個(gè)學(xué)期,過(guò)得格外特殊。時(shí)光荏苒,時(shí)間一晃而過(guò),畢業(yè)作品的完成意味我大學(xué)四年的結(jié)束。學(xué)校這個(gè)地方總是離開(kāi)了才開(kāi)始懷念,除了不舍就是還有對(duì)學(xué)校的感恩。感謝太原理工大學(xué),這四年時(shí)間足以改變我的一生。我在設(shè)計(jì)(論文)期間都是在高保祿老師全面、具體指導(dǎo)下完成進(jìn)行的。高老師淵博的學(xué)識(shí)、敏銳的思維、民主而嚴(yán)謹(jǐn)?shù)淖黠L(fēng)使學(xué)生受益非淺,并終生難忘。在高老師的指導(dǎo)下我一遍一遍的修改、一步一步完善自己的系統(tǒng),使得自己的作品更加完善。感謝李寧輔導(dǎo)老師在畢業(yè)設(shè)計(jì)工作中給予的幫助。在這里一定要感謝我的父母,他們一直是我求學(xué)之路上最強(qiáng)大的支撐,無(wú)論我成功與否,他們總是對(duì)我施以鼓勵(lì)的言語(yǔ),我一定會(huì)繼續(xù)努力,不辜負(fù)他們的期望。我還想說(shuō)的是感謝自己,如果我有時(shí)光機(jī)能穿越回去,一定要為當(dāng)年在困境中苦苦堅(jiān)持的自己點(diǎn)個(gè)贊,告訴他“你真的很棒”。四年的大學(xué)時(shí)光里,我收獲頗豐,這背后承載著多少人的默默付出。論文封筆之時(shí),我的感激要更勝過(guò)于欣喜。這篇論文給我的大學(xué)劃上了圓滿的句號(hào)。最后,衷心感謝所有參加抗擊新型冠狀病毒疫情的一線工作人員!我的致謝寫(xiě)完了,我的大學(xué)生活也真的要結(jié)束了。參考文獻(xiàn)[1]王實(shí)倩.我國(guó)餐飲O2O模式的發(fā)展?fàn)顩r探究[J].中國(guó)商論.2015(Z1)[2]徐志凱,黃哲,黎俊杰.跨境電商網(wǎng)站系統(tǒng)的分析與設(shè)計(jì)[J].軟件工程.2019(03)[3]唐滔.基于Web前端開(kāi)發(fā)技術(shù)的電商網(wǎng)站設(shè)計(jì)與實(shí)現(xiàn)[J].商業(yè)故事.2018(17)[4]岳紹敏.王國(guó)春.董亞則.成錦暉.基于SpringMVC框架的電商平臺(tái)的研究與設(shè)計(jì).長(zhǎng)春工業(yè)大學(xué)計(jì)算機(jī)科學(xué)與工程.2014(07)[5]費(fèi)揚(yáng),杜慶治.基于JSP的大學(xué)城外賣(mài)網(wǎng)的設(shè)計(jì)與實(shí)現(xiàn)[J].軟件.2017(07)3[6]劉冰冰,郭群.綜合型外賣(mài)網(wǎng)站設(shè)計(jì)與實(shí)現(xiàn)[J].軟件工程.2016(02)[7]陸榮幸,郁洲,阮永良,王志強(qiáng).J2EE平臺(tái)上MVC設(shè)計(jì)模式的研究與實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用研究.2003(03)[8]XiongLi,XiaodongZhao,Wangtu(Ato)Xu,WeiPu.Measuringeaseofuseofmobileapplicationsine-commerceretailingfromtheperspectiveofconsumeronlineshoppingbehaviourpatterns[J].JournalofRetailingandConsumerServices,2020,55.[9]JuFengJuan;TheApplicationofServletandJavabeanIntheDesignofBlog;JiangxiBlueskyUniversity;2011[10]LeonardPutra;Michael;Yudishtira;DesignandImplementationofWebBasedHomeElectricalApplianceMonitoring,Diagnosing,andControllingSystemBayuKanigoroProcediaComputerScience2015-10.1016/cs.2015.07.335[11]HanQin.DesignofCampusComprehensiveServiceSystemBasedonAndroid[C].AdvancedScienceandIndustryResearchCenter.Proceedingsof2018InternationalConferenceonComputerModeling,SimulationandAlgorithm(CMSA2018).AdvancedScienceandIndustryResearchCenter:ScienceandEngineeringResearchCenter,2018:399-401.外文文獻(xiàn):ThedevelopmentofemployeeinformationmanagementsystemFangWeiWeifangUniversityofSciencean

溫馨提示

  • 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)論