版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、. . . . 摘摘 要要隨著社會(huì)服務(wù)行業(yè)的發(fā)展,使用管理軟件來(lái)管理酒店的客房信息也正逐步成為眾多酒店管理者的需求,而許多酒店也陸續(xù)采用了相關(guān)的酒店客房管理系統(tǒng),代替原來(lái)的手工記錄管理,使效率有明顯的提高,出錯(cuò)率顯著下降酒店客房管理系統(tǒng)可以實(shí)現(xiàn)對(duì)客房的科學(xué)化、規(guī)化、查詢顧客情況、定房信息、以與結(jié)算信息等。有助于提高管理的效率,客房管理系統(tǒng)是根據(jù)某酒店對(duì)客房管理的實(shí)際情況進(jìn)行編寫(xiě)的,主要目的是為了方便酒店對(duì)客房的實(shí)際情況進(jìn)行集中的查詢與管理工作,以提高整個(gè)酒店的工作。主要有用戶信息管理模塊、客房類型管理模塊、客房信息管理模塊、客戶信息查詢模塊、經(jīng)營(yíng)狀況統(tǒng)計(jì)模塊等。整個(gè)賓館信息管理系統(tǒng)分為兩大部分
2、,即后臺(tái)的數(shù)據(jù)管理維護(hù)和前臺(tái)的操作。后臺(tái)數(shù)據(jù)的管理能保證系統(tǒng)各項(xiàng)功能的正常運(yùn)行,前臺(tái)操作能提供給賓館客戶盡可能方便快捷的服務(wù)。本系統(tǒng)使用功能強(qiáng)大的 MyEclipse 8.5 作為開(kāi)發(fā)工具,對(duì)整個(gè)系統(tǒng)進(jìn)行設(shè)計(jì)與開(kāi)發(fā)。本系統(tǒng)可以根據(jù)各應(yīng)用的具體情況,適當(dāng)加以修改,以便更好應(yīng)用。另外,本系統(tǒng)還設(shè)計(jì)了詳細(xì)的查詢功能,以供管理人員快速掌握酒店的各項(xiàng)業(yè)務(wù)與相關(guān)信息。在數(shù)據(jù)庫(kù)設(shè)計(jì)階段使用了 Microsoft SQL Server 2005 軟件,同時(shí)介紹了數(shù)據(jù)庫(kù)的相關(guān)知識(shí),對(duì)數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)庫(kù)需求分析和數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)。分析在數(shù)據(jù)庫(kù)中要建立多少存儲(chǔ)信息的表,又列出各表的結(jié)構(gòu),分析表中字段之間的。關(guān)鍵詞關(guān)鍵詞
3、:JSP 酒店 客房 Microsoft SQL Server 2005 . . . . I / 35目 錄摘要摘要 I I目錄目錄 I I第一章緒論第一章緒論 1 11.1 系統(tǒng)開(kāi)發(fā)的背景 11.2 系統(tǒng)開(kāi)發(fā)的意義 11.3 系統(tǒng)開(kāi)發(fā)的主要容 2第二章相關(guān)技術(shù)介紹第二章相關(guān)技術(shù)介紹 3 32.1 JSP 簡(jiǎn)介 32.1.1 JSP 的優(yōu)點(diǎn) 42.1.2 JSP 的工作原理 42.1.3 JSP 的運(yùn)行環(huán)境 42.2 C/S 與 B/S 模式 62.2.1 C/S 與 B/S 的比較分析 62.2.2 B/S 模式的優(yōu)勢(shì) 62.3 SQL Server 2005 簡(jiǎn)介 72.3.1 SQL S
4、erver 數(shù)據(jù)庫(kù)數(shù)據(jù)體系結(jié)構(gòu) 92.3.2 SQL 語(yǔ)言的組成 92.3.3 對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作 9第三章第三章系統(tǒng)的分析與設(shè)計(jì)系統(tǒng)的分析與設(shè)計(jì) 10103.1 系統(tǒng)需求分析 103.2 開(kāi)發(fā)與運(yùn)行環(huán)境 113.2.1 開(kāi)發(fā)環(huán)境 113.2.2 服務(wù)器端 113.2.3 客戶端 113.3 功能模塊的設(shè)計(jì) 113.3.1 設(shè)計(jì)目標(biāo) 113.3.2 客房管理系統(tǒng)前臺(tái)的設(shè)計(jì) 123.3.3 客房管理系統(tǒng)后臺(tái)的設(shè)計(jì) 133.4 數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì) 14第四章第四章系統(tǒng)各模塊的實(shí)現(xiàn)系統(tǒng)各模塊的實(shí)現(xiàn) 17174.1 客房管理系統(tǒng)首頁(yè)的實(shí)現(xiàn) 174.1.1 客房管理系統(tǒng)首頁(yè)概述 174.1.2 客房管理系
5、統(tǒng)首頁(yè)實(shí)現(xiàn)過(guò)程 174.2 客房管理系統(tǒng)前臺(tái)的實(shí)現(xiàn) 194.2.1 客房管理系統(tǒng)前臺(tái)概述 194.2.2 客房管理系統(tǒng)前臺(tái)實(shí)現(xiàn)過(guò)程 194.2.3 客戶信息與客房類型的查詢 204.2.客房信息操作 204.3 客房管理系統(tǒng)后臺(tái)的實(shí)現(xiàn) 20. . . . 4.3.1 客房管理系統(tǒng)后臺(tái)概述 204.3.2 客房管理系統(tǒng)后臺(tái)實(shí)現(xiàn)過(guò)程 21第五章第五章系統(tǒng)測(cè)試系統(tǒng)測(cè)試 24245.1 功能測(cè)試 245.2 可用性測(cè)試 245.3 安全性試 25第六章總結(jié)與展望第六章總結(jié)與展望 2727致致 2828參考文獻(xiàn)參考文獻(xiàn) 2929. . . . 1 / 35第一章第一章 緒論緒論1.11.1 系統(tǒng)開(kāi)發(fā)的背
6、景系統(tǒng)開(kāi)發(fā)的背景隨著人員流動(dòng)規(guī)模的不斷擴(kuò)大,酒店數(shù)量的急劇增加,有關(guān)客房管理的各種信息量也在不斷成倍增長(zhǎng)。面對(duì)龐大的信息量,就需要有酒店客房訂購(gòu)管理系統(tǒng)來(lái)提高客房管理工作的效率。通過(guò)這樣的系統(tǒng),我們可以做到信息的規(guī)管理和快速查詢,從而減少了管理方面的工作量。傳統(tǒng)手工的客房信息管理,管理過(guò)程繁瑣而復(fù)雜,執(zhí)行效率低,并且易于出錯(cuò)。通過(guò)這樣的系統(tǒng),我們可以做到信息的規(guī)管理和快速查詢,實(shí)現(xiàn)了客房信息管理的系統(tǒng)化、規(guī)化和自動(dòng)化,這樣不僅減少了管理工作量,還提高了管理效率,降低了管理成本。酒店客房系統(tǒng)系統(tǒng)對(duì)酒店加強(qiáng)客房信息管理有著極其重要的作用,就一所客房數(shù)量較大的酒店來(lái)說(shuō),它的設(shè)計(jì)容非常復(fù)雜而且繁多,比
7、如擁有客房信息管理、客房類別信息管理、預(yù)定信息管理等功能,而且設(shè)計(jì)的模塊也很多,比如用戶信息管理模塊、客房類型管理模塊、客房信息管理模塊、客房經(jīng)營(yíng)管理模塊、客戶信息查詢模塊、經(jīng)營(yíng)狀況統(tǒng)計(jì)模塊等等。1.21.2 系統(tǒng)開(kāi)發(fā)的意義系統(tǒng)開(kāi)發(fā)的意義隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)日漸成熟,其強(qiáng)大的功能已被人們深刻認(rèn)識(shí)到,它已進(jìn)入人類社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來(lái)越重要的作用。并且深入到日常工作和生活的方方面面,比如文字處理、信息管理、輔助設(shè)計(jì)、圖形圖像處理、教育培訓(xùn)以與游戲娛樂(lè)等。各行各業(yè)的人們無(wú)須經(jīng)過(guò)特別的訓(xùn)練就能夠使用電腦完成許許多多復(fù)雜的工作。然而,雖然現(xiàn)在世界上已經(jīng)充滿了多如牛毛的各種軟件,但它們
8、依然不能滿足用戶的各種特殊需要,人們還不得不開(kāi)發(fā)適合自己特殊需求的軟件。今天,計(jì)算機(jī)已經(jīng)成為我們學(xué)習(xí)和工作的得力助手;計(jì)算機(jī)的價(jià)格已經(jīng)十分低廉,性能卻有了長(zhǎng)足的進(jìn)步。它已經(jīng)被應(yīng)用于許多領(lǐng)域,計(jì)算機(jī)之所以如此流行的原因主要有以下幾個(gè)方面:首先,計(jì)算機(jī)可以代替人工進(jìn)行許多繁雜的勞動(dòng);其次,計(jì)算機(jī)可以節(jié)省許多資源;第三,計(jì)算機(jī)可以大大的提高人們的工作效率;第四,計(jì)算機(jī)可以使敏感信息更加安全,等等。我作為一個(gè)計(jì)算機(jī)應(yīng)用的大專生,希望可以在這方面有所貢獻(xiàn)。改革的總設(shè)計(jì)師同志說(shuō)過(guò)“科學(xué)技術(shù)是第一生產(chǎn)力” ,我希望能用我三年的所學(xué)編制出一個(gè)實(shí)用的程序來(lái)幫助學(xué)進(jìn)行更有效的酒店客房預(yù)定系統(tǒng)。 歸納起來(lái),好處大約
9、有以下幾點(diǎn):1可以在計(jì)算機(jī)上管理酒店客房;. . . . 2只需一名錄入員即可操作本系統(tǒng),節(jié)省大量人力;3可以迅速查到所需信息?,F(xiàn)在我國(guó)還有許多的酒店客房的管理水平還停留在紙介質(zhì)的基礎(chǔ)上,這樣的機(jī)制已經(jīng)不能適應(yīng)時(shí)代的發(fā)展,因?yàn)樗速M(fèi)了許多人力和物力,采用傳統(tǒng)的紙介質(zhì)的管理模式,還主要依賴于人力手工的操作,并歸檔編號(hào)保存,事后如需查閱,則要人工從浩瀚的資料中查找,既費(fèi)時(shí)費(fèi)力又容易出錯(cuò)。作為保存資料的介質(zhì)-紙,又有容易被火燒毀,易被蟲(chóng)蛀,易發(fā)霉變質(zhì)等等缺點(diǎn)。在信息時(shí)代這種傳統(tǒng)的管理方法必然被計(jì)算機(jī)為基礎(chǔ)的信息管理所取代。這就急需有一套全新的高效的管理系統(tǒng),由計(jì)算機(jī)來(lái)代替手工完成酒店客房預(yù)定的管理。
10、1.31.3 系統(tǒng)開(kāi)發(fā)的主要容系統(tǒng)開(kāi)發(fā)的主要容本論文主要有六章容:第一章主要對(duì)開(kāi)發(fā)基于 JSP 的酒店客房管理系統(tǒng)的背景與其意義進(jìn)行了講解,使讀者了解開(kāi)發(fā)的目的與重要性。第二章介紹開(kāi)發(fā)基于 JSP 的酒店客房管理系統(tǒng)用到的相關(guān)技術(shù)。包括:JSP的優(yōu)點(diǎn)、工作原理、運(yùn)行環(huán)境;C/S 與 B/S 模式的比較,使用 B/S 模式的優(yōu)勢(shì);SQL Server 數(shù)據(jù)庫(kù)數(shù)據(jù)體系結(jié)構(gòu),SQL 語(yǔ)言的組成,對(duì)數(shù)據(jù)庫(kù)的具體操作等。第三章說(shuō)明了開(kāi)發(fā)基于 JSP 的酒店客房管理系統(tǒng)的需求,系統(tǒng)的運(yùn)行環(huán)境以與各個(gè)功能模塊的實(shí)現(xiàn)等。第四章主要講的是系統(tǒng)各模塊的實(shí)現(xiàn),主要有:首頁(yè)的實(shí)現(xiàn),前臺(tái)的實(shí)現(xiàn),后臺(tái)的實(shí)現(xiàn)等。第五章是對(duì)
11、系統(tǒng)進(jìn)行測(cè)試。主要對(duì)功能,可用性,安全性進(jìn)行了基本的測(cè)試。這么做主要是為了確保本系統(tǒng)的穩(wěn)定性和安全性。. . . . 3 / 35第二章第二章 相關(guān)技術(shù)介紹相關(guān)技術(shù)介紹2.12.1 JSPJSP 簡(jiǎn)介簡(jiǎn)介JSP 技術(shù)使用 Java 編程語(yǔ)言編寫(xiě)類 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í)行其中的程序段,然后
12、將執(zhí)行結(jié)果連同 JSP 文件中的 HTML 代碼一起返回給客戶。插入的 Java 程序段可以操作數(shù)據(jù)庫(kù)、重新定向網(wǎng)頁(yè)等,以實(shí)現(xiàn)建立動(dòng)態(tài)網(wǎng)頁(yè)所需要的功能。JSP 與 Java Servlet 一樣,是在服務(wù)器端執(zhí)行的,通常返回該客戶端的就是一個(gè) HTML 文本,因此客戶端只要有瀏覽器就能瀏覽。JSP 的 1.0 規(guī)的最后版本是 1999 年 9 月推出的,12 月又推出了 1.1 規(guī)。目前較新的是 JSP1.2 規(guī),JSP2.0 規(guī)的征求意見(jiàn)稿也已出臺(tái)。JSP 頁(yè)面由 HTML 代碼和嵌入其中的 Java 代碼所組成。服務(wù)器在頁(yè)面被客戶端請(qǐng)求以后對(duì)這些 Java 代碼進(jìn)行處理,然后將生成的 HT
13、ML 頁(yè)面返回給客戶端的瀏覽器。Java Servlet 是 JSP 的技術(shù)基礎(chǔ),而且大型的 Web 應(yīng)用程序的開(kāi)發(fā)需要 Java Servlet 和 JSP 配合才能完成。JSP 具備了 Java 技術(shù)的簡(jiǎn)單易用,完全的面向?qū)ο?,具有平臺(tái)無(wú)關(guān)性且安全可靠,主要面向因特網(wǎng)的所有特點(diǎn)。JSP 可用一種簡(jiǎn)單易懂的等式表示為:HTML+Java=JSP。如圖 2-1 所示為 JSP 執(zhí)行過(guò)程??蛻舳薐SP 頁(yè)面頁(yè)面3執(zhí)行2轉(zhuǎn)譯編譯1Servlet請(qǐng)求響應(yīng)JSP 執(zhí)行過(guò)程圖 2-1 JSP 執(zhí)行過(guò)程. . . . 2.1.12.1.1 JSPJSP 的優(yōu)點(diǎn)的優(yōu)點(diǎn)1一次編寫(xiě),到處運(yùn)行。除了系統(tǒng)之外,代碼
14、不用做任何更改。2系統(tǒng)的多平臺(tái)支持。基本上可以在所有平臺(tái)上的任意環(huán)境中開(kāi)發(fā),在任意環(huán)境中進(jìn)行系統(tǒng)部署,在任意環(huán)境中擴(kuò)展。相比 ASP/PHP 的局限性是顯而易見(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ā)工具支持。這一點(diǎn)與 ASP 很像,Java 已經(jīng)有了許多非常優(yōu)秀的開(kāi)發(fā)工具,而且許多可以免費(fèi)得到,并且其中許多已經(jīng)可以順利的運(yùn)行于多種平臺(tái)之下。5支持服務(wù)器端組件。Web 應(yīng)用需要
15、強(qiáng)大的服務(wù)器端組件來(lái)支持,開(kāi)發(fā)人員需要利用其他工具設(shè)計(jì)實(shí)現(xiàn)復(fù)雜功能的組件供 Web 頁(yè)面調(diào)用,以增強(qiáng)系統(tǒng)性能。JSP 可以使用成熟的 JAVA BEANS 組件來(lái)實(shí)現(xiàn)復(fù)雜商務(wù)功能。2.1.22.1.2 JSPJSP 的工作原理的工作原理在一個(gè) JSP 文件第一次被請(qǐng)求時(shí),JSP 引擎把該 JSP 文件轉(zhuǎn)換成為一個(gè)servlet。而這個(gè)引擎本身也是一個(gè) servlet,在 JSWDK 或 WEBLOGIC 中,它就是JspServlet。 JSP 引擎先把該 JSP 文件轉(zhuǎn)換成一個(gè) Java 源文件,在轉(zhuǎn)換時(shí)如果發(fā)現(xiàn) JSP 文件有任何語(yǔ)法錯(cuò)誤,轉(zhuǎn)換過(guò)程將中斷,并向服務(wù)端和客戶端輸出出錯(cuò)信息;如
16、果轉(zhuǎn)換成功, JSP 引擎用 javac 把該 Java 源文件編譯成相應(yīng)的class 文件。然后創(chuàng)建一個(gè)該 SERVLET 的實(shí)例,該 SERVLET 的 jspInit()方法被執(zhí)行,jspInit()方法在 servlet 的生命周期中只被執(zhí)行一次。然后jspService()方法被調(diào)用來(lái)處理客戶端的請(qǐng)求。對(duì)每一個(gè)請(qǐng)求,JSP 引擎創(chuàng)建一個(gè)新的線程來(lái)處理該請(qǐng)求。如果有多個(gè)客戶端同時(shí)請(qǐng)求該 JSP 文件,則 JSP 引擎會(huì)創(chuàng)建多個(gè)線程。每個(gè)客戶端請(qǐng)求對(duì)應(yīng)一個(gè)線程。以多線程方式執(zhí)行可大大降低對(duì)系統(tǒng)的資源需求,提高系統(tǒng)的并發(fā)量與響應(yīng)時(shí)間.但應(yīng)該注意多線程的編程限制,由于該 servlet 始終
17、駐于存,所以響應(yīng)是非常快的。 如果 JSP 文件被修改了,服務(wù)器將根據(jù)設(shè)置決定是否對(duì)該文件重新編譯,如果需要重新編譯,則將編譯結(jié)果取代存中的 servlet,并繼續(xù)上述處理過(guò)程。 雖然 JSP 效率很高,但在第一次調(diào)用時(shí)由于需要轉(zhuǎn)換和編譯而有一些輕微的延遲。 此外,如果在任何時(shí)候如果由于系統(tǒng)資源不足的原因,JSP 引擎將以某種不確定的方式將 servlet 從存中移去。當(dāng)這種情況發(fā)生時(shí) jspDestroy()方法首先被調(diào)用, 然后 servlet 實(shí)例便被標(biāo)記加入垃圾收集處理。 jspInit()與jspDestory()格式如下:可在 jspInit()中進(jìn)行一些初始化工作,如建立與數(shù)據(jù)庫(kù)
18、的連接,或建立網(wǎng)絡(luò)連接,從配置文件中取一些參數(shù)等,在 jspDestory()中釋放相應(yīng)的資源。. . . . 5 / 352.1.32.1.3 JSPJSP 的運(yùn)行環(huán)境的運(yùn)行環(huán)境JSP 的運(yùn)行環(huán)境主要使用 MyEclipse,JDK,Tomcate 等開(kāi)發(fā)工具。jdk1.5.0 的安裝1jdk1.5.0 的配置(假設(shè) jdk 的安裝目錄是 d:jdk1.5.0)右鍵點(diǎn)擊我的電腦,選擇屬性,選擇高級(jí)選項(xiàng)卡,單擊環(huán)境變量按鈕,在系統(tǒng)變量找到 path 變量,單擊編輯按鈕,把 d:jdk1.5.0bin 添加到里面,與已有的容用分號(hào)隔開(kāi).在系統(tǒng)變量中單擊新建按鈕,在變量名文本框中輸入名稱 clas
19、spath,在變量值文本框中輸入.;D:jdk1.5lib2編寫(xiě) HelloWorld推薦剛?cè)腴T(mén)時(shí)不要使用 IDE,用簡(jiǎn)單的文本編輯器就可以了,比較好用的有 Jcreator(可以不用進(jìn) dos 直接編譯運(yùn)行 java 程序) Editplus,UltraEditpublic class HelloWorld public static void main(String args) System.out.println(Hello World!); 保存為 HelloWorld.java,注意文件名必須與聲明為 public 類的類名完全一樣,包括大小寫(xiě)。3編譯 HelloWorld在 dos
20、 下進(jìn)入 HelloWorld.java 文件所在目錄,使用命令 javac HelloWorld.java 編譯,注意 HelloWorld.java 大小寫(xiě)一定要正確。4運(yùn)行 HelloWorld使用命令 java HelloWorld,注意 HelloWorld 大小寫(xiě)一定要正確,而且不要寫(xiě).java 后綴。tomcat 的部署:1tomcat5.5 的安裝也很簡(jiǎn)單,沒(méi)什么可說(shuō)的,只建議修改安裝目錄名稱為 tomcat5.5,安裝好后啟動(dòng) tomcat,在地址欄中輸入localhost:8080,可以看見(jiàn)cat的歡迎界面2tomcat5.5 的配置需要配置 classpath. . .
21、. 假設(shè) tomcat 的安裝目錄是 d:tomcat5.5,那么就在 classpath 中添加:d:tomcat5.5commonlibservlet-api.jar;d:tomcat5.5commonlibjsp-api.jar; 3編寫(xiě) HelloWorld保存為 HelloWorld.jsp4編譯 HelloWorld把 HelloWorld.jsp 放到 tomcat 的 WebappsROOT 目錄下,啟動(dòng) tomcat 時(shí)服務(wù)器會(huì)自動(dòng)把 jsp 文件翻譯成 servlet 文件5運(yùn)行 HelloWorld在地址欄中輸入 localhost:8080/HelloWorld.jsp
22、,注意 HelloWorld 的大小寫(xiě)和后綴名不要寫(xiě)錯(cuò)。2.22.2 C/SC/S 與與 B/SB/S 模式模式2.2.12.2.1 C/SC/S 與與 B/SB/S 的比較分析的比較分析C/S 模式主要由客戶應(yīng)用程序(Client)、服務(wù)器管理程序(Server)和中間件(middleware)三個(gè)部件組成??蛻魬?yīng)用程序是系統(tǒng)中用戶與數(shù)據(jù)進(jìn)行交互的部件。服務(wù)器程序負(fù)責(zé)有效地管理系統(tǒng)資源,如管理一個(gè)信息數(shù)據(jù)庫(kù),其主要工作是當(dāng)多個(gè)客戶并發(fā)地請(qǐng)求服務(wù)器上的一樣資源時(shí),對(duì)這些資源進(jìn)行最優(yōu)化管理。中間件負(fù)責(zé)聯(lián)結(jié)客戶應(yīng)用程序與服務(wù)器管理程序,協(xié)同完成一個(gè)作業(yè),以滿足用戶查詢管理數(shù)據(jù)的要求。 B/S 模式
23、是一種以 Web 技術(shù)為基礎(chǔ)的新型的 MIS 系統(tǒng)平臺(tái)模式。把傳統(tǒng) C/S模式中的服務(wù)器部分分解為一個(gè)數(shù)據(jù)服務(wù)器與一個(gè)或多個(gè)應(yīng)用服務(wù)器(Web 服務(wù)器),從而構(gòu)成一個(gè)三層結(jié)構(gòu)的客戶服務(wù)器體系。 第一層客戶機(jī)是用戶與整個(gè)系統(tǒng)的接口??蛻舻膽?yīng)用程序精簡(jiǎn)到一個(gè)通用的瀏覽器軟件,如 Netscape Navigator,微軟公司的 IE 等。瀏覽器將 HTML 代碼轉(zhuǎn)化成圖文并茂的網(wǎng)頁(yè)。網(wǎng)頁(yè)還具備一定的交互功能,允許用戶在網(wǎng)頁(yè)提供的申請(qǐng)表上輸入信息提交給后臺(tái),并提出處理請(qǐng)求。這個(gè)后臺(tái)就是第二層的 Web服務(wù)器。 第二層 Web 服務(wù)器將啟動(dòng)相應(yīng)的進(jìn)程來(lái)響應(yīng)這一請(qǐng)求,并動(dòng)態(tài)生成一串HTML 代碼,其中嵌
24、入處理的結(jié)果,返回給客戶機(jī)的瀏覽器。如果客戶機(jī)提交的請(qǐng)求包括數(shù)據(jù)的存取,Web 服務(wù)器還需與數(shù)據(jù)庫(kù)服務(wù)器協(xié)同完成這一處理工作。 第三層數(shù)據(jù)庫(kù)服務(wù)器的任務(wù)類似于 C/S 模式,負(fù)責(zé)協(xié)調(diào)不同的 Web 服務(wù)器發(fā)出的 SQ 請(qǐng)求,管理數(shù)據(jù)庫(kù)。. . . . 7 / 352.2.22.2.2 B/SB/S 模式的優(yōu)勢(shì)模式的優(yōu)勢(shì)首先它簡(jiǎn)化了客戶端。它無(wú)需象 C/S 模式那樣在不同的客戶機(jī)上安裝不同的客戶應(yīng)用程序,而只需安裝通用的瀏覽器軟件。這樣不但可以節(jié)省客戶機(jī)的硬盤(pán)空間與存,而且使安裝過(guò)程更加簡(jiǎn)便、網(wǎng)絡(luò)結(jié)構(gòu)更加靈活。假設(shè)一個(gè)企業(yè)的決策層要開(kāi)一個(gè)討論庫(kù)存問(wèn)題的會(huì)議,他們只需從會(huì)議室的計(jì)算機(jī)上直接通過(guò)瀏覽
25、器查詢數(shù)據(jù),然后顯示給大家看就可以了。甚至與會(huì)者還可以把筆記本電腦聯(lián)上會(huì)議室的網(wǎng)絡(luò)插口,自己來(lái)查詢相關(guān)的數(shù)據(jù)。其次,它簡(jiǎn)化了系統(tǒng)的開(kāi)發(fā)和維護(hù)。系統(tǒng)的開(kāi)發(fā)者無(wú)須再為不同級(jí)別的用戶設(shè)計(jì)開(kāi)發(fā)不同的客戶應(yīng)用程序了,只需把所有的功能都實(shí)現(xiàn)在 Web 服務(wù)器上,并就不同的功能為各個(gè)組別的用戶設(shè)置權(quán)限就可以了。各個(gè)用戶通過(guò) 請(qǐng)求在權(quán)限圍調(diào)用 Web 服務(wù)器上不同處理程序,從而完成對(duì)數(shù)據(jù)的查詢或修改?,F(xiàn)代企業(yè)面臨著日新月異的競(jìng)爭(zhēng)環(huán)境,對(duì)企業(yè)部運(yùn)作機(jī)制的更新與調(diào)整也變得逐漸頻繁。相對(duì)于 C/S,B/S的維護(hù)具有更大的靈活性。當(dāng)形勢(shì)變化時(shí),它無(wú)須再為每一個(gè)現(xiàn)有的客戶應(yīng)用程序升級(jí),而只需對(duì) Web 服務(wù)器上的服務(wù)處
26、理程序進(jìn)行修訂。這樣不但可以提高公司的運(yùn)作效率,還省去了維護(hù)時(shí)協(xié)調(diào)工作的不少麻煩。如果一個(gè)公司有上千臺(tái)客戶機(jī),并且分布在不同的地點(diǎn),那么便于維護(hù)將會(huì)顯得更加重要。 再次,它使用戶的操作變得更簡(jiǎn)單。對(duì)于 C/S 模式,客戶應(yīng)用程序有自己特定的規(guī)格,使用者需要接受專門(mén)培訓(xùn)。而采用 B/S 模式時(shí),客戶端只是一個(gè)簡(jiǎn)單易用的瀏覽器軟件。無(wú)論是決策層還是操作層的人員都無(wú)需培訓(xùn),就可以直接使用。B/S 模式的這種特性,還使 MIS 系統(tǒng)維護(hù)的限制因素更少。 最后,B/S 特別適用于網(wǎng)上信息發(fā)布,使得傳統(tǒng)的 MIS 的功能有所擴(kuò)展。這是 C/S 所無(wú)法實(shí)現(xiàn)的。而這種新增的網(wǎng)上信息發(fā)布功能恰是現(xiàn)代企業(yè)所需的。
27、這使得企業(yè)的大部分書(shū)面文件可以被電子文件取代,從而提高了企業(yè)的工作效率,使企業(yè)行政手續(xù)簡(jiǎn)化,節(jié)省人力物力。 鑒于 B/S 相對(duì)于 C/S 的先進(jìn)性,B/S 逐漸成為一種流行的 MIS 系統(tǒng)平臺(tái)。各軟件公司紛紛推出自己的 Internet 方案,基于 Web 的財(cái)務(wù)系統(tǒng)、基于 Web 的ERP。一些企業(yè)已經(jīng)領(lǐng)先一步開(kāi)始使用它,并且收到了一定的成效。 B/S 模式的新穎與流行,和在某些方面相對(duì)于 C/S 的巨大改進(jìn),使 B/S 成了MIS 系統(tǒng)平臺(tái)的首選。2.32.3 SQLSQL ServerServer 20052005 簡(jiǎn)介簡(jiǎn)介Microsoft SQL Server 2005 最早是由關(guān)系
28、數(shù)據(jù)庫(kù) Sybase 演變而來(lái)的。1988 年由 Sybase,Microsoft,Ashton-Tate 三家公司共同開(kāi)發(fā)了 OS/2 版本,后來(lái)又應(yīng)用于 Windows NT 操作系統(tǒng)中。1994 年 Microsoft 公司和 Sybase 公司的合作正式結(jié)束,如今 Sybase 公司致力于開(kāi)發(fā)基于 UNIX 下的數(shù)據(jù)庫(kù)系統(tǒng),而. . . . Microsoft 公司繼續(xù)開(kāi)發(fā)基于 Windows NT 和 SQL server 系列數(shù)據(jù)庫(kù)系統(tǒng)。其發(fā)展歷程如下:1995 年發(fā)行了 Microsoft SQL Server 6.0 版本1996 年發(fā)行了 Microsoft SQL Serv
29、er 6.5 版本1998 年發(fā)行了 Microsoft SQL Server 7.0 版本2000 年正式發(fā)行了 Microsoft SQL Server 2005 版本2005 年正式發(fā)行了 Microsoft SQL Server 2005 版本在 SQL server 的發(fā)展歷程中,有四個(gè)具有里程碑的版本:Microsoft SQL server6.5、Microsoft SQL server7.0 、Microsoft SQL server2000 以與Microsoft SQL server2005,下面我們重點(diǎn)介紹一下 Microsoft SQL server2005 的新特點(diǎn):
30、1簡(jiǎn)單的圖形化管理工具M(jìn)icrosoft SQL server 企業(yè)管理器是一個(gè)基于圖形用戶界面的繼承管理工具,利用它可以配置管理 Microsoft SQL server 服務(wù)器,管理數(shù)據(jù)庫(kù)和數(shù)據(jù)庫(kù)對(duì)象,備份和恢復(fù)數(shù)據(jù),調(diào)度任務(wù)和管理警報(bào),實(shí)現(xiàn)數(shù)據(jù)復(fù)制和數(shù)據(jù)轉(zhuǎn)換等。它的界面如圖 2-2 所示:圖 2-2 SQL 企業(yè)管理器2隱含的并發(fā)控制能力Microsoft SQL server 利用動(dòng)態(tài)鎖定功能防止用戶在查詢和更新并發(fā)操作時(shí)相互間發(fā)生沖突,動(dòng)態(tài)鎖定是隱含的,用戶不必關(guān)心縮定過(guò)程。3豐富的編程接口工具. . . . 9 / 35Microsoft SQL Server 2005 提供了豐富
31、的編程接口工具,為用戶進(jìn)行程序設(shè)計(jì)提供了更大的選擇余地。此外,它還支持 ODBC 和 OLE DB 規(guī),可以使用ODBC 和 OLE DB 接口函數(shù)訪問(wèn) Microsoft SQL Server 2005 數(shù)據(jù)庫(kù)。4多線程體系結(jié)構(gòu)Microsoft SQL Server 2005 支持多線程操作,在多用戶并發(fā)訪問(wèn)時(shí),系統(tǒng)在產(chǎn)生較小額外負(fù)擔(dān)的情況下,能夠進(jìn)行并發(fā)處理,從而減小存需求,提高系統(tǒng)的吞吐量,在用戶數(shù)量增加時(shí),SQL Server 2005 的運(yùn)行速度也不會(huì)明顯減慢。5具有很好的伸縮性Microsoft SQL Server 2005 既能運(yùn)行在 Windows 2000 操作系統(tǒng)下,又
32、可以運(yùn)行在 Windows NT,Workstation,Windows NT Server 等操作系統(tǒng)下,并且利用了 NT 的許多功能,如發(fā)送和接受消息,管理登錄安全性等?;?Microsoft SQL Server 2005 以上的 5 個(gè)特點(diǎn),我們選擇了它為搭建數(shù)據(jù)庫(kù), 使能夠更快更好的完成數(shù)據(jù)庫(kù)操作。2.3.12.3.1 SQLSQL ServerServer 數(shù)據(jù)庫(kù)數(shù)據(jù)體系結(jié)構(gòu)數(shù)據(jù)庫(kù)數(shù)據(jù)體系結(jié)構(gòu)SQL Server 2005 數(shù)據(jù)庫(kù)的數(shù)據(jù)體系結(jié)構(gòu)基本上是三級(jí)結(jié)構(gòu),但使用術(shù)語(yǔ)與傳統(tǒng)關(guān)系模型術(shù)語(yǔ)不同。在 SQL Server 2005 中,關(guān)系模式(模式)稱為“基本表”(base ta
33、ble);存儲(chǔ)模式(模式)稱為“存儲(chǔ)文件”(stored file);子模式(外模式)稱為“視圖”(view);元組稱為“行”(row);屬性稱為“列”(column)。2.3.22.3.2 SQLSQL 語(yǔ)言的組成語(yǔ)言的組成在正式學(xué)習(xí) SQL 語(yǔ)言之前,首先讓我們對(duì) SQL 語(yǔ)言有一個(gè)基本認(rèn)識(shí),介紹一下 SQL 語(yǔ)言的組成: 1一個(gè) SQL 數(shù)據(jù)庫(kù)是表(Table)的集合,它由一個(gè)或多個(gè) SQL 模式定義。 2一個(gè) SQL 表由行集構(gòu)成,一行是列的序列(集合),每列與行對(duì)應(yīng)一個(gè)數(shù)據(jù)項(xiàng)。 3一個(gè)表或者是一個(gè)基本表或者是一個(gè)視圖?;颈硎菍?shí)際存儲(chǔ)在數(shù)據(jù)庫(kù)的表,而視圖是由若干基本表或其他視圖構(gòu)成的
34、表的定義。 4一個(gè)基本表可以跨一個(gè)或多個(gè)存儲(chǔ)文件,一個(gè)存儲(chǔ)文件也可存放一個(gè)或多個(gè)基本表。每個(gè)存儲(chǔ)文件與外部存儲(chǔ)上一個(gè)物理文件對(duì)應(yīng)。 5用戶可以用 SQL 語(yǔ)句對(duì)視圖和基本表進(jìn)行查詢等操作。在用戶角度來(lái)看,視圖和基本表是一樣的,沒(méi)有區(qū)別,都是關(guān)系(表格)。 6SQL 用戶可以是應(yīng)用程序,也可以是終端用戶。SQL 語(yǔ)句可嵌入在宿主語(yǔ)言的程序中使用,宿主語(yǔ)言有 FORTRAN,COBOL,PASCAL,PL/I,C 和 Ada 語(yǔ)言等。SQL 用戶也能作為獨(dú)立的用戶接口,供交互環(huán)境下的終端用戶使用。. . . . 2.3.32.3.3 對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作SQLServer 2005 包
35、括了所有對(duì)數(shù)據(jù)庫(kù)的操作,主要是由 4 個(gè)部分組成:1數(shù)據(jù)定義:這一部分又稱為“SQL DDL”,定義數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu),包括定義數(shù)據(jù)庫(kù)、基本表、視圖和索引 4 部分。 2數(shù)據(jù)操縱:這一部分又稱為“SQL DML”,其中包括數(shù)據(jù)查詢和數(shù)據(jù)更新兩大類操作,其中數(shù)據(jù)更新又包括插入、刪除和更新三種操作。 3數(shù)據(jù)控制:對(duì)用戶訪問(wèn)數(shù)據(jù)的控制有基本表和視圖的授權(quán)、完整性規(guī)則的描述,事務(wù)控制語(yǔ)句等。 4嵌入式 SQL 語(yǔ)言的使用規(guī)定:規(guī)定 SQL 語(yǔ)句在宿主語(yǔ)言的程序中使用的規(guī)則。 . . . . 11 / 35第三章第三章 系統(tǒng)的分析與設(shè)計(jì)系統(tǒng)的分析與設(shè)計(jì)3.13.1 系統(tǒng)需求分析系統(tǒng)需求分析需求分析階段是酒
36、店客房管理系統(tǒng)開(kāi)發(fā)最重要的階段。開(kāi)發(fā)者首先要了解和澄清用戶的需求,然后嚴(yán)格地定義該系統(tǒng)的需求規(guī)格說(shuō)明書(shū)。這里我們將需求分析分為兩個(gè)過(guò)程,一是理解需求,二是分析需求,下面分別講解。1理解需求理解需在問(wèn)題與其最終解決方案之間架設(shè)橋梁的第一步。開(kāi)發(fā)者只有和客戶充分理解了需求之后才能開(kāi)始設(shè)計(jì)系統(tǒng),否則,對(duì)需求定義的任何改進(jìn),在設(shè)計(jì)上都必須大量的返工。下面是經(jīng)過(guò)雙方調(diào)研后得到的需求規(guī)格說(shuō)明。(1) 系統(tǒng)界面采用 Web 方式,界面應(yīng)簡(jiǎn)潔明了,用戶可方便瀏覽和查找客房信息。該系統(tǒng)的用戶有兩種類型:一是管理員,二是服務(wù)員,兩者應(yīng)具有不同的權(quán)限。(2) 系統(tǒng)需對(duì)用戶登錄進(jìn)行管理。使用各功能模塊時(shí),系統(tǒng)會(huì)驗(yàn)證用
37、戶身份的有效性,否則要求用戶重新登錄。另外,允許用戶對(duì)自己的密碼進(jìn)行修改。(3) 系統(tǒng)應(yīng)提供客房的分類管理功能,可分類制訂客房面積、價(jià)格、是否配備空調(diào)等客房類型,對(duì)不同標(biāo)準(zhǔn)的客房進(jìn)行有效管理。系統(tǒng)可實(shí)現(xiàn)對(duì)客房信息的查詢,添加、刪除以與修改。(4) 在進(jìn)行離開(kāi)/住房管理時(shí),系統(tǒng)可以根據(jù)客房當(dāng)前的狀態(tài)自動(dòng)提示可用服務(wù)。如果客房客人已離開(kāi),則該客房的信息顯示為“離開(kāi)”;否則,該客房的信息顯示為“住”。(5) 系統(tǒng)的客戶端在 Windows 平臺(tái)下運(yùn)行,服務(wù)器端可在 Windows 平臺(tái)下運(yùn)行。系統(tǒng)還需要有較好的安全性和可擴(kuò)展性。2需求分析(1) 需求分析是從客戶的需求中提取出軟件系統(tǒng)能夠幫助用戶解決
38、的業(yè)務(wù)問(wèn)題,通過(guò)對(duì)用戶業(yè)務(wù)問(wèn)題的分析,規(guī)劃出系統(tǒng)的功能模塊,即定義用例。這個(gè)步驟是對(duì)理解需求的升華,直接關(guān)系到該系統(tǒng)的質(zhì)量。(2) 經(jīng)過(guò)開(kāi)發(fā)者同客戶的需求分析后,確定酒店客房管理系統(tǒng)的功能模塊(用例)包括: 用戶信息管理 客房類型管理 客房信息管理 客戶信息查詢 經(jīng)營(yíng)狀況統(tǒng)計(jì). . . . 酒店客房管理系統(tǒng)采用 Web 方式,由前臺(tái)和后臺(tái)管理兩個(gè)部分組成。前臺(tái)作為與用戶直接交互的可視化界面,由于使用方便,能將系統(tǒng)的各個(gè)功能提供給用戶,以幫助用戶進(jìn)行客房管理。為了確??蛻艉途频甑男畔⒕哂懈玫陌踩?,前臺(tái)管理和后臺(tái)管理是分離的。前臺(tái)的各管理模塊需要經(jīng)過(guò)權(quán)限授權(quán)才可以使用,我們?yōu)榇嗽O(shè)計(jì)了兩個(gè)角色:
39、一是酒店管理員,二是前臺(tái)服務(wù)員。其中:1酒店管理員享有最高權(quán)限,可以使用酒店客房管理系統(tǒng)所提供的所有功能,包括員工信息管理、客房類型管理、客房信息管理、客房經(jīng)營(yíng)管理、客戶信息查詢、個(gè)人密碼修改等功能。2前臺(tái)服務(wù)員的主要職能是負(fù)責(zé)訂房和退房,以與查詢?nèi)胱〉目蛻粜畔?。所有該角色只可以使用部分功能,包括客房?jīng)營(yíng)管理、客戶信息查詢、個(gè)人密碼修改以與注銷功能。本系統(tǒng)主要由數(shù)據(jù)庫(kù)系統(tǒng)作為支持,后臺(tái)管理的維護(hù)工作主要由系統(tǒng)管理員進(jìn)行,包括完成對(duì)各個(gè)數(shù)據(jù)表單的維護(hù)、數(shù)據(jù)庫(kù)的備份與恢復(fù)等工作,本實(shí)例我們選用的數(shù)據(jù)庫(kù)系統(tǒng)為 Microsoft SQL Server 2005。3.23.2 開(kāi)發(fā)與運(yùn)行環(huán)境開(kāi)發(fā)與運(yùn)行
40、環(huán)境3.2.13.2.1 開(kāi)發(fā)環(huán)境開(kāi)發(fā)環(huán)境開(kāi)發(fā)環(huán)境:MyEclipse 8.5 集成開(kāi)發(fā)環(huán)境。開(kāi)發(fā)語(yǔ)言:JSP+JAVA。后臺(tái)數(shù)據(jù)庫(kù):Microsoft SQL Server 2005。開(kāi)發(fā)環(huán)境運(yùn)行平臺(tái):Windows XP(SP2)/Windows 2000(SP4)/Windows Server 2003(SP1)。3.2.23.2.2 服務(wù)器端服務(wù)器端操作系統(tǒng):Windows XP。Web 服務(wù)器:Internet 信息服務(wù)(IIS)管理器。數(shù)據(jù)庫(kù)服務(wù)器:Microsoft SQL Server 2005。瀏覽器:IE 7.0。3.2.33.2.3 客戶端客戶端瀏覽器:IE 7.0。分辨
41、率:最佳效果 1024768 像素。3.33.3 功能模塊的設(shè)計(jì)功能模塊的設(shè)計(jì)3.3.13.3.1 設(shè)計(jì)目標(biāo)設(shè)計(jì)目標(biāo)本系統(tǒng)是根據(jù)酒店日常管理的需求進(jìn)行開(kāi)發(fā)設(shè)計(jì)的,主要實(shí)現(xiàn)以下目標(biāo)。1實(shí)現(xiàn)管理人員和前臺(tái)服務(wù)員的登錄不同界面以與擁有不同權(quán)限的功能。. . . . 13 / 352實(shí)現(xiàn)客戶信息,客房類型,客房信息,用戶信息,業(yè)務(wù)記錄的查詢的功能。3實(shí)現(xiàn)客房信息,用戶信息和客房類型的增加的功能。4實(shí)現(xiàn)客房信息,用戶信息,客房類型,客房信息的修改的功能。5實(shí)現(xiàn)客房信息,用戶信息的刪除的功能。圖 3-1 酒店客房管理系統(tǒng)框架流程3.3.23.3.2 客房管理系統(tǒng)前臺(tái)的設(shè)計(jì)客房管理系統(tǒng)前臺(tái)的設(shè)計(jì)客房管理系統(tǒng)
42、前臺(tái)流程圖,如圖 3-2 所示,該流程系統(tǒng)前臺(tái)部分,客房信息頁(yè)面主要是負(fù)責(zé)所有客房信息的查詢號(hào)與維護(hù)。如果需要修改客房信息,可以在列表中點(diǎn)擊該客房的“修改”,系統(tǒng)會(huì)顯示客房修改頁(yè)面;如果需要?jiǎng)h除客房信息,點(diǎn)擊“刪除”即可。同樣要增加客房信息,點(diǎn)擊對(duì)應(yīng)的“增加”然后填寫(xiě)要增加的信息??蛻粜畔⒑涂头款愋晚?yè)面主要用于前臺(tái)服務(wù)員對(duì)于客戶信息和客房類型的查詢。個(gè)人信息管理是前臺(tái)和后臺(tái)都是有在模塊,默認(rèn)顯示在導(dǎo)航欄的右側(cè)個(gè)人信息管理中心。主要用于密碼的修改,這樣是為了保證用戶使用的安全性。酒店客房管理系統(tǒng)前臺(tái)服務(wù)員登錄酒店管理員登錄客戶信息增查客房類型查詢客房信息的 查詢 增加 修改 刪除業(yè)務(wù)記錄查詢用戶
43、信息的查詢 增加 修改刪除客房類型的 查詢 增加 修改 客房信息的 查詢 修改 刪除. . . . 圖 3-2 酒店客房管理系統(tǒng)流程圖前臺(tái)3.3.33.3.3 客房管理系統(tǒng)后臺(tái)的設(shè)計(jì)客房管理系統(tǒng)后臺(tái)的設(shè)計(jì)客房管理系統(tǒng)后臺(tái)流程圖,如圖 3-3 所示,該流程系統(tǒng)后臺(tái)部分,是由酒店管理員負(fù)責(zé)管理的,分為用戶信息,客房類型,客房信息,業(yè)務(wù)記錄,個(gè)人信息管理幾個(gè)模塊,其中個(gè)人信息模塊前后臺(tái)都是有在 3.3.2 中已給出說(shuō)明。用戶信息模塊主要的操作有:增,刪,改,查??头款愋湍K的主要操作有:增,改,查。客房信息模塊的主要操作有:刪,改,查。而業(yè)務(wù)記錄模塊主要用于管理員對(duì)于業(yè)務(wù)的查詢。對(duì)于增,刪,改的具體
44、方法與前臺(tái)一樣。圖 3-3 酒店客房管理系統(tǒng)流程圖后臺(tái)酒店管理員登錄查詢修改增加增加查詢修改刪除修改個(gè)人信息管理用戶信息客房類型客房信息業(yè)務(wù)記錄修改查詢查詢刪除前臺(tái)服務(wù)員登錄客戶信息客房類型個(gè)人信息管理客房信息增加查詢修改增加刪除修改查詢查詢. . . . 15 / 353.43.4 數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)本系統(tǒng)數(shù)據(jù)庫(kù)采用 Microsoft SQL Server 2005 數(shù)據(jù)庫(kù),系統(tǒng)數(shù)據(jù)庫(kù)中包含 6 數(shù)據(jù)表。下面分別給出主要數(shù)據(jù)表的結(jié)構(gòu)。從讀者角度出發(fā),為使讀者對(duì)本系統(tǒng)后臺(tái)的數(shù)據(jù)庫(kù)中數(shù)據(jù)表有一個(gè)更清晰的認(rèn)識(shí),在此特別制作了一個(gè)數(shù)據(jù)類型的表格,其中包含了對(duì)系統(tǒng)中所有數(shù)據(jù)表的相關(guān)
45、描述。數(shù)據(jù)庫(kù) JdglSys 包含以下 7 個(gè)表:用戶信息表(UsersInfo)、客戶信息表(CustomerInfo)、客房類型表(RoomCategory)、客房信息表(RoomInfo)、客房狀態(tài)表(RoomStatus)、客房業(yè)務(wù)表(RoomOperation)、業(yè)務(wù)記錄表(History)。1用戶信息表(UserInfo)用來(lái)保存使用該系統(tǒng)的酒店員工的基本信息,如用戶編號(hào),用戶,用戶性別,地址,用戶,所在部門(mén),用戶類型等。如表 3.1所示。表 3.1 用戶信息表 UserInfo列名數(shù)據(jù)類型與長(zhǎng)度允許空UserIDvarchar(50)noNamevarchar(50)noPass
46、wordvarchar(50)noGendervarchar(50)yesEmalvarchar(50)yesAddressvarchar(50)yesTelephonevarchar(50)yesDepartmentvarchar(50)yesTypevarchar(50)yes2客戶信息表(CustomerInfo)用來(lái)保存在酒店訂房的客戶的基本信息,如號(hào),客戶,聯(lián)系,客房號(hào),客房位置等。如表 3.2 所示。表 3.2 客戶信息表 CustomerInfo列名數(shù)據(jù)類型與長(zhǎng)度允許空CIdentityIDvarchar(50)noCNamevarchar(50)yesCPhonevarchar
47、(50)yesRoomIDvarchar(50)noRoomPositonvarchar(50)yes. . . . 3客房類型表(RoomType)用來(lái)保存酒店所有客房類型的基本信息,如客房類型編號(hào),類型名,客房面積,配置床位,客房?jī)r(jià)格,配置空間,電視的配置等。如表 3.3 所示。表 3.3 客房類型表 RoomType列名數(shù)據(jù)類型與長(zhǎng)度允許空TypeIDvarchar(50)noRoomTypevarchar(50)noTypeNamevarchar(50)noAreavarchar(50)yesBedNumvarchar(50)yesPricevarchar(50)yesAirCondi
48、tionvarchar(50)yesTVvarchar(50)yes4客房信息表(RoomInfo)用來(lái)保存酒店所有客房的相關(guān)信息,如客房號(hào),客房類型編號(hào),客房位置,描述,狀態(tài)等。如表 3.4 所示。表 3.4 客房信息表 RoomInfo列名數(shù)據(jù)類型與長(zhǎng)度允許空RoomIDvarchar(50)noRoomeTypevarchar(50)noRoomPositonvarchar(50)yesRoomDescripvarchar(50)CheckedRoomStatusvarchar(10)no5客房業(yè)務(wù)表(RoomOperation)用來(lái)保存目前酒店正有客戶入住的客房的相關(guān)信息,如客房編號(hào),
49、入住時(shí)間,客戶號(hào),備注等。如表 3.5 所示。表 3.5 客房業(yè)務(wù)表 RoomOperation列名數(shù)據(jù)類型與長(zhǎng)度允許空RoomIDvarchar(50)noBeginTimevarchar(50)noCIdentityIdvarchar(50)noRemarksvarchar(50)yes. . . . 17 / 356業(yè)務(wù)記錄表(History)用來(lái)保存酒店里所有入住過(guò)客戶的客房的業(yè)務(wù)信息,如編號(hào),客房編號(hào),入住時(shí)間,退房時(shí)間,金額,客戶號(hào),備注等。如表 3.6 所示。表 3.6 業(yè)務(wù)記錄表 History列名數(shù)據(jù)類型與長(zhǎng)度允許空IDvarchar(50)noRoomIDvarchar(5
50、0)noBeginTimevarchar(50)noEndTimevarchar(50)noTotalPricevarchar(50)noCIdentityIdvarchar(50)noRemarksvarchar(50)yes. . . . 第四章第四章 系統(tǒng)各模塊的實(shí)現(xiàn)系統(tǒng)各模塊的實(shí)現(xiàn)4.14.1 客房管理系統(tǒng)首頁(yè)的實(shí)現(xiàn)客房管理系統(tǒng)首頁(yè)的實(shí)現(xiàn)4.1.14.1.1 客房管理系統(tǒng)首頁(yè)概述客房管理系統(tǒng)首頁(yè)概述前面已介紹過(guò)系統(tǒng)共分兩類用戶:酒店管理員和前臺(tái)服務(wù)員。當(dāng)用戶進(jìn)入酒店管理系統(tǒng)首頁(yè)后,首先需要進(jìn)行密碼驗(yàn)證,系統(tǒng)在驗(yàn)證通過(guò)后,將使用Type 變量記錄其用戶類型,并根據(jù)用戶類型確定用戶的使用權(quán)
51、限,以與所要跳轉(zhuǎn)的頁(yè)面。以下為酒店管理系統(tǒng)的首頁(yè)。如圖 4-1。圖 4-1 酒店管理系統(tǒng)的首頁(yè)4.1.24.1.2 客房管理系統(tǒng)首頁(yè)實(shí)現(xiàn)過(guò)程客房管理系統(tǒng)首頁(yè)實(shí)現(xiàn)過(guò)程1進(jìn)入系統(tǒng)首頁(yè)后,首先需要在主顯示區(qū)輸入用戶類型,用戶名與密碼,然后單擊“登錄”按鈕,系統(tǒng)驗(yàn)證通過(guò)后,會(huì)跳到相應(yīng)的頁(yè)面。仍停留在本頁(yè)面,要求用戶再次登錄。以下為用戶信息的獲取,判斷與頁(yè)面的跳轉(zhuǎn)等。public void doPost( ServletRequest request, ServletResponse response)throws ServletException, IOException response.setCo
52、ntentType(text/html);request.setCharacterEncoding(gb2312);Dao_up db = new Dao_up();. . . . 19 / 35String name=request.getParameter(Name);String pass=request.getParameter(Password);Integer Type=Integer)request.getParameter(Type);Vector user=db.getData(select * from userinfo where username=+name+and u
53、serpass=+pass+,Type=+Type+);if(user.size()=1) request.getSession().setAttribute(Name,(Vector)user.elementAt(0).elementAt(1) );request.getSession().setAttribute(Password,(Vector)user.elementAt(0).elementAt(2) );request.getSession().setAttribute(Type,(Vector)user.elementAt(0).elementAt(8);response.sen
54、dRedirect(./qian/Rfarme.jsp);elseresponse.sendRedirect(./qiantai/denglu.jsp);2連接數(shù)據(jù)庫(kù):在開(kāi)發(fā)項(xiàng)目中以類的形式來(lái)組織,封裝一些常用的方法和事件,不僅可以提高代碼的重用率,也大大方便了代碼的管理。本系統(tǒng)中創(chuàng)建了一個(gè)公共類 Dao_up 類,主要用來(lái)訪問(wèn) Microsoft SQL Server 2005 數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)操作類主要的功能是連接數(shù)據(jù)庫(kù)。我們是在 MyEclipse 開(kāi)發(fā)平臺(tái)下,使用 JSP+JAVA 語(yǔ)言進(jìn)行系統(tǒng)開(kāi)發(fā)的。系統(tǒng)采用對(duì)數(shù)據(jù)庫(kù)配置進(jìn)行統(tǒng)一管理的方法,將程序中用到的所有連接字符串信息統(tǒng)一放于 We
55、b.config 配置文檔中,在程序中對(duì)該文檔的這一配置進(jìn)行調(diào)用,方便系統(tǒng)移植時(shí)對(duì)系統(tǒng)數(shù)據(jù)庫(kù)的統(tǒng)一配置修改。對(duì)于數(shù)據(jù)庫(kù)調(diào)用字符串,由于本實(shí)例中所使用的數(shù)據(jù)庫(kù)是本地?cái)?shù)據(jù)庫(kù),所以 Data Source(數(shù)據(jù)源)設(shè)置為(local),User ID(用戶 ID)賦值為系統(tǒng)默認(rèn)的sa,Password(連接密碼)賦值為數(shù)據(jù)庫(kù)出示安裝時(shí)設(shè)定的 sa,Datebase(數(shù)據(jù)庫(kù)名稱)設(shè)為我們上一節(jié)中創(chuàng)建的 JdglSys連接數(shù)據(jù)庫(kù)的主要代碼如下:public class Dao_up public static final int wrong_less = -10; public Connection c
56、on=null;. . . . public Connection con2=null; public static Statement sta=null; public static PreparedStatement pre=null; public void Connect() try Class.forName(.microsoft.sqlserver.jdbc.SQLServerDriver); String str= jdbc:sqlserver:/127.0.0.1:1433;DatabaseName=pos; this.con=DriverManager.getConnecti
57、on(str,sa,123); catch(Exception e) System.out.print(e.toString(); 4.24.2 客房管理系統(tǒng)前臺(tái)的客房管理系統(tǒng)前臺(tái)的實(shí)現(xiàn)實(shí)現(xiàn)4.2.14.2.1 客房管理系統(tǒng)前臺(tái)概述客房管理系統(tǒng)前臺(tái)概述客房管理系統(tǒng)前臺(tái)頁(yè)面,如圖 4-2 所示,當(dāng)前臺(tái)服務(wù)員正確登錄時(shí)即要跳轉(zhuǎn)到該頁(yè)面。個(gè)人信息管理是前臺(tái)和后臺(tái)都是有在模塊,默認(rèn)顯示在導(dǎo)航欄的右側(cè)個(gè)人信息管理中心。主要用于密碼的修改,這樣是為了保證用戶使用的安全性。. . . . 21 / 35圖 4-2 客房管理系統(tǒng)的前臺(tái)頁(yè)面4.2.24.2.2 客房管理系統(tǒng)前臺(tái)實(shí)現(xiàn)過(guò)程客房管理系統(tǒng)前臺(tái)實(shí)現(xiàn)過(guò)程點(diǎn)
58、擊導(dǎo)航菜單的上的客房信息可跳轉(zhuǎn)到如圖 4-3 的客房信息表,點(diǎn)擊備注中的修改也可跳轉(zhuǎn)到相應(yīng)的修改頁(yè)面。點(diǎn)擊刪除時(shí)會(huì)刪除相應(yīng)的記錄,然后再顯示,修改或刪除成功時(shí)跳轉(zhuǎn)到如圖 4-1 的頁(yè)面。點(diǎn)擊導(dǎo)航菜單上的客戶信息或客房類型可查相應(yīng)的信息。4.2.34.2.3 客戶信息與客房類型的查詢客戶信息與客房類型的查詢點(diǎn)擊導(dǎo)航菜單的上的客戶信息可跳轉(zhuǎn)到客戶信息的查詢頁(yè)面如圖 4-3 的客戶信息,由于數(shù)據(jù)庫(kù)中的信息較多所以在一表中不能全顯示出來(lái)因此要用到“首頁(yè)”,“上一頁(yè)”,“下一頁(yè)”,“尾頁(yè)”。而客房類型的查詢與客戶信息在查詢方法一樣。. . . . 圖 4-3 客戶信息的查詢結(jié)果4.2.4.2. 客房信息
59、操作客房信息操作客房信息查詢的結(jié)果,客房信息頁(yè)面主要是負(fù)責(zé)所有客房信息的查詢號(hào)與維護(hù)。如果需要修改客房信息,可以在列表中單擊該客房的“修改”,系統(tǒng)會(huì)顯示客房修改頁(yè)面;如果需要?jiǎng)h除客房信息,單擊“刪除”即可。操作員可以根據(jù)客房號(hào)查詢或修改客房的信息??蛻粜畔⒑涂头款愋晚?yè)面主要負(fù)責(zé)客戶信息的客房信息的查詢。4.34.3 客房管理系統(tǒng)后臺(tái)的客房管理系統(tǒng)后臺(tái)的實(shí)現(xiàn)實(shí)現(xiàn)4.3.14.3.1 客房管理系統(tǒng)后臺(tái)概述客房管理系統(tǒng)后臺(tái)概述客房管理系統(tǒng)后臺(tái)頁(yè)面,如圖 4-4 所示,當(dāng)酒店管理員正確登錄時(shí)即可跳轉(zhuǎn)到該頁(yè)面。個(gè)人信息管理是前臺(tái)和后臺(tái)都是有在模塊,默認(rèn)顯示在導(dǎo)航欄的右側(cè)個(gè)人信息管理中心。主要用于密碼的修
60、改,這樣是為了保證用戶使用的安全性。4.3.24.3.2 客房管理系統(tǒng)后臺(tái)實(shí)現(xiàn)過(guò)程客房管理系統(tǒng)后臺(tái)實(shí)現(xiàn)過(guò)程導(dǎo)航菜單上的客房信息,客房類型以與個(gè)人信息管理是前后臺(tái)都是有的,用戶信息和業(yè)務(wù)記錄是后臺(tái)專有的。用戶信息是酒店管理員管理酒店員工用的,可實(shí)現(xiàn)信息的增加,刪除,修改,查詢。增加、修改、刪除成功時(shí)跳轉(zhuǎn)到圖 4-5的頁(yè)面??头繕I(yè)務(wù)和客房記錄主要用于管理員對(duì)于業(yè)務(wù)和客房的查詢。在查詢結(jié)果頁(yè)面有返回按鈕來(lái)返回到上一頁(yè)面。. . . . 23 / 35圖 4-4 客房管理系統(tǒng)的后臺(tái)頁(yè)面當(dāng)點(diǎn)擊導(dǎo)航菜單上的用戶信息,則顯示如圖 4-5 用戶信息表的頁(yè)面。顯示用戶的信息。點(diǎn)擊修改會(huì)跳轉(zhuǎn)到相應(yīng)的頁(yè)面。點(diǎn)擊刪除
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 《A公司應(yīng)收賬款風(fēng)險(xiǎn)控制研究》
- 2025年度工業(yè)4.0項(xiàng)目委托合同匯編3篇
- 二零二五年度磚材購(gòu)銷雙方信用保證合同3篇
- 2024年高級(jí)珠寶買賣合同版B版
- 數(shù)字產(chǎn)品檢測(cè)維修練習(xí)試題
- 小微企業(yè)互聯(lián)網(wǎng)借貸平臺(tái)的信控措施解析
- 《關(guān)東丁香葉揮發(fā)油化學(xué)成分的分析及抗氧化活性初步研究》
- 2025年度智能EPS線條批量采購(gòu)合同3篇
- 2024延期借款合同協(xié)議書(shū)正規(guī)范本
- 小學(xué)語(yǔ)文教學(xué)中跨文化交際能力的培養(yǎng)策略研究
- 新疆塔城地區(qū)(2024年-2025年小學(xué)六年級(jí)語(yǔ)文)部編版期末考試(下學(xué)期)試卷及答案
- 四人合伙投資協(xié)議書(shū)范本
- 2024年9月時(shí)事政治試題帶答案
- 反射療法師3級(jí)考試題庫(kù)(含答案)
- 汽車供應(yīng)商審核培訓(xùn)
- 《計(jì)算機(jī)網(wǎng)絡(luò) 》課件第1章
- 山東省濟(jì)南市2023-2024學(xué)年高二上學(xué)期期末考試地理試題 附答案
- 期末復(fù)習(xí)試題1(試題)-2024-2025學(xué)年二年級(jí)上冊(cè)數(shù)學(xué)北師大版
- 1《地球的表面》說(shuō)課稿-2024-2025學(xué)年科學(xué)五年級(jí)上冊(cè)教科版
- 汽車以租代購(gòu)合同完整版完整版
- 音樂(lè)制作基礎(chǔ)知識(shí)單選題100道及答案解析
評(píng)論
0/150
提交評(píng)論