版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
PAGEIII基于JSP美食網(wǎng)站的開(kāi)發(fā)與實(shí)現(xiàn)摘要當(dāng)今社會(huì)的生活節(jié)奏越來(lái)越快,人們對(duì)餐飲的要求越來(lái)越高,不僅要求色香味俱全,對(duì)餐飲的時(shí)間和方式也有了更高的要求,許多人因?yàn)楣ぷ鞯姆泵Χ鵁o(wú)法享受美味可口的食品。因此,開(kāi)發(fā)一個(gè)美食服務(wù)網(wǎng)就很有必要。本課題在分析了美食服務(wù)網(wǎng)就餐服務(wù)行業(yè)的現(xiàn)狀,針對(duì)餐飲服務(wù)行業(yè)的特殊性,設(shè)計(jì)研發(fā)了一套基于Web技術(shù)的桂林洋大學(xué)城美食服務(wù)網(wǎng)站。本系統(tǒng)用戶分為系統(tǒng)管理員、普通用戶以及餐館用戶這三類。管理員模塊的功能主要包括修改登錄密碼、餐館信息管理、用戶信息管理和菜品信息管理;普通用戶模塊的功能主要包括用戶注冊(cè)與登錄、瀏覽菜品信息、購(gòu)買菜品;餐館用戶模塊的功能主要包括菜品信息管理和銷售信息管理。本系統(tǒng)前臺(tái)主要使用JSP作為開(kāi)發(fā)語(yǔ)言,后臺(tái)使用MySQL作為數(shù)據(jù)庫(kù)管理系統(tǒng),開(kāi)發(fā)環(huán)境是MyEclipse,服務(wù)器采用tomcat,開(kāi)發(fā)出的一個(gè)B/S架構(gòu)的美食服務(wù)網(wǎng)。關(guān)鍵詞:JSP;數(shù)據(jù)庫(kù);B/S模式
AbstractThepaceoflifeintoday'ssocietyisgettingfasterandfaster.Peoplearebecomingmoreandmoredemandingforfoodandbeverage.Theynotonlyrequirefullcolorandfragrance,butalsohavehigherrequirementsforthetimeandwayofcatering.Manypeopleareunabletoenjoythedeliciousfoodbecauseoftheirbusywork.Therefore,itisnecessarytodevelopafoodservicenetwork.Inthispaper,thestatusofthefoodserviceindustryinthefoodservicenetworkisanalyzed.Inviewoftheparticularityofthecateringserviceindustry,asetofwebsiteforthefoodserviceoftheGuilinOceanUniversityCityBasedontheWebtechnologyisdesignedanddeveloped.Theusersofthesystemaredividedintothreecategories:systemadministrator,ordinaryuserandrestaurantuser.Thefunctionoftheadministratormodulemainlyincludestherevisionoftheloginpassword,therestaurantinformationmanagement,theuserinformationmanagementandthefoodinformationmanagement.Thefunctionoftheordinaryusermodulemainlyincludestheuserregistrationandlogin,thebrowsingofthedishes,andthepurchaseofthedishes;thefunctionoftherestaurantusermoduleincludestheinformationmanagementofthedishesandthemanagementofthesalesinformation.ThesystemfrontdeskmainlyusesJSPasthedevelopmentlanguage,thebackgroundusesMySQLasthedatabasemanagementsystem,thedevelopmentenvironmentistheMyEclipse,theserverusesthetomcat,anddevelopsaB/Sarchitecturegourmetservicenetwork.Keywords:JSP;Database;B/Sstructure
目錄TOC\o"1-2"\h\z\t"標(biāo)題3,3,標(biāo)題4,4"2935摘要 I98601緒論 1240841.1課題背景與意義 146511.2開(kāi)發(fā)工具及技術(shù) 1181161.2.1開(kāi)發(fā)工具 1212031.2.2JSP技術(shù) 271071.2.3JavaScript 3311111.3軟硬件需求 3303892系統(tǒng)分析 4151512.1可行性分析 4315852.1.1技術(shù)可行性 432852.1.2經(jīng)濟(jì)可行性 4126832.1.3操作可行性 427242.1.4法律可行性 4292742.2功能模塊分析 5184702.3設(shè)計(jì)的基本思想 9118172.4性能需求 9233892.4.1系統(tǒng)的安全性 9137542.4.2數(shù)據(jù)的完整性 9168022.5界面需求 9189783數(shù)據(jù)庫(kù)設(shè)計(jì) 11298023.1數(shù)據(jù)庫(kù)的分析與設(shè)計(jì) 1143253.1.1數(shù)據(jù)庫(kù)的概念結(jié)構(gòu)設(shè)計(jì) 11300623.1.2數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)設(shè)計(jì) 14138473.1.3數(shù)據(jù)庫(kù)的連接原理 1653133.2中文亂碼問(wèn)題處理 1852564系統(tǒng)功能實(shí)現(xiàn) 2122594.1用戶注冊(cè)功能 21154244.2登陸頁(yè)面設(shè)計(jì) 22285464.3管理員首頁(yè) 24127514.4修改登錄密碼 25185884.5菜品類別管理 25218324.5.1添加類別信息 25157434.5.2菜品類別信息管理 2655934.6菜品信息管理 26263034.7用戶信息管理 27326064.8等待審核餐館信息管理 2720434.9已經(jīng)審核餐館信息管理 27228894.10餐館管理菜品信息 28151684.8.1添加菜品信息 2829534.8.2用戶管理菜品信息 2842744.11銷售信息管理 28227504.12用戶購(gòu)買菜品功能 2931554.13用戶訂單管理 31218195系統(tǒng)測(cè)試 33315145.1系統(tǒng)測(cè)試目的與意義 33185335.2測(cè)試過(guò)程 3386415.2.1主頁(yè)面的登錄模塊測(cè)試 3361865.3其他錯(cuò)誤 346889結(jié)論 3522637參考文獻(xiàn) 36PAGE371緒論1.1課題背景與意義民以食為天。當(dāng)今社會(huì)的生活節(jié)奏越來(lái)越快,人們對(duì)餐飲美食的要求越來(lái)越高,不僅要求色香味俱全,對(duì)餐飲的時(shí)間和方式也有了更高的要求,許多人因?yàn)楣ぷ鞯姆泵Χ鵁o(wú)法享受美味可口的食品。餐飲業(yè)美食是一種個(gè)性化、多樣化的服務(wù)產(chǎn)業(yè),隨著網(wǎng)絡(luò)技術(shù)以及電子商務(wù)的發(fā)展和普及,人們的消費(fèi)方式和消費(fèi)理念發(fā)生了很大的變化,足不出戶的網(wǎng)上購(gòu)物已經(jīng)成為許多人的一種生活方式,同時(shí)網(wǎng)絡(luò)預(yù)約就餐逐漸走入人們的生活,并被廣泛接受。網(wǎng)上訂購(gòu)就餐業(yè)務(wù)還處于形成期,成長(zhǎng)空間還很大。趁勢(shì)而入,建立起特色鮮明的美食服務(wù)網(wǎng)站,將會(huì)有很大的發(fā)展空間,桂林洋美食服務(wù)網(wǎng)站正是這樣一個(gè)系統(tǒng)。1.2開(kāi)發(fā)工具及技術(shù)1.2.1開(kāi)發(fā)工具此次設(shè)計(jì)主要采用MyEclipse加Tomcat后臺(tái)服務(wù)器進(jìn)行,設(shè)計(jì)過(guò)程中頁(yè)面主要使用JSP技術(shù)完成,下面對(duì)MyEclipse、Tomcat進(jìn)行簡(jiǎn)要介紹。MyEclipseMyEclipse,是一個(gè)十分優(yōu)秀的用于開(kāi)發(fā)Java,J2EE的Eclipse插件集合,MyEclipse的功能非常強(qiáng)大,支持也十分廣泛,尤其是對(duì)各種開(kāi)元產(chǎn)品的支持十分不錯(cuò)。MyEclipse企業(yè)級(jí)工作平臺(tái)(MyEclipseEnterpriseWorkbench,簡(jiǎn)稱MyEclipse)是對(duì)EclipseIDE的擴(kuò)展,利用它我們可以在數(shù)據(jù)庫(kù)和JavaEE的開(kāi)發(fā)、發(fā)布,以及應(yīng)用程序服務(wù)器的整合方面極大的提高工作效率。它是功能豐富的JavaEE集成開(kāi)發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測(cè)試和發(fā)布功能,完整支持HTML,Struts,JSP,CSS,Javascript,SQL,Hibernate。TomcatTomcat是一個(gè)小型的輕量級(jí)應(yīng)用服務(wù)器,在中小型系統(tǒng)和并發(fā)訪問(wèn)用戶不是很多的場(chǎng)合下被普遍使用,是開(kāi)發(fā)和調(diào)試JSP程序的首選??梢赃@樣認(rèn)為,當(dāng)在一臺(tái)機(jī)器上配置好Apahce服務(wù)器,可利用它響應(yīng)對(duì)HTML頁(yè)面的訪問(wèn)請(qǐng)求。實(shí)際上Tomcat部分是Apache服務(wù)器的擴(kuò)展,但它是獨(dú)立運(yùn)行的,所以當(dāng)運(yùn)行tomcat時(shí),它實(shí)際上作為一個(gè)與Apache獨(dú)立的進(jìn)程單獨(dú)運(yùn)行的。1.2.2JSP技術(shù)JSP技術(shù)使用Java編程語(yǔ)言編寫類XML的tags和scriptlets,來(lái)封裝產(chǎn)生動(dòng)態(tài)網(wǎng)頁(yè)的處理邏輯。網(wǎng)頁(yè)還能通過(guò)tags和scriptlets訪問(wèn)存在于服務(wù)端的資源的應(yīng)用邏輯。JSP將網(wǎng)頁(yè)邏輯與網(wǎng)頁(yè)設(shè)計(jì)和顯示分離,支持可重用的基于組件的設(shè)計(jì),使基于Web的應(yīng)用程序的開(kāi)發(fā)變得迅速和容易。Web服務(wù)器在遇到訪問(wèn)JSP網(wǎng)頁(yè)的請(qǐng)求時(shí),首先執(zhí)行其中的程序段,然后將執(zhí)行結(jié)果連同JSP文件中的HTML代碼一起返回給客戶。插入的Java程序段可以操作數(shù)據(jù)庫(kù)、重新定向網(wǎng)頁(yè)等,以實(shí)現(xiàn)建立動(dòng)態(tài)網(wǎng)頁(yè)所需要的功能。JSP與Servlet一樣,是在服務(wù)器端執(zhí)行的,通常返回給客戶端就是一個(gè)HTML文本,因此客戶端只要有瀏覽器能瀏覽。JSP頁(yè)面由HTML代碼和嵌入其中的Java代碼所組成。服務(wù)器在頁(yè)面被客戶端請(qǐng)求以后對(duì)這些Java代碼進(jìn)行處理,然后將生成的HTML頁(yè)面返回給客戶端的瀏覽器。Servlet是JSP的技術(shù)基礎(chǔ),而且大型的Web應(yīng)用程序的開(kāi)發(fā)需要JavaServlet和JSP配合才能完成。JSP具備了Java技術(shù)的簡(jiǎn)單易用,完全的面向?qū)ο?,具有平臺(tái)無(wú)關(guān)性且安全可靠,主要面向因特網(wǎng)的所有特點(diǎn)。JSP技術(shù)的優(yōu)點(diǎn):(1)一次編寫,到處運(yùn)行。除了系統(tǒng)之外,代碼不用做任何更改。(2)系統(tǒng)的多平臺(tái)支持?;旧峡梢栽谒衅脚_(tái)上的任意環(huán)境中開(kāi)發(fā),在任意環(huán)境中進(jìn)行系統(tǒng)部署,在任意環(huán)境中擴(kuò)展。相比ASP/.net的局限性是顯而易見(jiàn)的。(3)強(qiáng)大的可伸縮性。從只有一個(gè)小的Jar文件就可以運(yùn)行Servlet/JSP,到由多臺(tái)服務(wù)器進(jìn)行集群和負(fù)載均衡,到多臺(tái)Application進(jìn)行事務(wù)處理,消息處理,一臺(tái)服務(wù)器到無(wú)數(shù)臺(tái)服務(wù)器,Java顯示了一個(gè)巨大的生命力。(4)多樣化和功能強(qiáng)大的開(kāi)發(fā)工具支持。Java已經(jīng)有了許多非常優(yōu)秀的開(kāi)發(fā)工具,而且許多可以免費(fèi)得到,并且其中許多已經(jīng)可以順利的運(yùn)行于多種平臺(tái)之下(5)支持服務(wù)器端組件。web應(yīng)用需要強(qiáng)大的服務(wù)器端組件來(lái)支持,開(kāi)發(fā)人員需要利用其他工具設(shè)計(jì)實(shí)現(xiàn)復(fù)雜功能的組件供web頁(yè)面調(diào)用,以增強(qiáng)系統(tǒng)性能。JSP可以使用成熟的JAVABEANS組件來(lái)實(shí)現(xiàn)復(fù)雜商務(wù)功能。內(nèi)部對(duì)象說(shuō)明:request客戶端請(qǐng)求,此請(qǐng)求會(huì)包含來(lái)自GET/POST請(qǐng)求的參數(shù);response網(wǎng)頁(yè)傳回客戶端的響應(yīng);pageContext網(wǎng)頁(yè)的屬性是在這里管理;session與請(qǐng)求有關(guān)的會(huì)話;applicationservlet正在執(zhí)行的內(nèi)容;out用來(lái)傳送響應(yīng)的輸出流;config代碼片段配置對(duì)象;pageJSP網(wǎng)頁(yè)本身;exception針對(duì)錯(cuò)誤網(wǎng)頁(yè),未捕捉的例外1.2.3JavaScriptJavaScript是一種基于對(duì)象和事件驅(qū)動(dòng)并具有相對(duì)安全性的客戶端腳本語(yǔ)言。同時(shí)也是一種廣泛用于客戶端Web開(kāi)發(fā)的腳本語(yǔ)言,常用來(lái)給HTML網(wǎng)頁(yè)添加動(dòng)態(tài)功能,比如響應(yīng)用戶的各種操作。JavaScript的一個(gè)重要功能就是面向?qū)ο蟮墓δ?,通過(guò)基于對(duì)象的程序設(shè)計(jì),可以用更直觀、模塊化和可重復(fù)使用的方式進(jìn)行程序開(kāi)發(fā)。在HTML基礎(chǔ)上,使用Javascript可以開(kāi)發(fā)交互式Web網(wǎng)頁(yè)。Javascript的出現(xiàn)使得網(wǎng)頁(yè)和用戶之間實(shí)現(xiàn)了一種實(shí)時(shí)性的、動(dòng)態(tài)的、交互性的關(guān)系,使網(wǎng)頁(yè)包含更多活躍的元素和更加精彩的內(nèi)容。在本系統(tǒng)中很多地方使用了javascript技術(shù),比如說(shuō),檢驗(yàn)用戶輸入數(shù)據(jù)的有效性,是否重復(fù),是否為空等等。1.3軟硬件需求硬件需求:CPU:Pentium以上計(jì)算機(jī)內(nèi)存:512M以上軟件需求:操作系統(tǒng)版本:WindowsXP/vista/Win7開(kāi)發(fā)工具:MyEclipse6.0.1后臺(tái)服務(wù)器:ApacheTomcat6.0開(kāi)發(fā)語(yǔ)言:Java瀏覽器:IE6.0
2系統(tǒng)分析系統(tǒng)分析就是對(duì)系統(tǒng)從技術(shù)可行性、經(jīng)濟(jì)可行性和操作可行性進(jìn)行分析。對(duì)軟件開(kāi)發(fā)中將要面臨的問(wèn)題及其解決方案進(jìn)行初步設(shè)計(jì)及合理安排,明確開(kāi)發(fā)目標(biāo)。本系統(tǒng)采用的架構(gòu)是mvc模式。2.1可行性分析開(kāi)發(fā)任何一個(gè)系統(tǒng),都會(huì)受到時(shí)間和資源上的限制。因此,在每一個(gè)項(xiàng)目開(kāi)發(fā)之前,都要進(jìn)行可行性分析,可以減少項(xiàng)目的開(kāi)發(fā)風(fēng)險(xiǎn),避免人力、物力和財(cái)力的浪費(fèi)。下面就技術(shù)、經(jīng)濟(jì)、操作和法律四個(gè)方面來(lái)介紹。2.1.1技術(shù)可行性本系統(tǒng)開(kāi)發(fā)工具是MyEclipse和MySQL數(shù)據(jù)庫(kù),開(kāi)發(fā)語(yǔ)言是Java,主要使用了J2EE的技術(shù),java是一種面向?qū)ο缶幊陶Z(yǔ)言,簡(jiǎn)單易學(xué)而且靈活方便。大三時(shí)就學(xué)習(xí)了java課程,本系統(tǒng)總體上開(kāi)發(fā)難度不高,數(shù)據(jù)庫(kù)的設(shè)計(jì)和操作是本系統(tǒng)設(shè)計(jì)的核心。在大學(xué)期間學(xué)習(xí)過(guò)軟件工程,軟件測(cè)試,UML統(tǒng)一建模語(yǔ)言等課程,每個(gè)學(xué)期也會(huì)完成對(duì)應(yīng)的課程設(shè)計(jì),具備一定的系統(tǒng)分析、設(shè)計(jì)和測(cè)試能力。因此,完成系統(tǒng)實(shí)現(xiàn)在技術(shù)上完全具有可行性。2.1.2經(jīng)濟(jì)可行性如今是信息化時(shí)代,信息化管理可以使管理工作更加系統(tǒng)化、快速化、全面化。這樣可以為企業(yè)帶來(lái)較高的工作效益和經(jīng)濟(jì)效益,本系統(tǒng)對(duì)計(jì)算機(jī)配置的要求不高,企業(yè)機(jī)房更換下來(lái)的低配置電腦都可以完全滿足需要,所以在經(jīng)濟(jì)上具有完全的可行性。2.1.3操作可行性本系統(tǒng)操作簡(jiǎn)單,輸入信息頁(yè)面大多數(shù)都是下拉框的選擇形式,在某些頁(yè)面,信息可以自動(dòng)生成,無(wú)需輸入,時(shí)間的輸入也是用的日歷控件,操作簡(jiǎn)便,對(duì)操作人員的要求很低,只需對(duì)WINDOWS操作熟練,所以在技術(shù)上不會(huì)有很大難度。2.1.4法律可行性本系統(tǒng)是自行開(kāi)發(fā)的管理系統(tǒng),是很有實(shí)際意義的系統(tǒng),開(kāi)發(fā)環(huán)境軟件和使用的數(shù)據(jù)庫(kù)都是開(kāi)源代碼,開(kāi)發(fā)這個(gè)系統(tǒng)不同于開(kāi)發(fā)普通的系統(tǒng)軟件,不存在侵權(quán)等問(wèn)題,即法律上是可行的。2.2功能模塊分析根據(jù)需求分析確定該系統(tǒng)劃分為以下幾個(gè)功能模塊:(1)類別信息管理該模塊主要完成對(duì)菜品類別信息的的管理,包括類別信息的查看、添加、刪除操作。該功能的用例圖如圖2-1所示:圖2-1類別信息管理功能用例圖(2)管理員菜品信息功能該管理功能主要完成管理員對(duì)菜品信息的管理,包括菜品信息的查看與刪除操作。該功能的用例圖如圖2-2所示:圖2-2菜品信息管理功能用例圖(3)用戶信息管理功能該管理功能主要完成對(duì)用戶信息的管理,包括用戶信息的查看與刪除操作。該功能的用例圖如圖2-3所示:圖2-3用戶信息管理功能用例圖(4)等待審核餐館信息管理功能該管理功能主要完成管理員對(duì)等待審核餐館信息的管理,包括等待審核餐館信息的查看、審核與刪除操作。該功能的用例圖如圖2-4所示:圖2-4等待審核餐館信息管理功能用例圖(5)已審核餐館信息管理功能該管理功能主要完成管理員對(duì)已審核餐館信息的管理,包括已審核餐館信息的查看與刪除操作。該功能的用例圖如圖2-5所示:圖2-5已審核餐館信息管理功能用例圖(6)餐館菜品信息管理功能該管理功能主要完成餐館對(duì)菜品信息的管理,包括菜品信息的查看、添加與刪除操作。該功能的用例圖如圖2-6所示:圖2-6餐館菜品信息管理功能用例圖(7)銷售信息管理功能該管理功能主要完成餐館對(duì)銷售信息的管理,包括銷售信息的查看、受理與刪除操作。該功能的用例圖如圖2-7所示:圖2-7銷售信息管理功能用例圖系統(tǒng)的功能模塊圖如圖2-8所示:圖2.8系統(tǒng)功能模塊圖2.3設(shè)計(jì)的基本思想設(shè)計(jì)思想遵循以下幾點(diǎn):1.采用B/S模式進(jìn)行開(kāi)發(fā),其優(yōu)點(diǎn)是后臺(tái)與前臺(tái)處理層次分明,而且符合眾多已經(jīng)習(xí)慣網(wǎng)頁(yè)方式的用戶。2.采用面向?qū)ο蟮拈_(kāi)發(fā)與設(shè)計(jì)理念。運(yùn)用面向?qū)ο蠹夹g(shù)的前提是對(duì)整體系統(tǒng)的高度和準(zhǔn)確抽象,通過(guò)它可以保證系統(tǒng)良好的框架,進(jìn)而帶來(lái)產(chǎn)品較強(qiáng)的穩(wěn)定性和運(yùn)行效率。3.采用模塊化設(shè)計(jì)。模塊化設(shè)計(jì)要求將整個(gè)系統(tǒng)劃分成基于小的模塊,有利于代碼的重載,簡(jiǎn)化設(shè)計(jì)和實(shí)現(xiàn)過(guò)程。4.簡(jiǎn)單方便的系統(tǒng)界面。設(shè)計(jì)簡(jiǎn)單友好的系統(tǒng)界面,方便用戶較快的適應(yīng)系統(tǒng)的操作。5.速度優(yōu)先原則。由于此工具最重要的評(píng)測(cè)標(biāo)準(zhǔn)就是速度,因此在設(shè)計(jì)過(guò)程中,具體過(guò)程盡量做到資源占用少,速度快。6.設(shè)計(jì)既要突出重點(diǎn),又要細(xì)致周到。要符合設(shè)計(jì)需求,在有可能改進(jìn)的地方進(jìn)行擴(kuò)充,使系統(tǒng)更適應(yīng)用戶的需要。2.4性能需求2.4.1系統(tǒng)的安全性本在管理權(quán)限上要嚴(yán)格進(jìn)行控制,具體要求如下:想登錄本系統(tǒng)系統(tǒng)進(jìn)行操作,必須有操作權(quán)限,沒(méi)有權(quán)限的用戶不能通過(guò)任何方式登錄系統(tǒng)查看系統(tǒng)的任何信息和數(shù)據(jù),以確保系統(tǒng)的嚴(yán)密性和安全性。2.4.2數(shù)據(jù)的完整性1.各種記錄信息的完整性,信息記錄內(nèi)容不能為空2.各種數(shù)據(jù)間相互聯(lián)系的正確性3.相同數(shù)據(jù)在不同記錄中的一致性2.5界面需求界面設(shè)計(jì)目前已經(jīng)成為評(píng)價(jià)軟件質(zhì)量的一條重要指標(biāo),一個(gè)好的用戶界面可以增加用戶使用系統(tǒng)的信心和興趣,提高工作效率,JSP技術(shù)是用JAVA語(yǔ)言作為腳本語(yǔ)言的,JSP網(wǎng)頁(yè)為整個(gè)服務(wù)器端的JAVA庫(kù)單元提供了一個(gè)接口來(lái)服務(wù)于HTTP的應(yīng)用程序。創(chuàng)建動(dòng)態(tài)頁(yè)面非常方便。用戶界面是指軟件系統(tǒng)與用戶交互的接口,通常包括輸出、輸入、人-機(jī)對(duì)話的界面格式等。1.輸出設(shè)計(jì)輸出是由計(jì)算機(jī)對(duì)輸入的原始信息進(jìn)行加工處理,形成高質(zhì)量的有效信息,并使之具有一定的格式,提供管理者使用,這是輸出設(shè)計(jì)的主要職責(zé)和目標(biāo)。系統(tǒng)設(shè)計(jì)的過(guò)程正好和實(shí)施過(guò)程相反,并不是從輸入設(shè)計(jì)到輸出設(shè)計(jì),而是從輸出設(shè)計(jì)到輸入設(shè)計(jì),這是因?yàn)檩敵霰砀裰苯优c使用者相聯(lián)系,設(shè)計(jì)的出發(fā)點(diǎn)應(yīng)當(dāng)是保證輸出表格方便地為使用者服務(wù),正確及時(shí)反映和組成用于各部門的有用信息。輸出設(shè)計(jì)的原則是考慮既要全面反映不同管理層的各項(xiàng)需要,又要言簡(jiǎn)意賅,不要將用戶需要和不需要的都提供給用戶。2.輸入設(shè)計(jì)輸入數(shù)據(jù)的收集和錄入是比較費(fèi)事的,需要大量的人力和一定設(shè)備,并且容易出錯(cuò)。如果輸入系統(tǒng)的數(shù)據(jù)有錯(cuò)誤,則處理后的輸出將擴(kuò)大這些錯(cuò)誤,因此輸入數(shù)據(jù)的正確性對(duì)于整個(gè)系統(tǒng)質(zhì)量的好壞是具有決定性意義的。輸入設(shè)計(jì)的原則有如下幾點(diǎn):1)輸入量應(yīng)保持在能滿足處理要求的最低限度。設(shè)計(jì)中可采用設(shè)置字段初值,下拉式數(shù)據(jù)窗口等方式盡量減少用戶鍵盤輸入量。輸入量越少,錯(cuò)誤率就越少,數(shù)據(jù)準(zhǔn)備時(shí)間也減少。2)輸入的準(zhǔn)備及輸入過(guò)程應(yīng)盡量容易進(jìn)行,從而減少錯(cuò)誤的發(fā)生。3)應(yīng)盡量早對(duì)輸入數(shù)據(jù)進(jìn)行檢查(盡量接近原數(shù)據(jù)發(fā)生點(diǎn)),以便使錯(cuò)誤及時(shí)得到更正。4)輸入數(shù)據(jù)盡早地用其處理所需的形式被記錄,以避免數(shù)據(jù)由一種介質(zhì)轉(zhuǎn)移到另一種介質(zhì)時(shí)需要轉(zhuǎn)錄而可能發(fā)生的錯(cuò)誤。
3數(shù)據(jù)庫(kù)設(shè)計(jì)3.1數(shù)據(jù)庫(kù)的分析與設(shè)計(jì)計(jì)算機(jī)信息系統(tǒng)以數(shù)據(jù)庫(kù)為核心,在數(shù)據(jù)庫(kù)管理系統(tǒng)的支持下,進(jìn)行信息的收集、整理、存儲(chǔ)、檢索、更新、加工、統(tǒng)計(jì)和傳播等操作。數(shù)據(jù)庫(kù)已經(jīng)成為現(xiàn)在信息系統(tǒng)等計(jì)算機(jī)系統(tǒng)的基礎(chǔ)與核心部分。數(shù)據(jù)庫(kù)設(shè)計(jì)的好壞直接影響到整個(gè)系統(tǒng)的質(zhì)量和效率。數(shù)據(jù)庫(kù)的設(shè)計(jì)一般經(jīng)過(guò)規(guī)劃。需求分析、概念設(shè)計(jì)、邏輯設(shè)計(jì)、物理設(shè)計(jì)5個(gè)步驟。3.1.1數(shù)據(jù)庫(kù)的概念結(jié)構(gòu)設(shè)計(jì)概念設(shè)計(jì)是指在數(shù)據(jù)分析的基礎(chǔ)上自底向上的建立整個(gè)系統(tǒng)的數(shù)據(jù)庫(kù)概念結(jié)構(gòu),從用戶的角度進(jìn)行視圖設(shè)計(jì),然后將視圖集成,最后對(duì)集成的結(jié)構(gòu)分析優(yōu)化得到最后結(jié)果。數(shù)據(jù)庫(kù)的概念結(jié)構(gòu)設(shè)計(jì)采用實(shí)體—聯(lián)系(E-R)模型設(shè)計(jì)方法。E-R模型法的組成元素有:實(shí)體、屬性、聯(lián)系,E-R模型用E-R圖表示,是提示用戶工作環(huán)境中所涉及的事物,屬性則是對(duì)實(shí)體特性的描述。概念設(shè)計(jì)的目標(biāo)是產(chǎn)生反映企業(yè)組織信息要求的數(shù)據(jù)庫(kù)概念結(jié)構(gòu),即概念模式。概念模式是獨(dú)立于數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu),獨(dú)立于支持?jǐn)?shù)據(jù)庫(kù)的DBMS,不依賴于計(jì)算機(jī)系統(tǒng)的,根據(jù)以上對(duì)數(shù)據(jù)庫(kù)的需求分析,并結(jié)合系統(tǒng)概念模型的特點(diǎn)及建立方法,建立E-R模型圖。(1)管理員信息實(shí)體E-R圖:實(shí)體間關(guān)系屬性實(shí)體實(shí)體間關(guān)系屬性實(shí)體圖3.1管理員E-R圖(2)用戶信息實(shí)體E-R圖圖3.2用戶信息實(shí)體E-R圖(3)類別信息E-R圖圖3.3類別信息實(shí)體E-R圖(4)餐館信息實(shí)體E-R圖圖3.4餐館信息實(shí)體E-R圖 (5)菜品信息E-R圖圖3.5菜品信息實(shí)體E-R圖(6)訂單信息實(shí)體E-R圖圖3.6訂單信息實(shí)體E-R圖(7)購(gòu)物車信息實(shí)體屬性圖如圖3.7所示:圖3.7購(gòu)物車信息實(shí)體屬性圖3.1.2數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)設(shè)計(jì)我們知道,數(shù)據(jù)庫(kù)概念模型獨(dú)立于任何特定的數(shù)據(jù)庫(kù)管理系統(tǒng),因此,需要根據(jù)具體使用的數(shù)據(jù)庫(kù)管理系統(tǒng)的特點(diǎn)進(jìn)行轉(zhuǎn)換。即轉(zhuǎn)化為按計(jì)算機(jī)觀點(diǎn)處理的邏輯關(guān)系模型,E-R模型向關(guān)系數(shù)據(jù)庫(kù)模型轉(zhuǎn)換應(yīng)遵循下列原則:*每一個(gè)實(shí)體要轉(zhuǎn)換成一個(gè)關(guān)系*所有的主鍵必須定義非空(NOTNULL)*對(duì)于二元聯(lián)系應(yīng)按照一對(duì)多、弱對(duì)實(shí)、一對(duì)一、多對(duì)多等聯(lián)系來(lái)定義外鍵。(1)管理員信息表(t_admin)管理員信息表主要用于保存系統(tǒng)管理員的信息,主要字段包括:管理員ID、登陸賬號(hào)、登陸密碼。表3.1管理員信息表(t_admin)列名數(shù)據(jù)類型長(zhǎng)度允許空是否主鍵說(shuō)明userIdint10否是管理員IDuserNamevarchar50否否登陸賬號(hào)userPwvarchar50否否登陸密碼(2)用戶信息表(t_user)普通用戶信息表主要保存普通用戶的相關(guān)信息。表3.2普通用戶信息表(t_user)列名數(shù)據(jù)類型長(zhǎng)度允許空是否主鍵說(shuō)明user_idint10否是用戶IDuser_namevarchar50否否姓名user_pwvarchar50否否密碼user_realnamevarchar50否否帳號(hào)user_addressint10否否地址user_telvarchar50否否電話user_emailvarchar50否否郵箱(3)菜品類別信息表主要是記錄了菜品類別的基本信息,其中ID是主鍵,表結(jié)構(gòu)如圖3.3所示。表3.3類別信息表(t_catelog)列名數(shù)據(jù)類型長(zhǎng)度允許空是否主鍵說(shuō)明catalog_idint4否是類別IDcatalog_namevarchar50否否名稱(4)餐館信息表主要記錄了餐館的基本信息,表結(jié)構(gòu)如表3.4所示。表3.4餐館信息表(t_dianpu)列名數(shù)據(jù)類型長(zhǎng)度允許空是否主鍵說(shuō)明idint4否是餐館IDloginnamevarchar50否否帳號(hào)loginpwvarchar50否否密碼mingchengvarchar50否否餐館名稱zhuyingvarchar50否否主營(yíng)產(chǎn)品lianxirenvarchar50否否聯(lián)系人dianhuavarchar50否否電話taivarchar50否否狀態(tài)(5)菜品信息表主要記錄了菜品的相關(guān)信息,表結(jié)構(gòu)如表3.5所示。表3.5菜品信息表(t_goods)列名數(shù)據(jù)類型長(zhǎng)度允許空是否主鍵說(shuō)明goods_idint10否是菜品IDgoods_namevarchar50否否名稱goods_miaoshuvarchar50否否介紹goods_picvarchar10否否圖片dianpu_idint10否否餐館IDgoods_tejiavarchar50否否價(jià)格goods_catelog_idint50否否類別ID(6)訂單信息表(t_order)訂單信息表主要保存訂單的相關(guān)信息。表3.6訂單信息表(t_order)列名數(shù)據(jù)類型長(zhǎng)度允許空是否主鍵說(shuō)明order_idint10否是訂單IDorder_bianhaovarchar50否否編號(hào)order_datevarchar50否否時(shí)間order_fukuanfangshivarchar50否否付款方式order_songhuodizhivarchar50否否送貨地址order_jinedecimal9(18,2)否否金額order_user_iddecimal9(18,2)否否用戶ID(7)購(gòu)物車信息表(t_orderitem)購(gòu)物車信息表主要保存購(gòu)物車的相關(guān)信息。表3.7購(gòu)物車信息表(t_orderitem)列名數(shù)據(jù)類型長(zhǎng)度允許空是否主鍵說(shuō)明orderItem_idint10否是購(gòu)物車IDorder_idint10否否用戶IDgoods_idint10否否商品IDgoods_quantityint10否否商品數(shù)量ztvarchar10否否狀態(tài)3.1.3數(shù)據(jù)庫(kù)的連接原理采用JDBC連接數(shù)據(jù)庫(kù)的方式,只需在工程中導(dǎo)入對(duì)應(yīng)數(shù)據(jù)庫(kù)的jar包,就可以方便的對(duì)數(shù)據(jù)庫(kù)進(jìn)行連接,在程序中,用Class.forName()方法來(lái)加載驅(qū)動(dòng)程序,在用DriverManager的getConnection()方法就可以創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)連接。程序采用的是DAO模式來(lái)操作數(shù)據(jù)庫(kù),DAO(DataAccessObject,數(shù)據(jù)訪問(wèn)對(duì)象),是Java編程中的一種經(jīng)典模式,已被廣泛應(yīng)用,也是J2EE架構(gòu)中持久層框架的基礎(chǔ)知識(shí),基于分層次式的軟件架構(gòu)來(lái)實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的訪問(wèn)操作。DAO模式的主要思想就是從抽象數(shù)據(jù)源獲取與操縱數(shù)據(jù)的方法。抽象數(shù)據(jù)的含義就是編寫應(yīng)用程序的程序員不必關(guān)心數(shù)據(jù)庫(kù)的物理位置,已經(jīng)是何種數(shù)據(jù)庫(kù),只需使用封裝數(shù)據(jù)庫(kù)中表示記錄的數(shù)據(jù)對(duì)象即可。其思想如圖3.10所示:封裝使用封裝使用DataSourceDataAccessObjectBusinessObjectDataSourceDataAccessObjectBusinessObject創(chuàng)建/使用獲取/修改創(chuàng)建/使用獲取/修改DataTransferObjectDataTransferObject圖3.10DAO模式類圖圖中BussinessObject是業(yè)務(wù)對(duì)象,是使用DAO模式的客戶端;DataTransferObject數(shù)據(jù)傳輸對(duì)象,在應(yīng)用程序不同層次之間傳輸對(duì)象,在一個(gè)分布式應(yīng)用程序中,通??梢蕴岣哒淼男阅?;DataObjectAcces數(shù)據(jù)輸入/輸出對(duì)象封裝了對(duì)數(shù)據(jù)源的一些基本操作;DataSource指的是數(shù)據(jù)源。可以從圖中看出,DAO模式分離了業(yè)務(wù)邏輯和數(shù)據(jù)羅即將,是的編寫的軟件具有良好的層次式體系結(jié)構(gòu)。本系統(tǒng)為了方便數(shù)據(jù)庫(kù)的操作,主要使用DBContent的對(duì)象來(lái)接一個(gè)數(shù)據(jù)庫(kù)(建立一個(gè)類DBContent),代碼如下:publicDBContent(){StringCLASSFORNAME="com.mysql.jdbc.Driver";//連接數(shù)據(jù)庫(kù)的驅(qū)動(dòng) Stringurl="jdbc:mysql://localhost:3306/db_msfw?Unicode=true&haracterEncoding=utf-8";//連接數(shù)據(jù)庫(kù)的用戶名 Stringpassword="root";//連接數(shù)據(jù)庫(kù)的密碼 try{ Class.forName(CLASSFORNAME); con=DriverManager.getConnection(url,user,password);//加載數(shù)據(jù)庫(kù)的驅(qū)動(dòng) stmt=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); } catch(Exceptionex){ ex.printStackTrace(); } } 在程序需要連接數(shù)據(jù)庫(kù)的地方,只需要生成一個(gè)DBConnet的對(duì)象,就可以對(duì)數(shù)據(jù)庫(kù)進(jìn)行連接并操作。3.2中文亂碼問(wèn)題處理在程序中經(jīng)常會(huì)遇到中文亂碼的情況,如果手動(dòng)的在servlet和jsp頁(yè)面進(jìn)行設(shè)置,相當(dāng)麻煩。因此,在程序的開(kāi)始就寫了一個(gè)過(guò)濾器SetCharacterEncodingFilter。在web.xml中配置:<filter><filter-name>SetCharacterEncodingFilter</filter-name><filter-class>myweb.util.filter.SetCharacterEncodingFilter</filter-class><init-param><param-name>encoding</param-name><param-value>gb2312</param-value></init-param></filter><filter-mapping><filter-name>SetCharacterEncodingFilter</filter-name><url-pattern>/*</url-pattern>//*表示工程下所有的頁(yè)面都會(huì)有此過(guò)濾器的處理</filter-mapping>對(duì)應(yīng)的SetCharacterEncodingFilter.java文件中的重要代碼,在初始化init()方法中定義:publicvoidinit(FilterConfigfilterConfig)throwsServletException{ this.filterConfig=filterConfig;this.encoding=filterConfig.getInitParameter("encoding");Stringvalue=filterConfig.getInitParameter("ignore");}在工具包util包中同樣定義了DataFormate類來(lái)處理字符轉(zhuǎn)換:publicstaticStringtoUni(StringgbStr){StringuniStr="";/*把字符串轉(zhuǎn)換成uincode編碼*/if(gbStr==null){gbStr="";}try{byte[]tempByte=gbStr.getBytes("GB2312");uniStr=newString(tempByte,"ISO8859_1");}catch(Exceptionex){}returnuniStr;}/*把字符串轉(zhuǎn)換成Utf8編碼*/publicstaticStringtoUtf8String(Strings){StringBuffersb=newStringBuffer();for(inti=0;i<s.length();i++){charc=s.charAt(i);if(c>=0&&c<=255){sb.append(c);}else{byte[]b;try{b=Character.toString(c).getBytes("utf-8");}catch(Exceptionex){System.out.println(ex);b=newbyte[0];}for(intj=0;j<b.length;j++){intk=b[j];if(k<0){k+=256;}sb.append("%"+Integer.toHexString(k).toUpperCase());}} returnsb.toString();}
4系統(tǒng)功能實(shí)現(xiàn)在管理信息系統(tǒng)的生命周期中,僅過(guò)了需求分析、系統(tǒng)設(shè)計(jì)等階段之后,便開(kāi)始了系統(tǒng)實(shí)施階段。在系統(tǒng)分析和設(shè)計(jì)階段,系統(tǒng)開(kāi)發(fā)工作主要是集中在邏輯、功能和技術(shù)設(shè)計(jì)上,系統(tǒng)實(shí)施階段要繼承此前面各個(gè)階段的工作成果,將技術(shù)設(shè)計(jì)轉(zhuǎn)化為物理實(shí)現(xiàn),因此系統(tǒng)實(shí)施的成果是系統(tǒng)分析和設(shè)計(jì)階段的結(jié)晶。4.1用戶注冊(cè)功能1.描述:系統(tǒng)的普通用戶和餐館用戶通過(guò)自行注冊(cè)生成,在系統(tǒng)首頁(yè)點(diǎn)擊餐館注冊(cè)或買家注冊(cè)菜單,系統(tǒng)跳轉(zhuǎn)到對(duì)應(yīng)的注冊(cè)頁(yè)面。在餐館用戶注冊(cè)頁(yè)面中,用戶需要填寫帳號(hào)、密碼、餐館名稱、主營(yíng)產(chǎn)品、聯(lián)系人以及電話等信息,在買家用戶注冊(cè)頁(yè)面中,用戶需要輸入帳號(hào)、密碼、姓名、住址、郵箱以及電話等信息。其中密碼默認(rèn)為000000,密碼和年齡只能輸入數(shù)字格式,在這里是通過(guò)正則表達(dá)式對(duì)輸入類型進(jìn)行約束,性別默認(rèn)為男。點(diǎn)擊重置按鈕,清空所填數(shù)據(jù),點(diǎn)擊注冊(cè)按鈕完成注冊(cè)。是否為空是通過(guò)form表單中的onsubmit="returncheckForm()來(lái)檢查。2.程序運(yùn)行效果圖如圖4.1、4.2所示:圖4.1餐館用戶注冊(cè)頁(yè)面設(shè)計(jì)圖4.2買家用戶注冊(cè)頁(yè)面設(shè)計(jì)4.2登陸頁(yè)面設(shè)計(jì)1.描述:為了保證系統(tǒng)的安全性,系統(tǒng)管理員用戶要使用本系統(tǒng)必須先登陸到系統(tǒng)中,普通用戶在進(jìn)行留言等操作也需要登錄系統(tǒng)。用戶登錄采用AJAX方式進(jìn)行驗(yàn)證,先是在前臺(tái)獲取用戶輸入的登錄賬號(hào)、密碼以及登錄類型,點(diǎn)擊登錄后,通過(guò)AJAX方式,后臺(tái)異步進(jìn)行驗(yàn)證,實(shí)現(xiàn)頁(yè)面無(wú)刷新的用戶登錄。2.程序運(yùn)行效果圖如圖4.3、4.4所示:圖4.3管理員和餐館用戶登陸頁(yè)面設(shè)計(jì)圖4.3買家用戶登陸頁(yè)面設(shè)計(jì)3.在登陸頁(yè)面輸入用戶名和密碼之后,點(diǎn)擊登錄按鈕,跳轉(zhuǎn)到登陸的service中,在該service中會(huì)對(duì)用戶名,密碼進(jìn)行判斷,如果正確提示“通過(guò)驗(yàn)證”,進(jìn)入到管理界面,如果錯(cuò)誤則提示“用戶名和密碼不正確”,頁(yè)面調(diào)轉(zhuǎn)到登陸頁(yè)。loginservice關(guān)鍵代碼:Stringsql="select*fromt_adminwhereuserName=?anduserPw=?";Object[]params={userName,userPw};DBmydb=newDB();mydb.doPstm(sql,params);try{ ResultSetrs=mydb.getRs(); booleanmark=(rs==null||!rs.next()?false:true); if(mark==false) { result="no"; } else { result="yes"; TAdminadmin=newTAdmin(); admin.setUserId(rs.getInt("userId")); admin.setUserName(rs.getString("userName")); admin.setUserPw(rs.getString("userPw")); WebContextctx=WebContextFactory.get(); HttpSessionsession=ctx.getSession(); session.setAttribute("userType",0); session.setAttribute("admin",admin); } rs.close(); } catch(SQLExceptione) { System.out.println("登錄失?。?); e.printStackTrace(); } finally { mydb.closed();}4.3管理員首頁(yè)1.描述:管理員主頁(yè)面:左方頁(yè)面展示了管理員可操作的功能菜單,進(jìn)入相關(guān)的管理頁(yè)面可以鏈接到子菜單,每個(gè)管理模塊下面都有相應(yīng)的子菜單。2.程序運(yùn)行效果圖如圖4.4所示:圖4.4管理員主頁(yè)面在每個(gè)jsp頁(yè)面將會(huì)對(duì)相關(guān)用戶進(jìn)行攔截操作,這樣可以提高安全性,防止用戶不經(jīng)過(guò)登陸頁(yè)面而進(jìn)入任何子菜單頁(yè)面:if(session.getAttribute("user")==null){out.print("<script>alert('請(qǐng)先登錄!');window.open('../index.jsp','_self')</script>");}4.4修改登錄密碼管理員修改登錄密碼:管理員成功登錄系統(tǒng)之后,點(diǎn)擊左側(cè)菜單“修改登錄密碼”,系統(tǒng)跳轉(zhuǎn)到修改登錄密碼子界面,在這里需要輸入正確的原密碼和設(shè)置新密碼,才能實(shí)現(xiàn)修改操作。程序運(yùn)行效果圖如圖4.5所示:圖4.5修改登錄密碼頁(yè)面4.5菜品類別管理4.5.1添加類別信息1.描述:在此頁(yè)面主要是輸入類別信息,點(diǎn)擊提交按鈕完成信息的添加。如果是沒(méi)有輸入完整的類別信息,比如沒(méi)有輸入類別名稱,系統(tǒng)都會(huì)給出相應(yīng)的錯(cuò)誤提示,不能錄入成功。是否為空是通過(guò)form表單中的onsubmit="returncheckForm()來(lái)檢查。2.程序效果圖如圖4.6所示。圖4.6類別信息錄入4.5.2菜品類別信息管理1.描述:管理員點(diǎn)擊左側(cè)的菜單“菜品類別管理”,頁(yè)面跳轉(zhuǎn)到菜品類別信息管理界面,調(diào)用后臺(tái)的菜品類別信息Action類查詢出所有的菜品類別信息,并把這些信息封轉(zhuǎn)到數(shù)據(jù)集合List中,綁定到request對(duì)象,然后頁(yè)面跳轉(zhuǎn)到相應(yīng)的jsp,顯示出類別信息。點(diǎn)擊刪除按鈕實(shí)現(xiàn)菜品類別信息的刪除操作。2.程序效果圖如下圖4.8所示圖4.8類別信息管理頁(yè)面4.6菜品信息管理1.描述:管理員點(diǎn)擊左側(cè)的菜單“菜品信息管理”,頁(yè)面跳轉(zhuǎn)到菜品信息管理界面,調(diào)用后臺(tái)菜品信息Action類查詢出所有的菜品信息,并把這些信息封轉(zhuǎn)到數(shù)據(jù)集合List中,綁定到request對(duì)象,然后頁(yè)面跳轉(zhuǎn)到相應(yīng)的jsp,顯示出菜品信息,包括名稱、介紹、圖片以及價(jià)格等信息。點(diǎn)擊刪除按鈕完成對(duì)菜品信息的刪除操作,點(diǎn)擊介紹可以查看菜品的詳細(xì)信息,鼠標(biāo)放到查看圖片上可以查看對(duì)應(yīng)菜品的縮略圖。2.程序效果圖如圖4.9所示:圖4.9菜品信息管理4.7用戶信息管理1.描述:管理員點(diǎn)擊左側(cè)的菜單“用戶信息管理”,頁(yè)面跳轉(zhuǎn)到用戶信息管理界面,調(diào)用后臺(tái)的用戶信息Action類查詢出所有的用戶信息,并把這些信息封轉(zhuǎn)到數(shù)據(jù)集合List中,綁定到request對(duì)象,然后頁(yè)面跳轉(zhuǎn)到相應(yīng)的jsp,顯示出用戶信息。包括帳號(hào)、密碼、姓名、年齡、住址、郵箱以及電話等信息,點(diǎn)擊刪除按鈕完成對(duì)用戶信息的刪除操作。2.程序效果圖如下圖4.10所示圖4.10用戶信息管理頁(yè)面4.8等待審核餐館信息管理管理員點(diǎn)擊左側(cè)的菜單“等待審核餐館”,頁(yè)面跳轉(zhuǎn)到等待審核餐館信息管理界面,調(diào)用后臺(tái)的等待審核餐館Action類查詢出所有的等待審核餐館信息,并把這些信息封轉(zhuǎn)到數(shù)據(jù)集合List中,綁定到request對(duì)象,然后頁(yè)面跳轉(zhuǎn)到相應(yīng)的jsp,顯示出等待審核餐館,包括帳號(hào)、密碼、餐館名稱、主營(yíng)產(chǎn)品、聯(lián)系人、聯(lián)系電話以及狀態(tài)等信息,點(diǎn)擊刪除按鈕完成對(duì)等待審核餐館信息的刪除操作。4.9已經(jīng)審核餐館信息管理1.描述:管理員點(diǎn)擊左側(cè)的菜單“已經(jīng)審核餐館”,頁(yè)面跳轉(zhuǎn)到已經(jīng)審核餐館信息管理界面,調(diào)用后臺(tái)的已經(jīng)審核餐館Action類查詢出所有的已經(jīng)審核餐館信息,并把這些信息封轉(zhuǎn)到數(shù)據(jù)集合List中,綁定到request對(duì)象,然后頁(yè)面跳轉(zhuǎn)到相應(yīng)的jsp,顯示出已經(jīng)審核餐館,包括帳號(hào)、密碼、餐館名稱、主營(yíng)產(chǎn)品、聯(lián)系人、聯(lián)系電話以及狀態(tài)等信息,點(diǎn)擊刪除按鈕完成對(duì)已經(jīng)審核餐館信息的刪除操作。2.程序效果圖如下圖4.11所示圖4.11已經(jīng)審核餐館信息管理頁(yè)面4.10餐館管理菜品信息4.8.1添加菜品信息1.描述:在此頁(yè)面主要是添加菜品信息,主要包括填寫或選擇菜品信息的類別、名稱、介紹、價(jià)格以及上傳圖片,點(diǎn)擊提交按鈕完成信息的添加。如果是沒(méi)有輸入完整的菜品信息,比如沒(méi)有輸入名稱,系統(tǒng)都會(huì)給出相應(yīng)的錯(cuò)誤提示,不能錄入成功。輸入數(shù)據(jù)都通過(guò)form表單中定義的方法onsubmit="returncheckForm()"來(lái)檢查,checkForm()函數(shù)中是各種的校驗(yàn)輸入數(shù)據(jù)的方式,是否為空也是通過(guò)form表單中的onsubmit="returncheckForm()來(lái)檢查。2.程序效果圖如圖4.12所示:圖4.12添加菜品作品信息4.8.2用戶管理菜品信息1.描述:餐館用戶點(diǎn)擊左側(cè)的菜單“我的菜品管理”,頁(yè)面跳轉(zhuǎn)到菜品信息管理界面,調(diào)用后臺(tái)菜品信息Action類查詢出所有的菜品信息,并把這些信息封轉(zhuǎn)到數(shù)據(jù)集合List中,綁定到request對(duì)象,然后頁(yè)面跳轉(zhuǎn)到相應(yīng)的jsp,顯示出菜品信息,包括菜品名稱、介紹、圖片以及價(jià)格等信息。點(diǎn)擊刪除按鈕完成對(duì)菜品信息的刪除操作。2.程序效果圖如圖4.13所示:圖4.13用戶作品信息管理4.11銷售信息管理1.描述:餐館用戶點(diǎn)擊左側(cè)的菜單“銷售信息管理”,頁(yè)面跳轉(zhuǎn)到銷售信息管理界面,調(diào)用后臺(tái)銷售信息Action類查詢出所有的銷售信息,并把這些信息封轉(zhuǎn)到數(shù)據(jù)集合List中,綁定到request對(duì)象,然后頁(yè)面跳轉(zhuǎn)到相應(yīng)的jsp,顯示出銷售信息,包括菜品名稱、介紹、圖片以及價(jià)格等信息。點(diǎn)擊刪除按鈕完成對(duì)銷售信息的刪除操作,點(diǎn)擊受理按鈕可以對(duì)訂單進(jìn)行受理操作。2.程序效果圖如圖4.14所示:圖4.14銷售信息管理4.12用戶購(gòu)買菜品功能進(jìn)入首頁(yè)菜品展示,可以瀏覽當(dāng)前網(wǎng)站內(nèi)所有菜品信息??牲c(diǎn)擊相應(yīng)菜品進(jìn)行訂購(gòu),跳轉(zhuǎn)到對(duì)應(yīng)菜品的詳細(xì)頁(yè)面,在該頁(yè)面顯示菜品的詳細(xì)信息以及操作按鈕,填寫訂購(gòu)數(shù)量之后,點(diǎn)擊加入購(gòu)物車按鈕,將訂單交到購(gòu)物車,選購(gòu)?fù)曛簏c(diǎn)擊我的購(gòu)物車菜單,可以對(duì)購(gòu)物車?yán)锏牟似沸畔⑦M(jìn)行管理,比如刪減某個(gè)訂單,也可以直接清空購(gòu)物車,選完菜品之后,可以點(diǎn)擊去收銀臺(tái)鏈接,在此結(jié)算頁(yè)面,主要輸入個(gè)人收貨信息,然后提交訂單結(jié)算賬單。如圖4.15、4.16、4.17、4.18、4.19所示。圖4.15菜品展示信息頁(yè)面圖4.16菜品詳細(xì)信息頁(yè)面圖4.17購(gòu)物車頁(yè)面圖4.18購(gòu)物車結(jié)算頁(yè)面圖4.19訂單提交結(jié)果頁(yè)面4.13用戶訂單管理用戶點(diǎn)擊導(dǎo)航欄的菜單“我的訂單”,頁(yè)面跳轉(zhuǎn)到訂單信息管理界面,調(diào)用后臺(tái)的訂單Action類查詢出所有的訂單信息,并把這些信息封轉(zhuǎn)到數(shù)據(jù)集合List中,綁定到request對(duì)象,然后頁(yè)面跳轉(zhuǎn)到相應(yīng)的jsp,顯示出訂單信息。主要包括訂單號(hào)、金額、下單日期、以及訂單狀態(tài)等信息。點(diǎn)擊刪除按鈕實(shí)現(xiàn)訂單信息的刪除操作,點(diǎn)擊訂單明細(xì)鏈接可以查看對(duì)應(yīng)訂單的詳細(xì)信息。程序效果圖如下圖4.20所示圖4.20用戶訂單管理頁(yè)面
5系統(tǒng)測(cè)試5.1系統(tǒng)測(cè)試目的與意義系統(tǒng)測(cè)試是管理信息系統(tǒng)開(kāi)發(fā)周期中一個(gè)十分重要而漫長(zhǎng)的的階段。其重要性體現(xiàn)在他是保證系統(tǒng)質(zhì)量與可靠性的最后關(guān)口,是對(duì)整個(gè)系統(tǒng)開(kāi)發(fā)過(guò)程包括系統(tǒng)分析、系統(tǒng)設(shè)計(jì)和系統(tǒng)實(shí)現(xiàn)的最終審查。系統(tǒng)測(cè)試的任務(wù)是盡可能徹底的檢查出程序中的錯(cuò)誤,提高軟件系統(tǒng)的可靠性,其目的是檢驗(yàn)系統(tǒng)“做得怎樣”。這這階段又可以分為三個(gè)步驟:模塊測(cè)試,測(cè)試每個(gè)模塊的程序是否正確;組裝測(cè)試,測(cè)試模塊之間的接口是否正確;確認(rèn)測(cè)試,測(cè)試整個(gè)軟件系統(tǒng)是否滿足用戶功能和性能的要求。測(cè)試發(fā)現(xiàn)問(wèn)題之后要經(jīng)過(guò)調(diào)試找出錯(cuò)誤原因和位置,然后進(jìn)行改正。是基于系統(tǒng)整體需求說(shuō)明書的黑盒測(cè)試,應(yīng)覆蓋系統(tǒng)隨偶聯(lián)合的部件,系統(tǒng)測(cè)試是正對(duì)整個(gè)產(chǎn)品系統(tǒng)進(jìn)行的測(cè)試,目的是驗(yàn)證系統(tǒng)是否滿足了需求規(guī)格的定義,找出需求規(guī)格不符合或與之矛盾的地方。5.2測(cè)試過(guò)程在測(cè)試之初,由于將數(shù)據(jù)庫(kù)中的數(shù)據(jù)是隨便輸入,沒(méi)有實(shí)用性,為了使系統(tǒng)更加完善,在系統(tǒng)測(cè)試的過(guò)程中,本系統(tǒng)將一開(kāi)始編程隨便輸入的數(shù)據(jù)全部清理后,輸入了一些有效的測(cè)試數(shù)據(jù),這樣可以更真實(shí)的反映系統(tǒng)的功能實(shí)現(xiàn)情況。這樣不斷發(fā)現(xiàn)問(wèn)題,經(jīng)過(guò)反復(fù)的測(cè)試、調(diào)試,把問(wèn)題一個(gè)個(gè)的解決,最終系統(tǒng)可以正常運(yùn)行。5.2.1主頁(yè)面的登錄模塊測(cè)試測(cè)試流程:1.
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 商務(wù)風(fēng)企業(yè)市場(chǎng)部營(yíng)銷策劃模板
- 混凝土防凍措施實(shí)施方案
- 腳手架施工機(jī)械設(shè)備選型方案
- 團(tuán)團(tuán)貓黃色卡通風(fēng)美食介紹模版
- 人教版數(shù)學(xué)九年級(jí)上冊(cè)第二十三章 旋轉(zhuǎn)數(shù)學(xué)活動(dòng)課件
- 《產(chǎn)品數(shù)字化工藝設(shè)計(jì)與仿真》課件-任務(wù)2.3 工藝卡模板集定義
- 建筑工程電子圖紙管理系統(tǒng)
- 2026貴州銅仁市第二人民醫(yī)院收費(fèi)室見(jiàn)習(xí)生招募備考題庫(kù)及答案1套
- 縣城供水管網(wǎng)更新改造項(xiàng)目經(jīng)濟(jì)效益和社會(huì)效益分析報(bào)告
- 施工與設(shè)計(jì)協(xié)調(diào)工作方案
- 殯儀館鮮花采購(gòu)?fù)稑?biāo)方案
- 中小學(xué)生意外傷害防范
- 動(dòng)靜脈瘺課件
- 企業(yè)ESG審計(jì)體系構(gòu)建-洞察及研究
- 2025年信用報(bào)告征信報(bào)告詳版?zhèn)€人版模板樣板(可編輯)
- 急診科心肌梗死搶救流程
- 藥品生產(chǎn)培訓(xùn)課件
- 《先張法預(yù)應(yīng)力混凝土實(shí)心方樁技術(shù)規(guī)程》
- 貴州省縣中新學(xué)校計(jì)劃項(xiàng)目2024-2025學(xué)年高一上學(xué)期期中聯(lián)考地理試題(解析版)
- 【2025年】天翼云解決方案架構(gòu)師認(rèn)證考試筆試卷庫(kù)下(多選、判斷題)含答案
- 絞吸船清淤施工方案
評(píng)論
0/150
提交評(píng)論