版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p> 本科生畢業(yè)論文(設(shè)計(jì))</p><p> 題 目: 基于JAVA的餐飲管理系統(tǒng) </p><p> 學(xué)生姓名: </p><p> 學(xué) 號(hào): </p><p> 專業(yè)班級:
2、 </p><p> 指導(dǎo)教師: </p><p> 完成時(shí)間: 2011年5月 </p><p> 1.3本課題研究的目的及意義</p><p> 酒店餐飲管理系統(tǒng)也是典型的管理信息系統(tǒng)(MIS),其開發(fā)主要包括后臺(tái)數(shù)據(jù)庫的建立和維護(hù)
3、以及前端應(yīng)用程序的開發(fā)以及后廚等自動(dòng)化管理這幾個(gè)方面。該系統(tǒng)中,應(yīng)用SQL Server 2005數(shù)據(jù)庫管理系統(tǒng)、SQL語言原理、JSP應(yīng)用程序設(shè)計(jì),JSP數(shù)據(jù)庫技術(shù),采用成熟的B/S(瀏覽器/服務(wù)器端)結(jié)構(gòu),根據(jù)分析和討論,實(shí)現(xiàn)酒店訂餐管理,提供與用戶交互的界面,完成酒店餐飲管理系統(tǒng)的設(shè)計(jì)和開發(fā)。</p><p> 根據(jù)該系統(tǒng)的具體情況,應(yīng)能完成以下功能:</p><p> (1)前
4、臺(tái)管理:開臺(tái)管理、客人買單、結(jié)賬數(shù)據(jù)分析;</p><p> (2)基礎(chǔ)信息管理:餐具信息設(shè)置、酒水信息設(shè)置、菜譜信息設(shè)置、房間臺(tái)號(hào)管理、商品基礎(chǔ)信息登記;</p><p> (3)服務(wù)管理:點(diǎn)菜、上單下單、退菜等;</p><p> (4)系統(tǒng)管理:系統(tǒng)維護(hù)向?qū)?、?quán)限管理、數(shù)據(jù)備份、幫助說明;</p><p> 另外,酒店餐飲管理系
5、統(tǒng)要確保信息安全,以系統(tǒng)安全為主要目標(biāo),保護(hù)系統(tǒng)資源免受惡意的毀壞、替換、盜竊和丟失。其系統(tǒng)資源包括:硬件設(shè)備、存儲(chǔ)介質(zhì)、軟件、數(shù)據(jù)等。具體來說,應(yīng)達(dá)到以下安全要求:</p><p> (1)保密性,機(jī)密或敏感數(shù)據(jù)在存儲(chǔ)、處理、傳輸?shù)冗^程中要完全保密,確保僅授權(quán)用戶在授權(quán)后才能進(jìn)行查詢、刪除及修改等操作;</p><p> (2)完整性,保證系統(tǒng)中的信息處于一種完整和未損害的狀態(tài),防止
6、因非授權(quán)訪問,部件故障或其他人為錯(cuò)誤而引起的信息篡改、破壞或丟失。</p><p> (3)可靠性,必須保障系統(tǒng)在復(fù)雜的網(wǎng)絡(luò)環(huán)境下能夠提供持續(xù)、穩(wěn)定、可靠的服務(wù)。</p><p> 1.4開發(fā)工具及相關(guān)技術(shù)</p><p> 1.4.1 JAVA程序開發(fā)技術(shù)</p><p> java不僅是編程語言,還是一個(gè)開發(fā)平臺(tái),java技術(shù)給程
7、序員提供了許多工具:編譯器、解釋器、文檔生成器和文件打包工具等等。同時(shí)java還是一個(gè)程序發(fā)布平臺(tái),有兩種主要的"發(fā)布環(huán)境",首先java運(yùn)行時(shí)環(huán)境(java runtime environment,簡稱JRE)包含了完整的類文件包,其次許多主要的瀏覽器都提供了java解釋器和運(yùn)行時(shí)環(huán)境。目前Sun公司把java平臺(tái)劃分成J2EE、J2SE、J2ME三個(gè)平臺(tái),針對不同的市場目標(biāo)和設(shè)備進(jìn)行定位。J2EE是Java2 E
8、nterprise Edition,主要目的是為企業(yè)計(jì)算提供一個(gè)應(yīng)用服務(wù)器的運(yùn)行和開發(fā)平臺(tái)。J2EE本身是一個(gè)開放的標(biāo)準(zhǔn),任何軟件廠商都可以推出自己的符合J2EE標(biāo)準(zhǔn)的產(chǎn)品,使用戶可以有多種選擇。</p><p> java主要有以下特性</p><p> 1、Java語言是簡單的。Java語言的語法與C語言和C++語言很接近,使得大多數(shù)程序員很容易學(xué)習(xí)和使用Java。另一方面,Jav
9、a丟棄了C++ 中很少使用的、很難理解的、令人迷惑的那些特性,如操作符重載、多繼承、自動(dòng)的強(qiáng)制類型轉(zhuǎn)換。特別地,Java語言不使用指針,并提供了自動(dòng)的廢料收集,使得程序員不必為內(nèi)存管理而擔(dān)憂。 </p><p> 2、Java語言是一個(gè)面向?qū)ο蟮?。Java語言提供類、接口和繼承等原語,為了簡單起見,只支持類之間的單繼承,但支持接口之間的多繼承,并支持類與接口之間的實(shí)現(xiàn)機(jī)制(關(guān)鍵字為implements)。Jav
10、a語言全面支持動(dòng)態(tài)綁定,而C++ 語言只對虛函數(shù)使用動(dòng)態(tài)綁定??傊琂ava語言是一個(gè)純的面向?qū)ο蟪绦蛟O(shè)計(jì)語言。 </p><p> 3、Java語言是分布式的。Java語言支持Internet應(yīng)用的開發(fā),在基本的Java應(yīng)用編程接口中有一個(gè)網(wǎng)絡(luò)應(yīng)用編程接口(java net),它提供了用于網(wǎng)絡(luò)應(yīng)用編程的類庫,包括URL、URLConnection、Socket、 ServerSocket等。Java的RMI(
11、遠(yuǎn)程方法激活)機(jī)制也是開發(fā)分布式應(yīng)用的重要手段。 </p><p> 4、Java語言是健壯的。Java的強(qiáng)類型機(jī)制、異常處理、廢料的自動(dòng)收集等是Java程序健壯性的重要保證。對指針的丟棄是Java的明智選擇。Java的安全檢查機(jī)制使得Java更具健壯性。 </p><p> 5、Java語言是安全的。Java通常被用在網(wǎng)絡(luò)環(huán)境中,為此,Java提供了一個(gè)安全機(jī)制以防惡意代碼的攻擊。除
12、了Java語言具有的許多安全特性以外,Java對通過網(wǎng)絡(luò)下載的類具有一個(gè)安全防范機(jī)制(類ClassLoader),如分配不同的名字空間以防替代本地的同名類、字節(jié)代碼檢查,并提供安全管理機(jī)制(類SecurityManager)讓Java應(yīng)用設(shè)置安全哨兵。 </p><p> 6、Java語言是體系結(jié)構(gòu)中立的。Java程序(后綴為java的文件)在Java平臺(tái)上被編譯為體系結(jié)構(gòu)中立的字節(jié)碼格式(后綴為class的文
13、件), 然后可以在實(shí)現(xiàn)這個(gè)Java平臺(tái)的任何系統(tǒng)中運(yùn)行。這種途徑適合于異構(gòu)的網(wǎng)絡(luò)環(huán)境和軟件的分發(fā)。 </p><p> 7、Java語言是可移植的。這種可移植性來源于體系結(jié)構(gòu)中立性,另外,Java還嚴(yán)格規(guī)定了各個(gè)基本數(shù)據(jù)類型的長度。Java系統(tǒng)本身也具有很強(qiáng)的可移植性,Java編譯器是用Java實(shí)現(xiàn)的,Java的運(yùn)行環(huán)境是用ANSI C實(shí)現(xiàn)的。 </p><p> 8、Java語言是解
14、釋型的。如前所述,Java程序在Java平臺(tái)上被編譯為字節(jié)碼格式, 然后可以在實(shí)現(xiàn)這個(gè)Java平臺(tái)的任何系統(tǒng)中運(yùn)行。在運(yùn)行時(shí),Java平臺(tái)中的Java解釋器對這些字節(jié)碼進(jìn)行解釋執(zhí)行,執(zhí)行過程中需要的類在聯(lián)接階段被載入到運(yùn)行環(huán)境中。 </p><p> 9、Java是高性能的。與那些解釋型的高級腳本語言相比,Java的確是高性能的。事實(shí)上,Java的運(yùn)行速度隨著JIT(Just-In-Time)編譯器技術(shù)的發(fā)展越
15、來越接近于C++。 </p><p> 1.4.2 Web應(yīng)用程序開發(fā)環(huán)境—JSP技術(shù)</p><p> 在傳統(tǒng)的網(wǎng)頁HTML文件(*.htm,*.html)中加入Java程序片段(Scriptlet)和JSP標(biāo)記(tag),就構(gòu)成了JSP網(wǎng)頁(*.jsp)。JSP頁面看上去象標(biāo)準(zhǔn)的HTML和XML頁面,并附帶有JSP引擎能夠處理和抽取的額外元件。</p><p&g
16、t; Web服務(wù)器在遇到訪問JSP網(wǎng)頁的請求時(shí),首先執(zhí)行其中的程序片段,然后將執(zhí)行結(jié)果以HTML格式返回給用戶。</p><p> 程序片段可以操作數(shù)據(jù)庫、重新定向網(wǎng)頁以及發(fā)送E-mail等,這就是建立動(dòng)態(tài)網(wǎng)站所需要的功能。</p><p> 所有程序都在服務(wù)器端執(zhí)行,網(wǎng)絡(luò)上傳送給客戶端的僅是得到的結(jié)果,對客戶瀏覽器的要求最低。它基于強(qiáng)大的Java語言,具有良好的伸縮性,在網(wǎng)絡(luò)數(shù)據(jù)庫
17、應(yīng)用開發(fā)領(lǐng)域具有得天獨(dú)厚的優(yōu)勢。</p><p> JSP技術(shù)在多個(gè)方面加速了動(dòng)態(tài)Web頁面的開發(fā):</p><p> 1、將內(nèi)容的生成和顯示進(jìn)行分離</p><p> 使用JSP技術(shù),Web頁面開發(fā)人員可以使用HTML或者XML標(biāo)識(shí)來設(shè)計(jì)和格式化最終頁面。使用JSP標(biāo)識(shí)或者小腳本來生成頁面上的動(dòng)態(tài)內(nèi)容(內(nèi)容是根據(jù)請求來變化的,例如請求帳戶信息或者特定的一瓶酒
18、的價(jià)格)。生成內(nèi)容的邏輯被封裝在標(biāo)識(shí)和JavaBeans組件中,并且捆綁在小腳本中,所有的腳本在服務(wù)器端運(yùn)行。如果核心邏輯被封裝在標(biāo)識(shí)和Beans中,那么其他人,如Web管理人員和頁面設(shè)計(jì)者,能夠編輯和使用JSP頁面,而不影響內(nèi)容的生成。</p><p> 在服務(wù)器端,JSP引擎解釋JSP標(biāo)識(shí)和小腳本,生成所請求的內(nèi)容(例如,通過訪問JavaBeans組件,使用JDBCTM技術(shù)訪問數(shù)據(jù)庫,或者包含文件),并且將
19、結(jié)果以HTML(或者XML)頁面的形式發(fā)送回瀏覽器。這有助于作者保護(hù)自己的代碼,而又保證任何基于HTML的Web瀏覽器的完全可用性。</p><p> 2、強(qiáng)調(diào)可重用的組件</p><p> 絕大多數(shù)JSP頁面依賴于可重用的,跨平臺(tái)的組件(JavaBeans或者Enterprise JavaBeansTM組件)來執(zhí)行應(yīng)用程序所要求的更為復(fù)雜的處理。開發(fā)人員能夠共享和交換執(zhí)行普通操作的組
20、件,或者使得這些組件為更多的使用者或者客戶團(tuán)體所使用。基于組件的方法加速了總體開發(fā)過程,并且使得各種組織在他們現(xiàn)有的技能和優(yōu)化結(jié)果的開發(fā)努力中得到平衡。</p><p> 3、采用標(biāo)識(shí)簡化頁面開發(fā)</p><p> Web頁面開發(fā)人員不會(huì)都是熟悉腳本語言的編程人員。JavaServer Page技術(shù)封裝了許多功能,這些功能是在易用的、與JSP相關(guān)的XML標(biāo)識(shí)中進(jìn)行動(dòng)態(tài)內(nèi)容生成所需要的。
21、標(biāo)準(zhǔn)的JSP標(biāo)識(shí)能夠訪問和實(shí)例化JavaBeans組件,設(shè)置或者檢索組件屬性,下載Applet,以及執(zhí)行用其他方法更難于編碼和耗時(shí)的功能。</p><p> 通過開發(fā)定制化標(biāo)識(shí)庫,JSP技術(shù)是可以擴(kuò)展的。今后,第三方開發(fā)人員和其他人員可以為常用功能創(chuàng)建自己的標(biāo)識(shí)庫。這使得Web頁面開發(fā)人員能夠使用熟悉的工具和如同標(biāo)識(shí)一樣的執(zhí)行特定功能的構(gòu)件來工作。</p><p> 4、JSP能提供所
22、有Servlets功能</p><p> 與Servlets相比,JSP能提供所有Servlets功能,它比用Println書寫和修改HTML更方便。可以更明確地進(jìn)行分工,Web頁面設(shè)計(jì)人員編寫HTML,只需留出空間讓Servlets程序員插入動(dòng)態(tài)部分即可。JSP技術(shù)能夠支持高度復(fù)雜的基于Web的應(yīng)用。</p><p> 5、健壯的存儲(chǔ)管理和安全性</p><p&g
23、t; 由于JSP頁面的內(nèi)置腳本語言是基于Java編程語言的,而且所有的JSP頁面都被編譯成為Java Servlet,JSP頁面就具有Java技術(shù)的所有好處,包括健壯的存儲(chǔ)管理和安全性。</p><p> 6、一次編寫,各處運(yùn)行</p><p> 作為Java平臺(tái)的一部分,JSP擁有Java編程語言“一次編寫,各處運(yùn)行”的特點(diǎn)。隨著越來越多的供應(yīng)商將JSP支持添加到他們的產(chǎn)品中,您可
24、以使用自己所選擇的服務(wù)器和工具,更改工具或服務(wù)器并不影響當(dāng)前的應(yīng)用。</p><p> 1.4.3 Tomcat應(yīng)用服務(wù)器</p><p> 目前支持JSP的應(yīng)用服務(wù)器是較多的,Tomcat是其中較為流行的一個(gè)Web服務(wù)器,被JavaWorld雜志的編輯選為2001年度最具創(chuàng)新的Java產(chǎn)品,可見其在業(yè)界的地位。</p><p> Tomcat是一個(gè)免費(fèi)的開源
25、的Serlvet容器,在Tomcat中,應(yīng)用程序的部署很簡單,你只需將你的WAR放到Tomcat的webapp目錄下,Tomcat會(huì)自動(dòng)檢測到這個(gè)文件,并將其解壓。你在瀏覽器中訪問這個(gè)應(yīng)用的JSP時(shí),通常第一次會(huì)很慢,因?yàn)門omcat要將JSP轉(zhuǎn)化為Servlet文件,然后編譯。編譯以后,訪問將會(huì)很快。另外Tomcat也提供了一個(gè)應(yīng)用:manager,訪問這個(gè)應(yīng)用需要用戶名和密碼,用戶名和密碼存儲(chǔ)在一個(gè)xml文件中。通過這個(gè)應(yīng)用,輔助于
26、FTP,你可以在遠(yuǎn)程通過Web部署和撤銷應(yīng)用。當(dāng)然本地也可以。</p><p> Tomcat也具有傳統(tǒng)的Web服務(wù)器的功能:處理HTML頁面。但是與Apache相比,它的處理靜態(tài)HTML的能力就不如Apache。我們可以將Tomcat和Apache集成到一塊,讓Apache處理靜態(tài)HTML,而Tomcat處理JSP和Servlet。這種集成只需要修改一下Apache和Tomcat的配置文件即可。</p&
27、gt;<p> Tomcat確實(shí)是一個(gè)很好的工具,不僅僅因?yàn)槠涿赓M(fèi),功能強(qiáng)大,更因?yàn)槠溟_放性。如今,開源軟件越來越收到人們的重視,Linux就是一個(gè)成功的典型。人們不再限于只使用軟件,而且已經(jīng)關(guān)心起軟件的具體實(shí)現(xiàn)。我們有理由相信Tomcat會(huì)走得更遠(yuǎn)。</p><p><b> 第二章 系統(tǒng)分析</b></p><p><b> 2.1可
28、行性分析</b></p><p> 可行性分析是需求分析的基礎(chǔ)上進(jìn)行的,對系統(tǒng)的開發(fā)從技術(shù)、經(jīng)濟(jì)、營運(yùn)等方面進(jìn)行分析,并得出系統(tǒng)的開發(fā)工作可行、不可行、需要修改、追加投資、暫緩開發(fā)、分步實(shí)施等方案和結(jié)論,最后完成可行性分析??尚行苑治鲆话憧啥x為:可行性分析是在建設(shè)的前期對工程項(xiàng)目的一種考察和鑒定,對擬議中的項(xiàng)目進(jìn)行全面與綜合的技術(shù)、經(jīng)濟(jì)能力的調(diào)查,判斷它是否可行。可行性分析階段的主要工作包括以下幾
29、個(gè)方面:</p><p> 2.1.1技術(shù)可行性分析</p><p> 技術(shù)可行性分析是根據(jù)新系統(tǒng)的目標(biāo)來衡量是否具各所需要的技術(shù),包括系統(tǒng)開發(fā)人員數(shù)量和水平,硬件方面,軟件方面及其它應(yīng)用技術(shù)。從各個(gè)網(wǎng)站及許多局域網(wǎng)的建設(shè)中可以看到,目前基于Web的系統(tǒng)開發(fā)技術(shù)已經(jīng)十分成熟,相信隨著Internet/Intranet技術(shù)的進(jìn)一步發(fā)展,基于Web的信息系統(tǒng)開發(fā)將有更為明朗的前景。<
30、/p><p> 2.1.2經(jīng)濟(jì)可行性分析</p><p> 經(jīng)濟(jì)可行性分析主要是對開發(fā)新系統(tǒng)所投入的資金與系統(tǒng)投入使用后所帶來的經(jīng)濟(jì)效益進(jìn)行比較,確認(rèn)新系統(tǒng)是否會(huì)給企業(yè)帶來一定的經(jīng)濟(jì)效益。開發(fā)此餐飲管理系統(tǒng),不僅能提高企業(yè)的管理水平給管理者提供一個(gè)企業(yè)運(yùn)作的信息平臺(tái)還能提升企業(yè)的形象及增強(qiáng)競爭力。使用餐飲管理系統(tǒng)能將餐飲企業(yè)業(yè)務(wù)管理和人員管理信息化,使企業(yè)從原材料進(jìn)貨到客人消費(fèi)都由計(jì)算機(jī)管
31、理并記錄,可隨時(shí)掌握酒店里房間的使用狀況,客人點(diǎn)單,掛賬等情況,并能盡可能的降低使用者的勞動(dòng)強(qiáng)度,同時(shí)提高工作質(zhì)量和效率。用最少的成本獲得最好的經(jīng)濟(jì)效益,增強(qiáng)了餐飲企業(yè)的市場競爭力</p><p> 2.1.3安全可行性</p><p> 在系統(tǒng)運(yùn)行后,就用戶方而言,由于用戶使用本系統(tǒng)時(shí)不會(huì)也不必關(guān)心系統(tǒng)內(nèi)部的結(jié)構(gòu)及實(shí)現(xiàn)方法,即對用戶來說是透明的,所以本系統(tǒng)對用戶而言是定位在界面友好、
32、操作方便、功能齊全的原則上的,用戶只需簡單的用鼠標(biāo)點(diǎn)擊各頁面上的鏈接或按鈕就能執(zhí)行相應(yīng)的功能。就管理者而言,關(guān)心的是如何處理用戶信息,只要把用戶的信息放入服務(wù)器端的數(shù)據(jù)庫或?qū)iT的數(shù)據(jù)庫服務(wù)器,管理者就可運(yùn)行相應(yīng)的后臺(tái)程序進(jìn)行處理。</p><p> 2.1.4操作可行性</p><p> 目前資源的利用情況和可操作性,只需根據(jù)相關(guān)需要對數(shù)據(jù)庫中的相應(yīng)表數(shù)據(jù)直接操作就可以實(shí)現(xiàn)系統(tǒng)的完整、
33、穩(wěn)定的運(yùn)行,不會(huì)造成系統(tǒng)的巨大壓力,可以保證系統(tǒng)的正常運(yùn)行。</p><p> 綜上所述,通過技術(shù)可行性,經(jīng)濟(jì)可行性,安全可行性,操作可行性分析,本系統(tǒng)的開發(fā)是可行的。</p><p><b> 2.2需求分析</b></p><p> 項(xiàng)目需求分析就是描述系統(tǒng)需求,通過定義系統(tǒng)中的關(guān)鍵域類來建立模型。分析的根本目的是在開發(fā)者和提出需求的
34、人之間建立一種理解和溝通的機(jī)制,因此,酒店餐飲管理系統(tǒng)的需求分析也是開發(fā)人員和用戶一起完成的。需求分析的第一步是描述酒店餐飲管理系統(tǒng)的功能,即定義用例,以此確定系統(tǒng)的功能需求。該系統(tǒng)主要從酒店的訂餐方面來分析。</p><p> 酒店餐飲管理系統(tǒng)的核心思想就是以顧客是上帝為核心,這就意味著酒店將把客人作為其運(yùn)作的核心,提升客人滿意程度,獲得更大的利潤。隨著行業(yè)競爭的加劇和市場的快速膨脹,增長率的下降,利潤的降低
35、,消費(fèi)行為的理性化是必然的發(fā)展趨勢。各大酒店更多的將目光專注于如何提高服務(wù)質(zhì)量,提高經(jīng)營管理,而提高經(jīng)營管理最重要的保證就是信息技術(shù)。</p><p> 酒店餐飲管理系統(tǒng)也是一個(gè)酒店不可缺少的部分,它的內(nèi)部無論對于客戶還是員工來說都至關(guān)重要,所以一個(gè)系統(tǒng)應(yīng)該能夠?yàn)橛脩籼峁┏渥愕目旖莸男畔⒑头奖愕牟樵兎绞?,而且不?yīng)有時(shí)間和地域的限制。</p><p> 隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)
36、日漸成熟,其強(qiáng)大的功能已成為人們深刻認(rèn)識(shí),它已進(jìn)入人類社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來越重要的作用。作為計(jì)算機(jī)應(yīng)用的部分,使用計(jì)算機(jī)對酒店餐飲的管理具有著手工管理所無法比擬的優(yōu)點(diǎn):</p><p> ?。?)客戶和工作人員可以隨時(shí)了解有關(guān)酒店餐飲的相關(guān)信息。</p><p> ?。?)減輕了工作人員的工作負(fù)擔(dān)。</p><p> ?。?)查詢、修改更加方便、快捷。<
37、/p><p> 2.2.1系統(tǒng)的主要功能</p><p> 根據(jù)餐飲行業(yè)的特點(diǎn)和該企業(yè)的實(shí)際情況,該系統(tǒng)以餐飲業(yè)務(wù)為基礎(chǔ),突出前臺(tái)管理,從專業(yè)角度出發(fā),提供科學(xué)有效的管理模式。點(diǎn)菜方面采取圖形界面加數(shù)據(jù)的方式,使用戶能直觀地管理數(shù)據(jù)信息,并能有效地管理每個(gè)開臺(tái)的房間臺(tái)號(hào)所點(diǎn)的酒菜。點(diǎn)菜收銀管理可實(shí)現(xiàn)點(diǎn)菜、轉(zhuǎn)臺(tái)、并臺(tái)、結(jié)賬、清臺(tái)。庫房管理可記錄商品入庫、出庫情況。營業(yè)分析可對客人點(diǎn)單情況、房
38、臺(tái)營業(yè)情況、酒菜銷售情況、銷售收入等進(jìn)行分析。點(diǎn)菜收銀、營業(yè)分析、庫房管理的有機(jī)結(jié)合,可為酒店經(jīng)營方向提供依據(jù),為酒店餐館的發(fā)展提供重要保證。</p><p> 根據(jù)該企業(yè)的具體情況,系統(tǒng)主要功能設(shè)計(jì)有七大部分,分別為前臺(tái)管理、后臺(tái)管理、財(cái)政管理、應(yīng)收應(yīng)付管理、系統(tǒng)初始化、系統(tǒng)管理、幫助。</p><p> 1、前臺(tái)管理:主要是對酒店前臺(tái)收銀的管理。包括開臺(tái)管理、買單管理、當(dāng)日結(jié)賬數(shù)據(jù)
39、分析、日結(jié)算管理。</p><p> 2、后臺(tái)管理:主要是對酒店后臺(tái)進(jìn)貨管理。包括進(jìn)貨管理、進(jìn)貨查詢、庫存查詢、房間臺(tái)號(hào)管理、商品信息管理、員工信息管理。</p><p> 3、財(cái)政管理:主要是對酒店財(cái)務(wù)方面的管理。包括月結(jié)算管理、月營業(yè)分析、年?duì)I業(yè)分析。</p><p> 4、應(yīng)收應(yīng)付管理:主要是對酒店的往來賬款進(jìn)行管理。包括應(yīng)付賬款管理、掛賬管理、歷史掛賬
40、查詢。</p><p> 5、系統(tǒng)初始化:主要是對酒店的基礎(chǔ)設(shè)置信息的管理。包括供應(yīng)商管理、房間臺(tái)號(hào)類型管理、部門信息管理、倉庫信息設(shè)置、員工級別管理。</p><p> 6、系統(tǒng)管理:主要是對權(quán)限進(jìn)行管理。</p><p> 7、幫助:主要是對軟件的使用幫助。</p><p> 2.2.2系統(tǒng)的實(shí)現(xiàn)目標(biāo)</p><
41、;p> 面對服務(wù)行業(yè)的高速發(fā)展和餐飲企業(yè)信息化發(fā)展的過程中出現(xiàn)的各種情況,該餐飲管理系統(tǒng)在實(shí)施后應(yīng)能夠達(dá)到以下目標(biāo):</p><p> 1、采用漢字圖形用戶界面,系統(tǒng)界面友好美觀,操作簡單易行。</p><p> 2、業(yè)務(wù)管理信息化,可隨時(shí)掌握進(jìn)貨、客人點(diǎn)單、掛賬等情況。</p><p> 3、采用流行的客戶機(jī)/服務(wù)器方式,響應(yīng)速度快,安全性高,擴(kuò)充方
42、便。</p><p> 4、支持多種付款方式。現(xiàn)金、支票、免單、掛賬等多種方式混合收銀。</p><p> 5、該軟件應(yīng)盡可能地降低使用者的勞動(dòng)強(qiáng)度,同時(shí)提高工作質(zhì)量和效率。</p><p> 6、系統(tǒng)維護(hù)方便可靠,具有靈活性、通用性及安全性的特點(diǎn)。</p><p> 2.2.3系統(tǒng)的性能需求</p><p>
43、<b> 1系統(tǒng)的安全性</b></p><p> 系統(tǒng)運(yùn)行安全是決定軟件質(zhì)量的重要因素,雖然此餐飲系統(tǒng)不需要接入Internet,但系統(tǒng)中涉及多方信息,有廚房請購信息、盤點(diǎn)信息、原材料信息、菜品信息等等,如果有人蓄意破壞任意信息,都可能會(huì)導(dǎo)致系統(tǒng)的停用,會(huì)帶來損失,因此仍然需要保證它的安全。為了保證系統(tǒng)的安全性,必須采取一定的安全措施,防止用戶越權(quán)使用,防止工作數(shù)據(jù)被非法篡改、破壞和泄
44、露等。既要考慮操作系統(tǒng)的安全性,還要考慮到餐飲系統(tǒng)本身的安全性。</p><p><b> 2系統(tǒng)的合理性</b></p><p> 在設(shè)計(jì)系統(tǒng)時(shí)要考慮實(shí)際的系統(tǒng)性能和硬件要求,不能忽視所處環(huán)境,也不能一味地追求新技術(shù),要保證系統(tǒng)的合理性。</p><p> 3系統(tǒng)的簡單性、易用性</p><p> 要考慮到不同
45、層次服務(wù)人員及領(lǐng)導(dǎo)人員的計(jì)算機(jī)操作水平,一般而言,大部分服務(wù)員的計(jì)算機(jī)操作水平偏低,因此開發(fā)時(shí)要本著“簡單易用”的原則,方便各層次人員的使用,使人員的培訓(xùn)降到最低。對于收銀的服務(wù)員只需要簡單且快捷地收銀方式,既利于他們使用,也提高收銀速度,同樣對于領(lǐng)導(dǎo)人員,也需求簡單、一目了然的界面,這樣即使是沒有操作過計(jì)算機(jī)的人來說,只需要進(jìn)行簡單的操作培訓(xùn)就可以達(dá)到熟練,使之能順利地完成系統(tǒng)各種功能。</p><p> 4
46、系統(tǒng)的穩(wěn)定性、可靠性</p><p> 餐飲業(yè)從業(yè)人員來源廣泛,分布性強(qiáng),往往不具備專業(yè)的計(jì)算機(jī)知識(shí),因此,餐飲系統(tǒng)必須穩(wěn)定、可靠。另外,餐飲業(yè)營業(yè)時(shí)間與一般公司(或企業(yè))區(qū)別很大:一般公司(或企業(yè))正常上班時(shí)間,餐飲企業(yè)生意不多;而一般公司(或企業(yè))休息時(shí)間卻正是餐飲業(yè)營業(yè)高峰。餐飲系統(tǒng)必須兼顧到餐飲業(yè)這種間隙性的營業(yè)狀況,必須具有高度的穩(wěn)定性,保證在營業(yè)高峰時(shí)不出故障,即使出現(xiàn)故障,系統(tǒng)也必須具有快速恢復(fù)能
47、力。</p><p><b> 2.2.4運(yùn)行環(huán)境</b></p><p> 系統(tǒng)對運(yùn)行的環(huán)境的要求:</p><p><b> (1)、硬件環(huán)境</b></p><p><b> 服務(wù)器端</b></p><p> 服務(wù)器端的最低配置是由建立
48、站點(diǎn)所需的軟件來決定的,在最低配置的情況下,服務(wù)器的往往不盡如人意,現(xiàn)在的硬件性能已經(jīng)相當(dāng)出色,而且價(jià)格也很便宜,因此通常應(yīng)給服務(wù)器端配置高性能的硬件。</p><p> 本網(wǎng)絡(luò)系統(tǒng)服務(wù)器端的配置如下:</p><p> 處理器:Inter Pentium 4 1.6GHz 或更高</p><p><b> 內(nèi)存:512MB</b><
49、;/p><p> 硬盤空間:160GB</p><p> 光驅(qū):CD-ROM 48X</p><p> 顯卡:SVAG顯示適配器。</p><p><b> 用戶端</b></p><p> 因?yàn)榭蛻舳酥饕糜跒g覽和操作數(shù)據(jù),所以對客房端的硬件要求不高,不過現(xiàn)在的電腦很高的性價(jià)比,因此需要的
50、配置應(yīng)該高于下面的配置:</p><p> 處理器:Inter Pentium 1.0GHz 或更高</p><p><b> 內(nèi)存:216MB</b></p><p><b> 硬盤空間:80GB</b></p><p> 光驅(qū):CD-ROM 48X</p><p>
51、; 顯卡:SVAG顯示適配器。</p><p><b> (1)、軟件環(huán)境</b></p><p><b> 服務(wù)器端</b></p><p> 操作系統(tǒng):Windows 2000 Server或者更高版本</p><p> 網(wǎng)絡(luò)協(xié)議:TCP/IP</p><p>
52、 web服務(wù)器:Tomcat 5.X及以上版本</p><p><b> 數(shù)據(jù)庫:MySQL</b></p><p> 瀏覽器:Internet Explorer 6.0及以上</p><p><b> 用戶端</b></p><p> 操作系統(tǒng):Windows 98/2000/XP<
53、;/p><p> 網(wǎng)絡(luò)協(xié)議:TCP/IP</p><p> 瀏覽器:Internet Explorer 6.0或以上</p><p><b> 第三章 總體設(shè)計(jì)</b></p><p><b> 3.1功能模塊設(shè)計(jì)</b></p><p> 采用本系統(tǒng)可以大大減少前臺(tái)的
54、服務(wù)人員的人數(shù),直接和廚房聯(lián)系加快上菜速度。由于采用計(jì)算機(jī)操作,可以大大提高操作速度。為了能夠適應(yīng)信息化發(fā)展的需要,提高餐飲部門的工作效率,引入了該信息系統(tǒng)。</p><p> 根據(jù)分析,酒店餐飲管理系統(tǒng)可分為以下三個(gè)模塊:登錄模塊、訂餐模塊、后臺(tái)管理模塊。其系統(tǒng)模塊圖3.1所示。</p><p><b> 3.2數(shù)據(jù)字典</b></p><p
55、> 數(shù)據(jù)字典是系統(tǒng)中各類數(shù)據(jù)描述的集合,是進(jìn)行詳細(xì)的數(shù)據(jù)的收集和數(shù)據(jù)分析秘獲得的主要成果。數(shù)據(jù)字典在數(shù)據(jù)庫設(shè)計(jì)中占有很重要的地位。</p><p><b> 數(shù)據(jù)字典部分如下:</b></p><p> 表3.1管理員信息表</p><p><b> 表3.2餐桌信息表</b></p><
56、p><b> 表3.3菜單信息表</b></p><p> 表3.4營業(yè)額信息表</p><p><b> 表3.5訂餐信息表</b></p><p><b> 表3.6酒店信息表</b></p><p><b> 3.3 E-R圖</b>
57、</p><p> 概念設(shè)計(jì)是一種面向?qū)ο蟮臄?shù)據(jù)模型,是按照用戶的觀點(diǎn)來對數(shù)據(jù)和信息建模。它描述了從用戶角度看到的數(shù)據(jù),它反映了用戶的實(shí)現(xiàn)環(huán)境,這種方法用ER圖描述現(xiàn)實(shí)世界中的實(shí)體,而不涉及這些實(shí)體在系統(tǒng)中的方法。概念設(shè)計(jì)中最著名的方法就是實(shí)體聯(lián)系方法(ER方法),建立ER模型,用ER圖表示概念結(jié)構(gòu),得到數(shù)據(jù)庫的概念模型 [2]。</p><p> ER模型中包含“實(shí)體”,“聯(lián)系”和“
58、屬性”。在本系統(tǒng)中,多對多的關(guān)系用(m-n)表示。本系統(tǒng)的主要的實(shí)體有餐桌,客人,菜譜,餐飲,賬單,點(diǎn)菜單等。實(shí)體ER圖如下所示:</p><p><b> 啊</b></p><p><b> 3.4總體E-R圖</b></p><p> 邏輯設(shè)計(jì)的目的是把概念設(shè)計(jì)好的概念模型轉(zhuǎn)換成與選用的具體機(jī)器上的DBMS所支
59、持的數(shù)據(jù)模型相符合的邏輯結(jié)構(gòu)。這些模型在功能上、完整性和一致性約束及數(shù)據(jù)庫的可擴(kuò)展性等方面均應(yīng)滿足用戶的各種要求[2]。因而,根據(jù)上節(jié)的實(shí)體ER圖,總體ER圖如下:</p><p><b> 3.5系統(tǒng)數(shù)據(jù)表</b></p><p> 下面將主要介紹關(guān)鍵數(shù)據(jù)表的數(shù)據(jù)庫設(shè)計(jì)的詳細(xì)說明。</p><p> 表3.7 區(qū)域表area</p
60、><p> 該表是用來記錄區(qū)域信息</p><p> 表3.8 訂餐表dinnermenu</p><p> 該表是用來記錄訂餐信息,主要有客戶信息,訂餐人數(shù)等。</p><p> 表 3.9 菜單添加表menuitem</p><p> 該表是用來記錄菜單信息,和添加菜單信息。</p><p
61、> 表 3.10區(qū)域添加表dishcateroy</p><p> 該表是用來記錄區(qū)域信息,主要實(shí)現(xiàn)系統(tǒng)區(qū)域添加功能。</p><p> 表3.11 餐桌表dinnertalbe</p><p> 該表是用來記錄餐桌的信息,及當(dāng)前的使用狀態(tài)。</p><p> 表3.12 折扣表 discount</p><
62、;p> 該表是用來記錄折扣類型信息。</p><p> 表 3.13預(yù)定表area</p><p> 該表是用來記錄預(yù)定信息,主要記錄預(yù)定用戶的基本信息。</p><p> 表3.14退菜表 reject</p><p> 該表是用來記錄退菜的信息和退菜的原因。</p><p> 表3.15付款類型表
63、 paytype</p><p> 該表是用來記錄付款信息,主要實(shí)現(xiàn)系統(tǒng)折扣功能</p><p> 表 3.16 酒店基本信息表area</p><p> 該表是用來記錄酒店信息。</p><p><b> 3.6系統(tǒng)流程圖</b></p><p><b> 3.7.詳細(xì)設(shè)計(jì)書
64、</b></p><p><b> 1 用戶登錄</b></p><p> 員工通過輸入員工編號(hào)和密碼登錄入系統(tǒng),如果密碼或者員工編號(hào)不正確,則不任許員工登錄到系統(tǒng)。只有有此系統(tǒng)賬號(hào)的員工才可以登錄到本系統(tǒng),并把員工的基本信心賦到SESSION中,以便其他工能模塊能獲得登錄員工的基本信息。</p><p><b>
65、2 修改密碼</b></p><p> 員工登錄后可以自行修改密碼,必須先輸入原始密碼,再重新輸入兩次新密碼,如果輸入不最正確,則系統(tǒng)不任許用戶修改密碼</p><p><b> 3 人員管理</b></p><p> 可以看到所有人員基本信息,包括員工姓名,員工編號(hào),員工性別,員工的職責(zé)類別。</p><
66、p> 對于員工信息也可以刪除。</p><p> 如果新添加員工時(shí),則添加員工姓名,員工編號(hào),性別,并設(shè)置員工的默認(rèn)密碼</p><p><b> 4 區(qū)域管理</b></p><p> 系統(tǒng)給出酒店內(nèi)的所有列表,列出的信息由,區(qū)域名稱,區(qū)域說明。如果不需要某一區(qū)域可以通過刪除按鈕刪除該條數(shù)據(jù)信息。點(diǎn)“添加區(qū)域”,則必須輸入,區(qū)域
67、名稱,以及相應(yīng)的區(qū)域說明。</p><p><b> 5 餐桌管理</b></p><p> 系統(tǒng)給出酒店內(nèi)所有餐桌信息,列出餐桌編號(hào),以及所在的區(qū)域名稱,已經(jīng)餐桌的使用狀態(tài),如果刪除餐桌信息,則通過“刪除”按鈕刪除數(shù)據(jù),如果添加餐桌信息,則點(diǎn)“添加餐桌”進(jìn)入添加餐桌信息頁面,選擇餐桌所在的區(qū)域,填寫餐桌的編號(hào)。添加完保存,系統(tǒng)提示成功。</p>&
68、lt;p><b> 6 菜單管理</b></p><p> 系統(tǒng)給出酒店所有菜單信息列表,列出菜單的名稱,菜單的價(jià)格,菜品的規(guī)格,如果刪除菜品的信息,則通過“刪除”按鈕刪除想要?jiǎng)h除的數(shù)據(jù),如果添加餐桌信息,則點(diǎn)“添加菜品”,進(jìn)入添加菜品信息頁面,選擇菜品所歸屬的類別,填寫菜品的名稱,菜品的規(guī)格,菜品的價(jià)格。填寫完保存,系統(tǒng)提示成功,可以通過列表信息查看已經(jīng)添加的菜品信息。</
69、p><p><b> 7 關(guān)于酒店</b></p><p> 系統(tǒng)給出酒店基本信息,酒店的名稱,酒店的電話,酒店的地址,酒店的介紹,酒店的網(wǎng)址等酒店的基本信息</p><p><b> 8 酒店信息更改</b></p><p> 系統(tǒng)給出酒店基本信息,酒店的名稱,酒店的電話,酒店的地址,酒店的介
70、紹,酒店的網(wǎng)址等酒店的基本信息,如果更改酒店基本信息,更改后,保存,系統(tǒng)提示 操作成功,數(shù)據(jù)更改。</p><p><b> 9 酒店管理</b></p><p> 員工根據(jù)區(qū)域的選擇選擇所要預(yù)定或已經(jīng)上座的 餐桌,餐桌分4個(gè)狀態(tài),空閑狀態(tài),預(yù)定狀態(tài),就餐狀態(tài),結(jié)賬狀態(tài),用圖標(biāo)顯示餐桌的狀態(tài),比文字描述更直觀,讓用戶更容易接受。</p><p&
71、gt; 當(dāng)餐桌是空閑狀態(tài)的時(shí)候,點(diǎn)需要就餐的餐桌,系統(tǒng)提示,開臺(tái),預(yù)定,關(guān)閉.開臺(tái) 直接輸餐桌上的就餐人數(shù),就可以下一步點(diǎn)菜或者結(jié)賬的操作,餐桌的狀態(tài)直接到就餐狀態(tài)。如果是預(yù)定輸入訂餐人姓名以及電話,則餐桌的狀態(tài)變?yōu)轭A(yù)定狀態(tài),但是餐桌為就餐狀態(tài)的時(shí)候,進(jìn)入輸入就餐人數(shù),就可進(jìn)行點(diǎn)餐的操作,服務(wù)員進(jìn)行點(diǎn)餐操作,根據(jù)菜品的分類選擇就餐客人所需要的菜品,設(shè)置菜品的狀態(tài),準(zhǔn)備,已做,已上。就餐結(jié)束后,進(jìn)行結(jié)賬,系統(tǒng)會(huì)根據(jù)結(jié)賬的類型(會(huì)員,vi
72、p,特價(jià))等信息自動(dòng)計(jì)算本次就餐的價(jià)錢。</p><p><b> 10營業(yè)額</b></p><p> 系統(tǒng)自動(dòng)列出每一筆交易的金額并且計(jì)算總共的營業(yè)額</p><p><b> 11退出系統(tǒng)</b></p><p> 系統(tǒng)把session信息銷毀,并直接返回到登錄界面。等待用戶登錄。&l
73、t;/p><p><b> 第四章 系統(tǒng)實(shí)現(xiàn)</b></p><p><b> 4.1用戶登錄</b></p><p> 員工通過輸入員工編號(hào)和密碼登錄入系統(tǒng),如果密碼或者員工編號(hào)不正確,則不任許員工登錄到系統(tǒng)。只有有此系統(tǒng)賬號(hào)的員工才可以登錄到本系統(tǒng),并把員工的基本信心賦到SESSION中,以便其他工能模塊能獲得登錄員
74、工的基本信息。用戶登錄界面如圖4.1所示。</p><p><b> 圖4.1 登陸界面</b></p><p><b> 關(guān)鍵代碼如下:</b></p><p> loginOK = waiter.checkPassword(password);</p><p> if (loginOK)
75、 {</p><p> session.setAttribute("info", waiter);</p><p> session.setAttribute("worknum", workNum);</p><p> session.setAttribute("pwd", password);<
76、;/p><p> response.sendRedirect("counter/home.jsp");</p><p> 系統(tǒng)驗(yàn)證密碼正確后 ,則把人員信息,付給session中,直接跳轉(zhuǎn)到系統(tǒng)首頁</p><p><b> 4.2系統(tǒng)主界面</b></p><p> 通過前期的分析和設(shè)計(jì),現(xiàn)將系
77、統(tǒng)具體實(shí)現(xiàn)。登錄成功進(jìn)入系統(tǒng)主頁面。系統(tǒng)主頁面中主要包括的功能有:酒店管理,關(guān)于酒店,修改酒店信息,菜單管理,區(qū)域管理,餐桌管理,人員管理,退菜列表,修改密碼,營業(yè)額,退出系統(tǒng)。系統(tǒng)主界面如圖4.2所示。</p><p> 圖4.2 系統(tǒng)主界面</p><p><b> 4.3修改密碼</b></p><p> 員工登錄后可以自行修改密碼
78、,必須先輸入原始密碼,再重新輸入兩次新密碼,如果輸入不最正確,則系統(tǒng)不任許用戶修改密碼。修改密碼界面如圖4.3所示。</p><p> 圖4.3 修改密碼界面</p><p><b> 關(guān)鍵代碼如下:</b></p><p> function check(){</p><p> if(form.newpwd.v
79、alue!=form.newpwd1.value){</p><p> alert("兩次輸入的密碼不一致");</p><p> return false;</p><p><b> }</b></p><p> if(form.newpwd.value==""||for
80、m.newpwd1.value==""||form.oldpwd.value==""){</p><p> alert("請輸入密碼");</p><p> return false;</p><p><b> }</b></p><p> if(for
81、m.oldpwd.value!=<%=pwd%>){</p><p> alert("舊密碼輸入錯(cuò)誤");</p><p> return false;</p><p><b> }</b></p><p><b> }</b></p><
82、p> 通過javascript驗(yàn)證新更改的密碼是否正確,如果不正確則提示重新輸入。</p><p><b> 4.4人員管理</b></p><p> 可以看到所有人員基本信息,包括員工姓名,員工編號(hào),員工性別,員工的職責(zé)類別。對于員工信息也可以刪除。如果新添加員工時(shí),則添加員工姓名,員工編號(hào),性別,并設(shè)置員工的默認(rèn)密碼。人員列表界面如圖4.4所示。<
83、;/p><p><b> 圖4.4 人員界面</b></p><p> 圖4.5 添加人員界面</p><p><b> 關(guān)鍵代碼如下:</b></p><p> ResultSet rs = null;</p><p> conn = DBManager.getCon
84、nection();</p><p> stmt = conn.createStatement();</p><p> String sql="select a.id,a.name,a.worknum,a.birthday,a.sex,b.name as typename from jd.dbo.waiter a,jd.dbo.waitertype b where a.typ
85、eid=b.id ";</p><p> System.out.println("sql=="+sql);</p><p> rs = stmt.executeQuery(sql);</p><p> 通過查詢方法查詢出所需要的人員信息 并利用System在后臺(tái)打印sql語句的形式調(diào)試sql是否正確。</p><
86、;p><b> 4.5區(qū)域管理</b></p><p> 系統(tǒng)給出酒店內(nèi)的所有列表,列出的信息由,區(qū)域名稱,區(qū)域說明。如果不需要某一區(qū)域可以通過刪除按鈕刪除該條數(shù)據(jù)信息。點(diǎn)“添加區(qū)域”,則必須輸入,區(qū)域名稱,以及相應(yīng)的區(qū)域說明。區(qū)域管理界面如圖4.6所示</p><p> 圖4.6 區(qū)域管理界面</p><p><b>
87、 關(guān)鍵代碼如下:</b></p><p> <jsp:useBean id="dish" scope="session" class="com.nebula.hotel.Dish" /></p><p><b> <%</b></p><p> Ve
88、ctor list = DBRecord.retrieveList("select * from Area", Class.forName("com.nebula.hotel.Area"));</p><p><b> %></b></p><p> 利用javabean方法 引用在java類中封裝的retrieveL
89、ist方法 直接等到list 結(jié)果集,在前臺(tái)顯示出來</p><p><b> 4.6餐桌管理</b></p><p> 系統(tǒng)給出酒店內(nèi)所有餐桌信息,列出餐桌編號(hào),以及所在的區(qū)域名稱,已經(jīng)餐桌的使用狀態(tài),如果刪除餐桌信息,則通過“刪除”按鈕刪除數(shù)據(jù),如果添加餐桌信息,則點(diǎn)“添加餐桌”進(jìn)入添加餐桌信息頁面,選擇餐桌所在的區(qū)域,填寫餐桌的編號(hào)。添加完保存,系統(tǒng)提示成功
90、。餐桌管理界面如圖4.7所示</p><p><b> 4.7菜單管理</b></p><p> 系統(tǒng)給出酒店所有菜單信息列表,列出菜單的名稱,菜單的價(jià)格,菜品的規(guī)格,如果刪除菜品的信息,則通過“刪除”按鈕刪除想要?jiǎng)h除的數(shù)據(jù),如果添加餐桌信息,則點(diǎn)“添加菜品”,進(jìn)入添加菜品信息頁面,選擇菜品所歸屬的類別,填寫菜品的名稱,菜品的規(guī)格,菜品的價(jià)格。菜單管理界面如圖4.
91、8所示</p><p> 圖4.7 餐桌管理界面</p><p> 圖4.8 菜單管理界面</p><p> 界面與算法和區(qū)域管理相同</p><p><b> 4.8關(guān)于酒店</b></p><p> 系統(tǒng)給出酒店基本信息,酒店的名稱,酒店的電話,酒店的地址,酒店的介紹,酒店網(wǎng)址等酒店
92、的基本信息。</p><p> 算法,直接查詢數(shù)據(jù)庫表hotel直接顯示信息</p><p><b> 4.9修改酒店信息</b></p><p> 系統(tǒng)給出酒店基本信息,酒店的名稱,酒店的電話,酒店的地址,酒店的介紹,酒店的網(wǎng)址等酒店的基本信息,如果更改酒店基本信息,更改后,保存,系統(tǒng)提示 操作成功,數(shù)據(jù)更改。修改酒店信息如圖4.9所示
93、</p><p> 圖4.9 酒店基本信息界面</p><p> 算法,直接查詢數(shù)據(jù)庫表hotel并更改酒店信息</p><p><b> 4.10酒店管理</b></p><p> 員工根據(jù)區(qū)域的選擇選擇所要預(yù)定或已經(jīng)上座的 餐桌,餐桌分4個(gè)狀態(tài),空閑狀態(tài),預(yù)定狀態(tài),就餐狀態(tài),結(jié)賬狀態(tài),用圖標(biāo)顯示餐桌的狀態(tài),比
94、文字描述更直觀,讓用戶更容易接受。</p><p> 當(dāng)餐桌是空閑狀態(tài)的時(shí)候,點(diǎn)需要就餐的餐桌,系統(tǒng)提示,開臺(tái),預(yù)定,關(guān)閉.開臺(tái) 直接輸餐桌上的就餐人數(shù),就可以下一步點(diǎn)菜或者結(jié)賬的操作,餐桌的狀態(tài)直接到就餐狀態(tài)。如果是預(yù)定輸入訂餐人姓名以及電話,則餐桌的狀態(tài)變?yōu)轭A(yù)定狀態(tài),但是餐桌為就餐狀態(tài)的時(shí)候,進(jìn)入輸入就餐人數(shù),就可進(jìn)行點(diǎn)餐的操作,服務(wù)員進(jìn)行點(diǎn)餐操作,根據(jù)菜品的分類選擇就餐客人所需要的菜品,設(shè)置菜品的狀態(tài),準(zhǔn)
95、備,已做,已上。就餐結(jié)束后,進(jìn)行結(jié)賬,系統(tǒng)會(huì)根據(jù)結(jié)賬的類型(會(huì)員,vip,特價(jià))等信息自動(dòng)計(jì)算本次就餐的價(jià)錢。</p><p><b> 關(guān)鍵代碼如下:</b></p><p><b> 開臺(tái)</b></p><p> String actionType = request.getParameter("ac
96、tType");</p><p> DinnerTable table = (DinnerTable) session.getAttribute("table");</p><p> if ((actionType != null) && actionType.equals("open")) {</p>&
97、lt;p> int guestCount = WebTools.getRequestInt(request, "guestCount");</p><p><b> try {</b></p><p> table.open(guestCount);</p><p><b> }</b>&
98、lt;/p><p> catch(Exception e) {</p><p> e.printStackTrace();</p><p> response.sendRedirect("error.jsp?err_msg=操作失敗");</p><p><b> return;</b></
99、p><p><b> }</b></p><p> response.sendRedirect("tableDetail.jsp?tableID=" + table.id);</p><p> 判斷餐桌的狀態(tài)并利用圖片顯示</p><p> if (tables != null) {</
100、p><p> for (int i = 0; i < tables.size(); i++) {</p><p> %><td><table width="38" border="0"><tr><td align="center"><%</p><
101、;p> DinnerTable table = (DinnerTable) tables.elementAt(i);%><a href="tableDetail.jsp?tableID=<%=table.id%>"><%</p><p> if (table.state == DinnerTable.STATE_EMPTY) {</p>
102、<p> %><img border=0 src="../images/table_empty.gif"></a><%</p><p> } else if (table.state == DinnerTable.STATE_USING) {</p><p> %><img border=0 src=&
103、quot;../images/table_using.gif"></a><%</p><p> } else if (table.state == DinnerTable.STATE_RESERVED) {</p><p> %><img border=0 src="../images/table_reserved.gif&quo
104、t;></a><%</p><p> } else if (table.state == DinnerTable.STATE_CHECKOUT) {</p><p> %><img border=0 src="../images/table_checkout.gif"></a><%</p>&
105、lt;p> } else if (table.state == DinnerTable.STATE_UNAVAILABLE) {</p><p> %><img border=0 src="../images/table_unavailable.gif"></a><%</p><p><b> }</b&g
106、t;</p><p><b> %></b></p><p> </td></tr><tr><td align="center"><font size="2"><%=table.serial%></font></td><
107、;/tr></table></td><%</p><p> if ((i+1)%5 == 0) {</p><p> %></tr><tr><%</p><p><b> }</b></p><p><b> 4.11營業(yè)額<
108、/b></p><p> 系統(tǒng)自動(dòng)列出每一筆交易的金額并且計(jì)算總共的營業(yè)額。營業(yè)額列表如圖4.10所示。</p><p> 圖4.10 營業(yè)額列表界面</p><p><b> 4.12退出系統(tǒng)</b></p><p> 系統(tǒng)把session信息銷毀,并直接返回到登錄界面。等待用戶登錄。</p>
109、<p><b> 關(guān)鍵代碼如下:</b></p><p> <% session.invalidate(); %></p><p> <% response.sendRedirect("login.jsp"); %></p><p> 直接銷毀當(dāng)前的session,并直接跳轉(zhuǎn)到l
110、ogin.jsp即登錄首頁</p><p><b> 第五章 系統(tǒng)測試</b></p><p> 5.1測試的作用和意義</p><p> 系統(tǒng)測試是系統(tǒng)開發(fā)周期中的一個(gè)非常重要環(huán)節(jié)。盡管在系統(tǒng)開發(fā)周期的各個(gè)階段均采取了嚴(yán)格的技術(shù)審查,但依然難免會(huì)留下錯(cuò)誤,如果系統(tǒng)的一些漏洞或錯(cuò)誤在投入運(yùn)行之前的系統(tǒng)檢測階段沒有發(fā)現(xiàn)并糾正,這些問題在運(yùn)行
111、階段是遲早會(huì)暴露出來的,到那時(shí)要糾正錯(cuò)誤將會(huì)付出更大的代價(jià)。系統(tǒng)測試占用的時(shí)間、花費(fèi)的人力和成本占軟件開發(fā)的很大比例。統(tǒng)計(jì)表明,開發(fā)較大規(guī)模的系統(tǒng),系統(tǒng)測試的工作量大約占整個(gè)軟件開發(fā)工作量的40%-50%。而對于一些特別重要的大系統(tǒng),測試的工作量和成本更大,甚至超過系統(tǒng)開發(fā)其他各階段的總和的若干倍。</p><p><b> 5.2測試方法</b></p><p>
112、 5.2.1個(gè)人單元測試</p><p> 對于小系統(tǒng),在編碼過程中,最常用的單位測試。單元測試是在軟件開發(fā)過程中要進(jìn)行的最低級別的測試活動(dòng),在單元測試活動(dòng)中,軟件的獨(dú)立單元將在與程序的其他部分相隔離的情況下進(jìn)行測試。 單元測試不僅僅是作為無錯(cuò)編碼一種輔助手段在一次性的開發(fā)過程中使用,單元測試必須是可重復(fù)的,無論是在軟件修改,或是移植到新的運(yùn)行環(huán)境的過程中。因此,所有的測試都必須在整個(gè)軟件系統(tǒng)的生命周期中進(jìn)行
113、維護(hù)。</p><p> 5.2.2系統(tǒng)功能測試</p><p> 系統(tǒng)功能測試最常見的兩種方法是黑盒測試和白盒測試,黑盒測試也稱功能測試,將軟件看作黑盒子,在完全不考慮程序的內(nèi)部結(jié)構(gòu)和特性的情況下,研究軟件的外部特性。根據(jù)軟件的需求規(guī)格說明書測試用例,從程序的輸入和輸出特性上測試是否滿足設(shè)定的功能。白盒測試也稱結(jié)構(gòu)測試,將軟件看作一個(gè)透明的白盒子,按照程序的內(nèi)部結(jié)構(gòu)和處理邏輯來選定測
114、試用例,對軟件的邏輯路徑及過程進(jìn)行測試,檢查與測試是否相符。</p><p><b> (1)鏈接測試</b></p><p> 鏈接是Web應(yīng)用系統(tǒng)的一個(gè)主要特征,它是在頁面之間切換和指導(dǎo)用戶去一些不知道地址的頁面的主要手段。鏈接測試可分為三個(gè)方面。首先,測試所有鏈接是否按指示的那樣確實(shí)鏈接到了該鏈接的頁面;其次,測試所鏈接的頁面是否存在;最后,保證Web應(yīng)用系
115、統(tǒng)上沒有孤立的頁面,所謂孤立頁面是指沒有鏈接指向該頁面,只有知道正確的URL地址才能訪問。</p><p><b> (2) 表單測試</b></p><p> 當(dāng)用戶給Web應(yīng)用系統(tǒng)管理員提交信息時(shí),就需要使用表單操作,例如用戶注冊、登陸、信息提交等。在這種情況下,我們必須測試提交操作的完整性,以校驗(yàn)提交給服務(wù)器的信息的正確性。如果表單只能接受指定的某些值,則也
116、要進(jìn)行測試。例如:只能接受某些字符,測試時(shí)可以跳過這些字符,看系統(tǒng)是否會(huì)報(bào)錯(cuò)。</p><p><b> (3) 數(shù)據(jù)庫測試</b></p><p> 在Web應(yīng)用技術(shù)中,數(shù)據(jù)庫起著重要的作用,數(shù)據(jù)庫為Web應(yīng)用系統(tǒng)的管理、運(yùn)行、查詢和實(shí)現(xiàn)用戶對數(shù)據(jù)存儲(chǔ)的請求等提供空間。在Web應(yīng)用中,最常用的數(shù)據(jù)庫類型是關(guān)系型數(shù)據(jù)庫,可以使用SQL對信息進(jìn)行處理。</p&
117、gt;<p> 在使用了數(shù)據(jù)庫的Web應(yīng)用系統(tǒng)中,一般情況下,可能發(fā)生兩種錯(cuò)誤,分別是數(shù)據(jù)一致性錯(cuò)誤和輸出錯(cuò)誤。數(shù)據(jù)一致性錯(cuò)誤主要是由于用戶提交的表單信息不正確而造成的,而輸出錯(cuò)誤主要是由于網(wǎng)絡(luò)速度或程序設(shè)計(jì)問題等引起的,針對這兩種情況,可分別進(jìn)行測試。</p><p><b> 5.3系統(tǒng)測試</b></p><p> 軟件測試方法從測試人員角度
118、看,可分為人工測試和機(jī)器測試。人工測試又稱為代碼復(fù)審。主要有三種方法:個(gè)人復(fù)查、走查、會(huì)審。機(jī)器測試分為黑盒測試(又稱功能測試)和白盒測試(又稱結(jié)構(gòu)測試)兩種。</p><p> 下面對本餐飲管理系統(tǒng)進(jìn)行測試,以檢查系統(tǒng)能否正確完成各種操作,是否能夠?qū)崿F(xiàn)預(yù)期具有的功能。</p><p><b> 1.用戶登錄</b></p><p> 輸
119、入密碼錯(cuò)誤時(shí)系統(tǒng)會(huì)提示。測試結(jié)果如圖5.1所示</p><p><b> 圖5.1 登陸界面</b></p><p><b> 2. 修改密碼</b></p><p> 員工登錄后可以自行修改密碼,輸入密碼 123,新密碼也是123</p><p> 測試結(jié)果如圖5.2所示</p>
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于java的餐飲管理系統(tǒng)畢業(yè)論文
- 畢業(yè)論文---基于java的餐飲管理系統(tǒng)
- 最新基于java的餐飲管理系統(tǒng)(畢業(yè)論文)
- 基于java的倉庫管理系統(tǒng)畢業(yè)論文
- 基于java餐飲企業(yè)網(wǎng)上訂餐系統(tǒng)畢業(yè)論文
- 餐飲管理系統(tǒng)畢業(yè)論文
- 畢業(yè)論文——餐飲管理系統(tǒng)
- 畢業(yè)論文(基于java的圖書管理系統(tǒng))
- 畢業(yè)論文——餐飲管理系統(tǒng)
- 基于java的餐飲管理系統(tǒng)畢業(yè)設(shè)計(jì)
- 基于java的餐飲管理系統(tǒng)
- 基于java的餐飲管理系統(tǒng)(
- java論壇管理系統(tǒng)——畢業(yè)論文
- java畢業(yè)論文--倉庫管理系統(tǒng)
- 基于java的人事管理系統(tǒng)畢業(yè)論文
- java酒店管理系統(tǒng)畢業(yè)論文
- 餐飲管理系統(tǒng)的設(shè)計(jì)畢業(yè)論文
- 基于java的小型貼吧管理系統(tǒng) 畢業(yè)論文
- 酒店餐飲管理系統(tǒng)畢業(yè)論文
- 畢業(yè)論文--基于java的人事管理系統(tǒng)
評論
0/150
提交評論