基于J2EE酒店管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).doc_第1頁
基于J2EE酒店管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).doc_第2頁
基于J2EE酒店管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).doc_第3頁
基于J2EE酒店管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).doc_第4頁
基于J2EE酒店管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).doc_第5頁
已閱讀5頁,還剩23頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

基于J2EE酒店管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)摘 要為了提高酒店的經(jīng)濟(jì)效益,對(duì)人流、物流、資金流進(jìn)行科學(xué)管理和有效控制,開發(fā)一個(gè)穩(wěn)定可靠的酒店管理系統(tǒng)用以提高員工的工作效率與降低各種經(jīng)營成本具有現(xiàn)實(shí)的必要性和重要意義。本系統(tǒng)基于JAVA的Application模式,采用JAVA的圖形化開發(fā)工具JCreator和Access2000數(shù)據(jù)庫進(jìn)行開發(fā),實(shí)現(xiàn)了前臺(tái)管理,客房管理與系統(tǒng)設(shè)置功能,其中前臺(tái)管理由住宿登記、追加押金與退房結(jié)賬等模塊構(gòu)成,幫助操作員進(jìn)行住宿登記,通過追加押金使房客繼續(xù)入住或直接退房結(jié)賬;客房管理由客房查詢與房態(tài)查看模塊構(gòu)成,幫助管理人員全面了解入住信息和客房狀態(tài),及時(shí)對(duì)客房清理或維修;系統(tǒng)設(shè)置由操作員管理、權(quán)限設(shè)置與房態(tài)設(shè)置等模塊構(gòu)成,使操作員實(shí)時(shí)地對(duì)操作人員的權(quán)限進(jìn)行有效地管理,對(duì)客房的設(shè)施進(jìn)行維護(hù)和更新。本系統(tǒng)具有良好的可移植性,占用系統(tǒng)資源少,方便用戶使用,能滿足酒店管理的實(shí)際需求。關(guān)鍵詞:酒店管理;JAVA;JCreator;SQLThe Design and Realization of Hotel Management System Based on J2EEAbstractIn order to increase economic benefit and control the flow of people, goods also capital effectively, it is quite necessary and significance to develop a stable and reliable hotel management system to improve staff productivity as well as lower operating. This system is designed by using the IDE of JCreator and Access2000 database. At the same time, the JAVA application mode is used in this management system. It are composed of onstage management, guestroom management and system settings. The onstage management includes three sub functions, i.e. residential registration, room management, system default. These functions help operators for the hotel registration or through additional deposit to enable the tenant to continue staying or direct billing. The guest room management has two sub-management functions, i.e. room inquiring and the state viewing. These functions can help manager to understand the room occupancy and status information in a timely manner to use cleaning rooms or maintenance. The system setting includes three functions, i.e. operator management, jurisdiction settings and room states settings. The operator management can reply a real-time operation of the authority of effective management, safeguard and update the information of rooms facilities. This system can be transplanted and possess minimal resources. It could be used easily and satisfy the need of hotel management.Key word: hotel management; JAVA; JCreator; SQL.目 錄論文總頁數(shù):25頁1引言11.1 設(shè)計(jì)背景11.2 設(shè)計(jì)意義11.3 設(shè)計(jì)方法12開發(fā)工具與平臺(tái)22.1 JAVA語言22.2 JDK工具32.3 JCreator工具32.4 SQL數(shù)據(jù)庫32.5 ACCESS數(shù)據(jù)庫43系統(tǒng)需求43.1 需求分析43.2 系統(tǒng)流程53.3 性能需求54總體設(shè)計(jì)64.1 功能分析64.2 數(shù)據(jù)庫設(shè)計(jì)65詳細(xì)設(shè)計(jì)95.1 登陸模塊95.2 前臺(tái)管理模塊95.2.1 住宿登記105.2.2 追加押金115.2.3 退房結(jié)賬115.3 客房管理模塊135.3.1 客房查詢135.3.2 房態(tài)查看145.4 系統(tǒng)設(shè)置模塊165.4.1 權(quán)限設(shè)置165.4.2 房態(tài)設(shè)置185.4.3 操作員管理196系統(tǒng)測(cè)試206.1 功能測(cè)試206.2 測(cè)試總結(jié)22結(jié) 論22參考文獻(xiàn)23致 謝24聲 明251 引言1.1 設(shè)計(jì)背景隨著計(jì)算機(jī)技術(shù)的飛速發(fā)展,信息時(shí)代的到來,信息改變了我們這個(gè)社會(huì)。各類行業(yè)在日常經(jīng)營管理各個(gè)方面也在悄悄地走向規(guī)范化和信息化。酒店管理的信息化程度體現(xiàn)在將計(jì)算機(jī)及信息技術(shù)應(yīng)用于經(jīng)營與管理,以現(xiàn)代化工具代替?zhèn)鹘y(tǒng)手工作業(yè)。無疑,使用信息化管理使客房管理更先進(jìn)、更高效、更科學(xué),信息交流更迅速。酒店管理系統(tǒng)是酒店經(jīng)營管理中不可缺少的部分,它的內(nèi)容對(duì)于經(jīng)營的決策者和管理者來說都至關(guān)重要,所以酒店管理系統(tǒng)應(yīng)該能夠?yàn)橛脩籼峁┏渥愕男畔⒑涂旖莸牟樵兪侄?。但一直以來人們使用傳統(tǒng)人工的方式管理文件檔案,這種管理方式存在著許多弊端,如:效率低、保密性差,容易出現(xiàn)差錯(cuò)等,且對(duì)于查詢空房間及已定房間等極為不方便。酒店管理是將酒店管理與計(jì)算機(jī)技術(shù)緊密結(jié)合起來,對(duì)酒店的日常事務(wù)進(jìn)行現(xiàn)代化的科學(xué)管理,以此來提高酒店形象、檔次和服務(wù)水準(zhǔn)。這不僅使工作人員的勞動(dòng)強(qiáng)度降低,工作效率增加,而且能快速地調(diào)度酒店各部門的工作,實(shí)時(shí)動(dòng)態(tài)地掌握酒店的經(jīng)營狀況,從而為企業(yè)帶來良好的經(jīng)濟(jì)效益和社會(huì)效益。在國內(nèi),近年來,隨著我國改革開放的發(fā)展,國內(nèi)的酒店服務(wù)業(yè)得到了日新月異的發(fā)展。現(xiàn)代酒店作為一體化的接待場(chǎng)所,相當(dāng)于一個(gè)小型社會(huì)。對(duì)一個(gè)城市而言,酒店業(yè)也起到了舉足輕重的作用。作為一種以服務(wù)為主的無煙工業(yè),酒店在其運(yùn)作期間,服務(wù)水平的高低,直接影響到酒店的形象和聲譽(yù),如服務(wù)安排、調(diào)度等。以客房管理為核心,為用戶提供迅速、高效的服務(wù),減免手工處理的繁瑣與誤差的酒店管理系統(tǒng)能提高酒店的服務(wù)質(zhì)量,再配合現(xiàn)代化的酒店管理,能獲得更好的經(jīng)濟(jì)效益。1.2 設(shè)計(jì)意義面對(duì)龐大的信息量,酒店在正常運(yùn)營中需要對(duì)客房資源、顧客信息、結(jié)算信息進(jìn)行管理,為了輕松的處理酒店龐大的信息量,減少在管理上面的物力和人力,提高酒店的工作效率和經(jīng)濟(jì)效益,及時(shí)了解各個(gè)環(huán)節(jié)中信息的變更。開發(fā)一個(gè)酒店管理系統(tǒng)將會(huì)為酒店的管理帶來極大的方便,并且降低酒店的管理成本。通過系統(tǒng),可以做到信息的規(guī)范管理、統(tǒng)計(jì)和快速的查詢,從而減少在管理方面的工作量。在某種意義上,酒店管理的信息化已成為現(xiàn)代化酒店的重要標(biāo)志。1.3 設(shè)計(jì)方法本系統(tǒng)利用信息技術(shù)提高酒店的管理水平、服務(wù)水平。酒店管理系統(tǒng)主要實(shí)現(xiàn)住宿登記、追加押金、退房結(jié)賬、房態(tài)查看以及管理員權(quán)限管理等功能。將動(dòng)態(tài)實(shí)時(shí)的住宿登記、追加押金等有機(jī)地聯(lián)系在一起;對(duì)操作員權(quán)限分類管理,有助于即使有效的對(duì)客戶進(jìn)行服務(wù),對(duì)客房進(jìn)行全方位的管理,提高服務(wù)質(zhì)量。使用本系統(tǒng)可以處理相對(duì)煩瑣的客流量統(tǒng)計(jì)和資金的管理。操作人員可通過房態(tài)查看或客房查詢來進(jìn)行住宿登記,也可通過追加押金使房客繼續(xù)入住或直接退房結(jié)賬。操作員管理可實(shí)時(shí)地對(duì)操作人員的權(quán)限進(jìn)行有效地管理和設(shè)置從而使酒店在管理上分工明確。本系統(tǒng)運(yùn)用JAVA的圖形化開發(fā)工具JCreator和Access2000數(shù)據(jù)庫原理等技術(shù),以及采用JAVA的Application模式進(jìn)行開發(fā)設(shè)計(jì)。2 開發(fā)工具與平臺(tái)為了適用系統(tǒng)運(yùn)行平臺(tái)的變化性,本系統(tǒng)選擇當(dāng)今流行的Java語言作為系統(tǒng)的開發(fā)語言。Java語言具有跨平臺(tái)的優(yōu)勢(shì),相對(duì)于其他語言來說整個(gè)系統(tǒng)的可移植性非常高,對(duì)于平臺(tái)的依賴關(guān)系非常小,只要可以安裝JDK,系統(tǒng)就可以正常運(yùn)行。本酒店管理系統(tǒng)確定的軟件系統(tǒng)環(huán)境:l 需要安裝Sun 公司發(fā)布的JDK1.5l 操作系統(tǒng):WinXPl 數(shù)據(jù)庫軟件:Access2000l 開發(fā)軟件為:JCreator硬件系統(tǒng)環(huán)境配置:l CPU :P4或更高處理器l 內(nèi)存:256MBl 硬盤:20G及以上l 顯示器:VGA或更高分辨率的顯示器l 相應(yīng)的輸入輸出設(shè)備2.1 JAVA語言Java是SUN公司開發(fā)的一種面向?qū)ο蟮男乱淮W(wǎng)絡(luò)編程語言,可在各種不同的機(jī)器、操作系統(tǒng)的網(wǎng)絡(luò)環(huán)境中進(jìn)行開發(fā),具有解釋型語言(如Basic語言)和編譯型語言(如C語言)的特性。用Java開發(fā)的程序可以在網(wǎng)絡(luò)上傳輸,并運(yùn)行于任何客戶機(jī)上。其主要特點(diǎn)如下:a、簡(jiǎn)單性。Java語言通過提供最基本的方法來完成指定的任務(wù),只需理解一些基本的概念,就可以編寫出適合于各種情況的應(yīng)用程序。b、面向?qū)ο?。Java語言的設(shè)計(jì)集中于對(duì)象及其接口,提供簡(jiǎn)單的類機(jī)制以及動(dòng)態(tài)的接口模型。c、可靠性。Java在編譯和運(yùn)行程序時(shí),對(duì)可能出現(xiàn)的問題進(jìn)行檢查,以消除錯(cuò)誤的產(chǎn)生。提供自動(dòng)垃圾收集來進(jìn)行內(nèi)存管理,防止程序員在管理內(nèi)存時(shí)容易產(chǎn)生的錯(cuò)誤。通過集成的面向?qū)ο蟮睦馓幚頇C(jī)制,在編譯時(shí),Java提示出可能出現(xiàn)但未被處理的例外,幫助程序員正確地進(jìn)行選擇以防止系統(tǒng)的崩潰。d、安全性。用于網(wǎng)絡(luò)、分布式環(huán)境下的Java必須要防止病毒的入侵。Java不支持指針,一切對(duì)內(nèi)存的訪問都必須通過對(duì)象的實(shí)例變量來實(shí)現(xiàn),防止程序員使用“特洛伊”木馬等欺騙手段訪問對(duì)象的私有成員,同時(shí)也避免了指針操作中容易產(chǎn)生的錯(cuò)誤。e、體系結(jié)構(gòu)中立。Java解釋器生成與體系結(jié)構(gòu)無關(guān)的字節(jié)碼指令,只要安裝Java運(yùn)行系統(tǒng),Java程序就可在任意的處理器上運(yùn)行。f、可移植性。與平臺(tái)無關(guān)的特性使Java程序可以方便地被移植到網(wǎng)絡(luò)上的不同機(jī)器。同時(shí),Java的類庫中也實(shí)現(xiàn)了與不同平臺(tái)的接口,使這些類庫可以移植。g、解釋執(zhí)行。Java解釋器直接對(duì)Java字節(jié)碼進(jìn)行解釋執(zhí)行。2.2 JDK工具JDK (Java Development Kit )是Java開發(fā)工具包的縮寫,是一種用于構(gòu)建在 Java 平臺(tái)上發(fā)布的應(yīng)用程序、applet 和組件的開發(fā)環(huán)境,它是一切Java應(yīng)用程序的基礎(chǔ),所有的Java應(yīng)用程序是構(gòu)建在這之上的。JDK由一個(gè)標(biāo)準(zhǔn)類庫和一組建立、測(cè)試及建立文檔的Java實(shí)用程序組成。其核心Java API是一些預(yù)定義的類庫,開發(fā)人員需要用這些類來訪問Java語言的功能。Java API包括一些重要的語言結(jié)構(gòu)以及基本圖形,網(wǎng)絡(luò)和文件I/O。Java API的非I/O部分對(duì)于運(yùn)行Java的所有平臺(tái)是相同的,而I/O部分則僅在通用Java環(huán)境中實(shí)現(xiàn)。其中包括了Java編譯器、JVM、大量的Java工具以及Java基礎(chǔ)API里面是Java類庫和Java的語言規(guī)范,同時(shí)Java語言的任何改進(jìn)都應(yīng)當(dāng)加到其中,作為后續(xù)版本發(fā)布。2.3 JCreator工具JCreator是一個(gè)用于Java程序設(shè)計(jì)的集成開發(fā)環(huán)境,具有編輯、調(diào)試、運(yùn)行Java程序的功能。同時(shí)也具有語法著色、代碼自動(dòng)完成、代碼參數(shù)提示、工程向?qū)?、類向?qū)У裙δ?。第一次啟?dòng)時(shí)提示設(shè)置Java JDK主目錄及JDK JavaDoc目錄,軟件自動(dòng)設(shè)置好類路徑、編譯器及解釋器路徑,還可以在幫助菜單中使用JDK Help。但目前版本對(duì)中文支持性不好。2.4 SQL數(shù)據(jù)庫SQL數(shù)據(jù)庫的體系結(jié)構(gòu)基本上也是三級(jí)模式。SQL術(shù)語與傳統(tǒng)的關(guān)系模型術(shù)語不同。在SQL中,外模式對(duì)應(yīng)于視圖,模式對(duì)應(yīng)于基本表,元組稱為“行”,屬性稱為“列”。內(nèi)模式對(duì)應(yīng)于存儲(chǔ)文件。SQL數(shù)據(jù)庫的體系結(jié)構(gòu)特點(diǎn):A、一個(gè)SQL模式(Schema)是表和約束的集合。B、一個(gè)表(Table)是行(Row)的集合,每行是列(Column)的序列,每列對(duì)應(yīng)一個(gè)數(shù)據(jù)項(xiàng)。C、張表可以是一個(gè)基本表,也可以是一個(gè)視圖,基本表是實(shí)際存儲(chǔ)在數(shù)據(jù)庫中的表。視圖是從基本表或其他視圖中導(dǎo)出的表,本身不獨(dú)立存儲(chǔ)在數(shù)據(jù)庫中,也就是說數(shù)據(jù)庫中只存放視圖的定義而不存放視圖的數(shù)據(jù),視圖是一個(gè)虛表。D、一個(gè)基本表可跨一個(gè)或多個(gè)存儲(chǔ)文件,一個(gè)存儲(chǔ)文件也可存放一個(gè)或多個(gè)基本表,一個(gè)表可以帶若干索引,索引也存放在存儲(chǔ)文件中。每個(gè)存儲(chǔ)文件與外部存儲(chǔ)器上一個(gè)物理文件對(duì)應(yīng)。存儲(chǔ)文件的邏輯結(jié)構(gòu)組成了關(guān)系數(shù)據(jù)庫的內(nèi)模式。用戶可以用SQL語句對(duì)視圖和基本表進(jìn)行查詢等操作。在用戶看來,視圖和基本表是一樣的,都是關(guān)系(即表格)。SQL用戶可以是應(yīng)用程序,也可以是終端用戶。SQL語句可嵌入在宿主語言的程序中使用;SQL語言也能作為獨(dú)立的用戶接口,供交互環(huán)境下的終端用戶使用。2.5 ACCESS數(shù)據(jù)庫ACCESS可運(yùn)行于各種Microsoft Windows系統(tǒng)環(huán)境中,由于繼承了Windows的特性,不僅易于使用,而且界面友好,如今在世界各地廣泛流行。它并不需要數(shù)據(jù)庫管理者具有專業(yè)的程序設(shè)計(jì)水平,任何非專業(yè)的用戶都可以用它來創(chuàng)建功能強(qiáng)大的數(shù)據(jù)庫管理系統(tǒng)。而且它符合關(guān)系數(shù)據(jù)模型,需要完整性約束。還有它不需要配置數(shù)據(jù)源,可移植性好,給用戶帶來了極大的方便。3 系統(tǒng)需求3.1 需求分析需求分析是從客戶的需求中提取出軟件系統(tǒng)能夠幫助用戶解決的業(yè)務(wù)問題,現(xiàn)在我國的中小型酒店客房管理水平還停留在紙介質(zhì)的基礎(chǔ)上,這樣的機(jī)制已經(jīng)不能適應(yīng)時(shí)代的發(fā)展,因?yàn)樗速M(fèi)了許多人力和物力,在信息時(shí)代這種傳統(tǒng)的管理方法必然被計(jì)算機(jī)為基礎(chǔ)的信息管理所取代。而購買大型通用酒店管理系統(tǒng),對(duì)小型酒店老板來說,需要付出昂貴的代價(jià),而且管理項(xiàng)目不一定完全符合小型酒店客房管理的要求。因此根據(jù)企業(yè)目前實(shí)際的酒店管理情況開發(fā)一套酒店管理系統(tǒng)是十分必要的。通過對(duì)用戶業(yè)務(wù)問題的分析,規(guī)劃出系統(tǒng)的功能模塊,即定義用例。這個(gè)步驟是對(duì)理解需求的升華,直接關(guān)系到該系統(tǒng)的質(zhì)量。面對(duì)酒店發(fā)展過程中日益出現(xiàn)的問題及各種情況,在實(shí)施酒店客房管理系統(tǒng)之后,應(yīng)解決以下問題:信息化管理,可隨時(shí)掌握客房、住宿、操作員等信息;系統(tǒng)內(nèi)部控制嚴(yán)密,數(shù)據(jù)存儲(chǔ)安全可靠;系統(tǒng)工程界面友好美觀,操作簡(jiǎn)易,查詢多樣且方便;提高工作效率,減少工作成本。3.2 系統(tǒng)流程系統(tǒng)流程如圖3-1所示,房客來到酒店首先要進(jìn)行住宿登記,同時(shí)管理員對(duì)房態(tài)進(jìn)行查看如有空閑客房,房客就可以手牌入住。當(dāng)退房結(jié)賬時(shí),如果已經(jīng)超出宿費(fèi),就要進(jìn)行掛帳退房,或客人直接結(jié)賬。當(dāng)宿費(fèi)使用完畢,如需要繼續(xù)入住時(shí),就要追加押金,重新登記。另外管理員可以隨時(shí)進(jìn)行房態(tài)查看,及時(shí)了解客房信息,對(duì)房客進(jìn)行宿費(fèi)提醒,更好的提高管理效率。 圖3-1 系統(tǒng)流程圖3.3 性能需求本系統(tǒng)主要是開發(fā)一個(gè)酒店管理系統(tǒng),主要功能有前臺(tái)管理:包括住宿登記、追加押金、退房結(jié)賬;客房管理:包括客房查詢、房態(tài)查看;系統(tǒng)設(shè)置:包括操作員管理、權(quán)限設(shè)置、房態(tài)設(shè)置等。本系統(tǒng)可應(yīng)用于小型的酒店管理,如果想應(yīng)用于大型酒店管理,需要進(jìn)行數(shù)據(jù)庫替換和功能模塊擴(kuò)展。本系統(tǒng)要求服務(wù)人員具備一定的計(jì)算機(jī)基礎(chǔ)知識(shí),通過簡(jiǎn)單培訓(xùn)便能較為熟練的操作計(jì)算機(jī)和操作本系統(tǒng)。4 總體設(shè)計(jì)4.1 功能分析系統(tǒng)主要功能模塊如圖4-1所示,本系統(tǒng)利用信息技術(shù)提高酒店管理的水平,并希望通過本系統(tǒng)的開發(fā)使用使得酒店能對(duì)房客住宿及客房狀況等一系列業(yè)務(wù)進(jìn)行系統(tǒng)地管理。系統(tǒng)由3個(gè)部分,共8個(gè)完整的模塊構(gòu)成。其中具體部分是:前臺(tái)管理、客房管理和系統(tǒng)設(shè)置。具體子模塊如下:l 前臺(tái)管理:包括住宿登記、追加押金、退房結(jié)賬l 客房管理:包括客房查詢、房態(tài)查看l 系統(tǒng)設(shè)置:包括權(quán)限設(shè)置、房態(tài)設(shè)置、操作員管理圖4-1 系統(tǒng)結(jié)構(gòu)圖4.2 數(shù)據(jù)庫設(shè)計(jì)本酒店管理系統(tǒng)采用采用關(guān)系數(shù)據(jù)庫模型,用Access 2000作為數(shù)據(jù)庫管理系統(tǒng)(DBMS),對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ),在數(shù)據(jù)庫應(yīng)用系統(tǒng)的開發(fā)過程中,數(shù)據(jù)庫的結(jié)構(gòu)設(shè)計(jì)是一個(gè)非常重要的問題。數(shù)據(jù)庫設(shè)計(jì)是指對(duì)數(shù)據(jù)庫中各個(gè)表結(jié)構(gòu)的設(shè)計(jì),包括信息保存在哪個(gè)表格中,各個(gè)表的結(jié)構(gòu)如何,字段屬性如何,以及各個(gè)表之間的關(guān)系。數(shù)據(jù)庫設(shè)計(jì)的好壞將直接對(duì)應(yīng)用系統(tǒng)的效率以及實(shí)現(xiàn)的效果產(chǎn)生影響,好的數(shù)據(jù)庫設(shè)計(jì)會(huì)減少數(shù)據(jù)庫的存儲(chǔ)量,保證比較高數(shù)據(jù)完整性和一致性,同時(shí)提高系統(tǒng)的響應(yīng)速度,簡(jiǎn)化基于此數(shù)據(jù)庫的應(yīng)用程序的實(shí)現(xiàn)等等。 在本系統(tǒng)中存在三個(gè)數(shù)據(jù)對(duì)象包括:房客、客房、管理員。并且這三者分別存在這樣的屬性。房客登記時(shí)包括(入住時(shí)間、姓名、性別、押金等基本信息);管理員包括(登陸名和密碼、管理權(quán)限等);客房包括(房間類型、房間狀態(tài)、房間號(hào)碼、價(jià)格等)。通過這些對(duì)象的不同結(jié)構(gòu)和屬性,以及它們包含的各種信息,相互間作用形成數(shù)據(jù)流,可以以此得到E-R圖如圖4-2所示。 圖4-2 系統(tǒng)E-R圖根據(jù)上面的關(guān)系和分析設(shè)定本系統(tǒng)數(shù)據(jù)庫名為hoteldata.mdb,包含以下3個(gè)表:操作員表(admin)、客房信息表(roominfo)、房客信息表(tenant)。操作員表(admin)如表4-3所示。表4-3 操作員表(admin)字段名稱字段名含義數(shù)據(jù)類型字段大小Admin(主鍵)用戶名文本15pin密碼文本15legalpower管理權(quán)限文本15enter是否進(jìn)入系統(tǒng)是/否1前臺(tái)管理操作權(quán)限是/否1客房管理操作權(quán)限是/否1查詢統(tǒng)計(jì)操作權(quán)限是/否1掛帳管理操作權(quán)限是/否1房態(tài)設(shè)置操作權(quán)限是/否1權(quán)限設(shè)置操作權(quán)限是/否1應(yīng)用于系統(tǒng)設(shè)置模塊,對(duì)管理員的信息進(jìn)行查看,對(duì)權(quán)限進(jìn)行修改或者增加等操作。該表中主鍵是Admin字段,其余字段如前臺(tái)管理、客房管理、查詢統(tǒng)計(jì)、房態(tài)設(shè)置及權(quán)限設(shè)置等均表示管理員是否有權(quán)限操作相關(guān)模塊。客房信息表(roominfo)如表4-4所示。表4-4 客房信息表(roominfo)字段名稱數(shù)據(jù)類型字段大小房間號(hào)(主鍵)文本50房間類型文本10價(jià)格數(shù)字雙精度房態(tài)文本10使用設(shè)施文本50備注備注備注用于對(duì)客房的信息進(jìn)行查看和管理,比如說了解房間是否有人入住,是否在修理過程等。該表的主鍵為房間號(hào)字段,值為非空。房客信息表(tenant)如表4-5所示。表4-5 房客信息表(tenant)字段名稱數(shù)據(jù)類型字段大小編號(hào)(主鍵)文本50房客姓名文本20性別文本6證件類型文本10證件號(hào)碼文本50籍貫文本50聯(lián)系方式文本50房間號(hào)文本50房間類型文本10入住日期文本50退房日期文本50是否掛帳是/否1宿費(fèi)及押金數(shù)字雙精度型折扣率數(shù)字單精度型住宿備注備注備注操作員文本50用于對(duì)房客的信息查看和管理,比如說房客的宿費(fèi)狀況,有多少房客入住,入住的是什么檔次的房間等等。該表的主鍵為編號(hào)字段。5 詳細(xì)設(shè)計(jì)詳細(xì)設(shè)計(jì)階段就是把解決方法具體化,設(shè)計(jì)出詳細(xì)規(guī)格說明,包含必要的細(xì)節(jié),程序員可以根據(jù)它們寫出實(shí)際的程序代碼,詳細(xì)設(shè)計(jì)也稱模塊設(shè)計(jì),在這個(gè)階段將詳細(xì)地設(shè)計(jì)每個(gè)模塊具體的實(shí)現(xiàn)功能。5.1 登陸模塊A、實(shí)現(xiàn)目標(biāo)操作員進(jìn)入系統(tǒng)前,必須通過系統(tǒng)登錄進(jìn)入主程序界面,系統(tǒng)登錄界面如圖5-1所示,主要實(shí)現(xiàn)以下功能:l 確認(rèn)用戶的身份及使用權(quán)限l 對(duì)系統(tǒng)信息起到保密作用圖5-1系統(tǒng)登錄界面B、核心代碼/其余代碼段略String a=(String)adm.getSelectedItem().trim();/選中下拉列表框中的名字 String p=new String(psw.getPassword();/選中用戶輸入的密碼rs=stmt.executeQuery(select * from admin where admin=+a+and pin=+p+);/校驗(yàn)用戶名和密碼5.2 前臺(tái)管理模塊前臺(tái)管理模塊分為:住宿登記、追加押金、退房結(jié)賬。5.2.1 住宿登記A、實(shí)現(xiàn)目標(biāo)用戶單擊主菜單前臺(tái)管理下的住宿登記子菜單,進(jìn)入住宿登記子菜單界面,如圖5-2所示,住宿登記子菜單主要實(shí)現(xiàn)如下功能:l 顯示入住房客基本信息l 顯示住宿房間基本信息l 對(duì)房客及入住房間信息進(jìn)行住宿登記圖5-2 住宿登記界面B、核心代碼public void addTenantIntoTable(String tenant)stat.execute(insert into tenant values(+tenant0+,+tenant1+,+tenant2+,+tenant3+,+tenant4+,+tenant5+,+tenant6+,+tenant7+,+tenant8+,+tenant9+,+tenant10+,+tenant11+,+tenant12+,+tenant13+,+tenant14+,+tenant15+);/初始化房客登記信息stat.executeUpdate(update roominfo set 房態(tài)=入住中 where 房間號(hào)=+tenant7+);/同時(shí)修改客房狀態(tài)5.2.2 追加押金A、實(shí)現(xiàn)目標(biāo)用戶單擊主菜單前臺(tái)管理下的追加押金子菜單,進(jìn)入追加押金子菜單界面,如下圖5-3所示,追加押金子菜單主要實(shí)現(xiàn)如下功能:l 顯示入住房客基本信息l 顯示房客已付費(fèi)用等基本信息l 對(duì)房客及續(xù)住信息進(jìn)行續(xù)住登記圖5-3 追加押金界面B、核心代碼public void addingCash()stat.executeUpdate(update tenant set 退房日期=+date+,宿費(fèi)及押金=+cash+,操作員=+op+ where 房間號(hào)=+roomnumber+);conn.close();/對(duì)房客的信息進(jìn)行重新登記5.2.3 退房結(jié)賬A、實(shí)現(xiàn)目標(biāo)用戶單擊主菜單前臺(tái)管理下的退房結(jié)賬子菜單,進(jìn)入退房結(jié)賬菜單界面,如圖5-4所示,退房結(jié)賬子菜單主要實(shí)現(xiàn)如下功能:l 顯示入住房客基本信息l 顯示房客已付費(fèi)用及應(yīng)付費(fèi)用等基本信息l 根據(jù)費(fèi)用情況來決定是否進(jìn)行掛帳退房操作還是退房結(jié)賬操作圖5-4退房結(jié)賬界面B、核心代碼public void chargeToAccount(String roomnumber)stat.executeUpdate(update tenant set 是否掛帳=true where 房間號(hào)+roomnumber+);stat.executeUpdate(update roominfo set 房態(tài)=空閑中 where 房間號(hào)=+roomnumber+);/掛帳時(shí),更新數(shù)據(jù)庫public void checkOut(String roomnumber)stat.executeUpdate(delete from tenant where 是否掛帳=falseand 房間號(hào)=+roomnumber+);stat.executeUpdate(update roominfo set 房態(tài)=空閑中 where 房間號(hào)=+roomnumber+);/退房結(jié)賬時(shí),更新客房狀態(tài)5.3 客房管理模塊客房管理模塊分為:客房查詢、房態(tài)查看。5.3.1 客房查詢A、實(shí)現(xiàn)目標(biāo)用戶單擊主菜單客房管理下的客房查詢子菜單,進(jìn)入客房查詢子菜單界面,如圖5-5所示,客房查詢子菜單主要實(shí)現(xiàn)如下功能:l 按房間號(hào)碼進(jìn)行客房查詢l 按房間類型進(jìn)行客房查詢l 按房間狀態(tài)方式進(jìn)行客房查詢l 按綜合方式進(jìn)行客房查詢l 按全部客房進(jìn)行查詢圖5-5客房查詢界面B、核心代碼public void queryRoomInfo(int option)switch(option)case 0:rs=stat.executeQuery(select * from roominfo where 房間號(hào)+querystr+);/按房間號(hào)來查看case 1:rs=stat.executeQuery(select * from roominfo where 房間類型=+querystr+ order by 房間號(hào));/按房間類型來查看case 2:rs=stat.executeQuery(select * from roominfo where 房態(tài)=+querystr+ order by 房間號(hào));/按房間狀態(tài)來查看case 3:rs=stat.executeQuery(select * from roominfo where 房間類型=+querystr1+ and 房態(tài)=+querystr2+ order by 房間號(hào));/按房間類型和房間狀態(tài)來組合查看case 4:rs=stat.executeQuery(select * from roominfo order by 房間號(hào));/全部查詢5.3.2 房態(tài)查看A、實(shí)現(xiàn)目標(biāo)用戶單擊主菜單客房管理下的房態(tài)查看子菜單,進(jìn)入房態(tài)查看子菜單界面,如圖5-6所示,房態(tài)查看子菜單主要實(shí)現(xiàn)如下功能:l 顯示入住中的房間及其房間類型l 顯示空閑中的房間及其房間類型l 顯示維修中的房間及其房間類型圖5-6房態(tài)查看界面B、核心代碼public void showRoomStatusInfo()/搜索全部房間if(count%7=0)iRow=count/7;elseiRow=count/7+1;setLayout(new GridLayout(iRow,7,8,15);eachRoomStatus=new JLabelcount;rs=stat.executeQuery(select * from roominfo order by 房間號(hào));/導(dǎo)出房間狀態(tài) eachRoomStatusi.setBorder(BorderFactory.createTitledBorder(房間:+rs.getString(1)+號(hào));eachRoomStatusi.setToolTipText(房間類型:+rs.getString(2);add(eachRoomStatusi+);/顯示本房間的狀態(tài),空閑,入住還是維修中5.4 系統(tǒng)設(shè)置模塊系統(tǒng)設(shè)置模塊分為:權(quán)限設(shè)置、房態(tài)設(shè)置、操作員管理。5.4.1 權(quán)限設(shè)置A、實(shí)現(xiàn)目標(biāo)用戶單擊主菜單系統(tǒng)設(shè)置下的權(quán)限設(shè)置子菜單,進(jìn)入權(quán)限設(shè)置子菜單界面,如圖5-7所示,權(quán)限設(shè)置子菜單主要實(shí)現(xiàn)如下功能:l 顯示普通權(quán)限操作員的權(quán)限信息l 對(duì)普通權(quán)限操作員的權(quán)限進(jìn)行設(shè)置圖5-7權(quán)限設(shè)置界面B、核心代碼public void setTree()String str1=(允許) ,str2=(不允許);root=new DefaultMutableTreeNode(當(dāng)前操作員:+operator+(+legalpower+));rs=stmt.executeQuery(select admin from admin where legalpower=普通權(quán)限 );childtree=new DefaultMutableTreeNode11;childtree00=new DefaultMutableTreeNode(系統(tǒng)提示:系統(tǒng)中暫無普通權(quán)限用戶);/當(dāng)沒有普通操作員時(shí),如此顯示root.add(childtree00);childtree=new DefaultMutableTreeNodecount6;option=new DefaultMutableTreeNodecount5;rs=stmt.executeQuery(select * from admin where childtreeid0=new DefaultMutableTreeNode(操作員: +rs.getString(1)+ (普通權(quán)限);optionid0=new DefaultMutableTreeNode(rs.getBoolean(5)?前臺(tái)管理 +str1:前臺(tái)管理 +str2);childtreeid1=new DefaultMutableTreeNode(optionid0);optionid1=new DefaultMutableTreeNode(rs.getBoolean(6)?客房管理 +str1:客房管理 +str2);childtreeid2=new DefaultMutableTreeNode(optionid1);optionid2=new DefaultMutableTreeNode(rs.getBoolean(7)?查詢統(tǒng)計(jì) +str1:查詢統(tǒng)計(jì) +str2);childtreeid3=new DefaultMutableTreeNode(optionid2);optionid3=new DefaultMutableTreeNode(rs.getBoolean(8)?掛帳管理 +str1:掛帳管理 +str2);childtreeid4=new DefaultMutableTreeNode(optionid3);optionid4=new DefaultMutableTreeNode(rs.getBoolean(9)?房態(tài)設(shè)置 +str1:房態(tài)設(shè)置 +str2);childtreeid5=new DefaultMutableTreeNode(optionid4);childtreeid0.add(childtreeid1);childtreeid0.add(childtreeid2);childtreeid0.add(childtreeid3);childtreeid0.add(childtreeid4);childtreeid0.add(childtreeid5);root.add(childtreeid0); /修改數(shù)據(jù)庫中權(quán)限 tree=new JTree(root);tree.addTreeSelectionListener(new TreeSelectionListener()public void valueChanged(TreeSelectionEvent e)if(str2.equals(允許)node.setUserObject(str1+ (不允許);flag=false;elsenode.setUserObject(str1+ (允許) );flag=true;stmt.executeUpdate(update admin set +str1+=+flag+ where admin=+str3+);/修改界面樹中的狀態(tài)5.4.2 房態(tài)設(shè)置A、實(shí)現(xiàn)目標(biāo)用戶單擊主菜單系統(tǒng)設(shè)置下的房態(tài)設(shè)置子菜單,進(jìn)入房態(tài)設(shè)置子菜單界面,如圖5-8所示,房態(tài)設(shè)置子菜單主要實(shí)現(xiàn)如下功能:l 顯示房間基本信息l 房間設(shè)置功能l 修改設(shè)置功能l 刪除設(shè)置功能圖5-8房態(tài)設(shè)置界面B、實(shí)現(xiàn)主要程序代碼與前面實(shí)現(xiàn)代碼相似。5.4.3 操作員管理A、實(shí)現(xiàn)目標(biāo)用戶單擊主菜單系統(tǒng)設(shè)置下的操作員管理子菜單,進(jìn)入操作員管理菜單界面,如圖5-9所示,操作員管理子菜單主要實(shí)現(xiàn)如下功能:l 修改當(dāng)前操作員密碼l 查詢/刪除操作員信息l 添加操作員圖5-9 操作員管理界面B、實(shí)現(xiàn)主要程序代碼與住宿登記模塊實(shí)現(xiàn)代碼相似。擬在admin表中添加操作員的狀態(tài)等操作6 系統(tǒng)測(cè)試在軟件測(cè)試中不但要檢查系統(tǒng)是否完成了它應(yīng)該做的工作,還要檢查它是否還做了它不應(yīng)該做的工作。逐步設(shè)計(jì)出具體的軟件系統(tǒng)。在測(cè)試中應(yīng)當(dāng)竭力發(fā)現(xiàn)問題,暴露問題并不是軟件測(cè)試的最終目的,發(fā)現(xiàn)問題是為了解決問題,測(cè)試階段的根本目標(biāo)是盡可能的發(fā)現(xiàn)并排除軟件中已有的或潛藏的錯(cuò)誤,最終設(shè)計(jì)出一個(gè)高質(zhì)量的軟件滿足客戶需求。6.1 功能測(cè)試本系統(tǒng)包含有多個(gè)模塊,每個(gè)模塊都可以獨(dú)立運(yùn)行,所以本次測(cè)試采用模塊測(cè)試,保證每個(gè)模塊作為一個(gè)單元能正確運(yùn)行,即單元測(cè)試。驗(yàn)收測(cè)試就是該測(cè)試方法的手段之一?,F(xiàn)就用驗(yàn)收測(cè)試方法進(jìn)行簡(jiǎn)單的測(cè)試?,F(xiàn)在開始測(cè)試,首先登錄系統(tǒng),當(dāng)?shù)卿洺晒^后,選擇住宿登記時(shí),出現(xiàn)住宿登記界面如圖6-1所示。圖6-1測(cè)試圖按照彈出的頁面在各個(gè)文本框中添加相應(yīng)的信息,例如:填寫必填信息并且全部按照規(guī)則填入后點(diǎn)擊入住登記,系統(tǒng)則返回“系統(tǒng)提示:Mr恢恢您好!您已成功入住”,如果必填信息中有一項(xiàng)或幾項(xiàng)非法操作,則系統(tǒng)顯示“請(qǐng)?zhí)钊胱√鞌?shù)”,“請(qǐng)?zhí)盥?lián)系方式”等。成功入住如圖6-2所示。圖6-2測(cè)試圖以上結(jié)果表明入住登記模塊功能完善,房客的信息已經(jīng)注入房客信息表,通過測(cè)試。下面將對(duì)客房查詢模塊進(jìn)行測(cè)試。選擇客房查詢模塊,其初始界面如圖6-3所示。圖6-3測(cè)試圖整個(gè)頁面包括條件查詢和全部查詢,其中條件查詢方式又包括房間號(hào)碼查詢,房間類型查詢,房間狀態(tài)查詢以及綜合查詢。選中房間類型查詢,選擇豪華間,然后點(diǎn)擊條件查詢出現(xiàn)如圖6-4所示。圖6-4測(cè)試圖查詢的結(jié)果顯示查詢成功,系統(tǒng)按照房間號(hào),房間類型,價(jià)格,使用設(shè)施等列出了詳細(xì)的信息。其結(jié)果表明客房查詢模塊功能完善,通過測(cè)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論