版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 摘 要</b></p><p> 現(xiàn)代酒店組織日漸龐大,服務(wù)項(xiàng)目多、信息量大已經(jīng)成為酒店行業(yè)的一大特點(diǎn)。要想提高工作效率、提高服務(wù)質(zhì)量、降低成本就必須借助現(xiàn)代計(jì)算機(jī)技術(shù)實(shí)現(xiàn)高效率的管理模式。作為一個(gè)現(xiàn)代化的酒店,要想在激烈的競(jìng)爭(zhēng)中奪取自己的一席之地就必須要做好信息化的工作。這就要求酒店必須要有一個(gè)優(yōu)良的信息管理平臺(tái)、現(xiàn)代化的管理系統(tǒng)、高效的數(shù)據(jù)系統(tǒng)。一個(gè)好的
2、酒店想要取得更高的效益,就必須以最小的成本,最快捷方便的服務(wù)給顧客提供最好的居住環(huán)境,而一個(gè)好的酒店客房管理系統(tǒng)就能夠更好的提高管理的現(xiàn)代化程序,加強(qiáng)管理的信息化手段,提高工作效率,增加單位效益。酒店管理系統(tǒng)正是為了此目的而設(shè)計(jì)的。</p><p> 根據(jù)調(diào)查國(guó)內(nèi)的一般星級(jí)酒店都采用了不同的管理系統(tǒng),多數(shù)采用了VB+SQL以及ASP+SQL系統(tǒng)。還有部分采用PHP+SQL系統(tǒng)。由于賓館客房信息管理系統(tǒng)的主要任務(wù)
3、是對(duì)賓館客房住房管理進(jìn)行計(jì)算機(jī)化的管理,采取容易維護(hù)和友好的界面就成為了本次開(kāi)發(fā)的著重點(diǎn)??v觀當(dāng)今Java主導(dǎo)著軟件開(kāi)發(fā)行業(yè)的先鋒,由于其開(kāi)發(fā)出的軟件具有平臺(tái)無(wú)關(guān)性,一次開(kāi)發(fā)隨處可用的特點(diǎn),成為當(dāng)今軟件開(kāi)發(fā)行業(yè)的新寵。為了和國(guó)內(nèi)外接軌本系統(tǒng)采用了Java語(yǔ)言以及MySQL數(shù)據(jù)庫(kù)來(lái)開(kāi)發(fā)。本系統(tǒng)開(kāi)發(fā)的宗旨就是人機(jī)交互界面友好以及更高的效率,而MySQL的速度優(yōu)勢(shì)以及線程性就是給系統(tǒng)提供更高效率的良藥。經(jīng)過(guò)調(diào)查發(fā)現(xiàn)酒店使用的計(jì)算機(jī)有很大一部分
4、使用Windows系統(tǒng),在這點(diǎn)上MySQL可以提供更好的支持。作為酒店,更加少不了就是24小時(shí)的服務(wù),所以可以完美支持24/7運(yùn)行的MySQL無(wú)疑是最佳選擇。同時(shí),MySQL的權(quán)限優(yōu)勢(shì)使得管理更加方便和安全性有所提高。綜上所述,本系統(tǒng)選用了MySQL數(shù)據(jù)庫(kù)。</p><p> 本系統(tǒng)采用Strtuts2 + hibernate 3 + spring 3作為系統(tǒng)框架,也就是流行的SSH框架和MVC開(kāi)發(fā)模式,采用J
5、SP作為前臺(tái)展現(xiàn)層,并采用了一些免費(fèi)的輔助開(kāi)源框架以及工具。本網(wǎng)站采用設(shè)計(jì)模式中的MVC思想,MVC英文即Model-View-Controller,即把一個(gè)應(yīng)用的輸入、處理、輸出流程按照Model、View、Controller的方式進(jìn)行分離,這樣一個(gè)應(yīng)用被分成三個(gè)層――模型層、視圖層、控制層。視圖(View)代表用戶交互界面,模型(Model):就是業(yè)務(wù)流程/狀態(tài)的處理以及業(yè)務(wù)規(guī)則的制定,控制(Controller)可以理解為從用戶
6、接收請(qǐng)求, 將模型與視圖匹配在一起,共同完成用戶的請(qǐng)求。利用MVC設(shè)計(jì)方法,在別的應(yīng)用模塊中訪問(wèn)數(shù)據(jù)庫(kù)時(shí),避免了直接調(diào)用數(shù)據(jù)庫(kù)系統(tǒng)提供的數(shù)據(jù)庫(kù)訪問(wèn)函數(shù)時(shí)接口不一致的問(wèn)題,將數(shù)據(jù)庫(kù)應(yīng)用部分與數(shù)據(jù)實(shí)際訪問(wèn)部分隔離開(kāi)來(lái)。這樣,不但提高了程序的通用性,而且開(kāi)發(fā)的時(shí)候精力放在功能應(yīng)用的設(shè)計(jì)上,有利于軟件工程化管理。從而提高了開(kāi)發(fā)效率。</p><p> 本系統(tǒng)選用的應(yīng)用服務(wù)器為Apache公司的Tomcat服務(wù)器,Tom
7、cat 服務(wù)器是一個(gè)免費(fèi)的開(kāi)放源代碼的Web 應(yīng)用服務(wù)器,是Apache 軟件基金會(huì)(Apache Software Foundation)的Jakarta 項(xiàng)目中的一個(gè)核心項(xiàng)目,由Apache、Sun 和其他一些公司及個(gè)人共同開(kāi)發(fā)而成。由于有了Sun 的參與和支持,最新的Servlet 和JSP 規(guī)范總是能在Tomcat 中得到體現(xiàn),Tomcat 5 支持最新的Servlet 2.4 和JSP 2.0 規(guī)范。因?yàn)門(mén)omcat 技術(shù)先進(jìn)
8、、性能穩(wěn)定,而且免費(fèi),因而深受Java 愛(ài)好者的喜愛(ài)并得到了部分軟件開(kāi)發(fā)商的認(rèn)可,成為目前比較流行的Web 應(yīng)用服務(wù)器。</p><p> 本系統(tǒng)前端顯示使用的是JSP技術(shù),JSP(Java Server Pages)是由Sun MicroSystems公司倡導(dǎo)、許多公司參與,在1999年建立起來(lái)的一種動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)標(biāo)準(zhǔn),JSP技術(shù)是在Servlet技術(shù)基礎(chǔ)上發(fā)展起來(lái)的,它正在飛速發(fā)展中,現(xiàn)在已經(jīng)成為Java服務(wù)
9、器編程的重要組成部分。JSP基于強(qiáng)大的Java語(yǔ)言,具有良好的可擴(kuò)展性,與Java Enterprise API緊密地集成在一起,在網(wǎng)絡(luò)數(shù)據(jù)庫(kù)應(yīng)用開(kāi)發(fā)領(lǐng)域中具有得天獨(dú)厚的優(yōu)勢(shì)?;贘ava平臺(tái)構(gòu)建網(wǎng)絡(luò)程序已經(jīng)被越來(lái)越多的人認(rèn)為是未來(lái)最有發(fā)展前途的技術(shù)之一。</p><p> 本文先討論了一些SSH框架和MVC模式的優(yōu)缺點(diǎn)以及選擇此框架作為本系統(tǒng)框架的原因。然后對(duì)JSP的特性進(jìn)行簡(jiǎn)短討論。然后對(duì)于系統(tǒng)中使用的一些
10、小型開(kāi)源框架或工具做了簡(jiǎn)單介紹。之后,對(duì)本系統(tǒng)作了系統(tǒng)的描述。在此基礎(chǔ)上,論文重點(diǎn)對(duì)本系統(tǒng)作了詳細(xì)的介紹,然后,對(duì)開(kāi)發(fā)一個(gè)小型的酒店管理系統(tǒng)所用到的語(yǔ)句、函數(shù)、對(duì)象、數(shù)據(jù)庫(kù)進(jìn)行了闡述。最后,給出了完整可用的小型酒店管理系統(tǒng),并給出了該系統(tǒng)的使用方法和設(shè)計(jì)方法。</p><p> 關(guān)鍵詞:客房管理;SSH;數(shù)據(jù)庫(kù)技術(shù);JavaEE 開(kāi)源框架;JSP;MVC;</p><p><b&g
11、t; Abstract</b></p><p> Increasingly large modern hotel organizations, services and more informative has become a major feature of the hotel industry.To improve work efficiency, improve service quali
12、ty, reduce costs must be using modern computer technology to achieve efficient management.As a modern hotel, in order to win in fierce competition must place their own information to do the work.This requires that the ho
13、tel must have a good information management platform, modern management systems, efficient data systems.A</p><p> According to a survey of domestic general-star hotel have adopted different management syste
14、ms, most use the VB + SQL, and ASP + SQL system.There are some uses PHP + SQL system.As the hotel room information management system for hotel rooms main task is to computerize the management of housing management, to ta
15、ke a friendly interface, easy to maintain and will become the focus of this development of the.In today's Java software development industry, dominated by a pioneer, because of its develop</p><p> The s
16、ystem uses Strtuts2 + hibernate 3 + spring 3 as a system framework, which is popular SSH framework and MVC development model, using JSP as the front display layer, and assisted by a number of free open source framework a
17、nd tools.This site uses the MVC design pattern ideas, MVC in English or Model-View-Controller, an application that is input, process, output process in accordance with the Model, View, Controller isolated manner, such an
18、 application is divided into three layers -- model laye</p><p> The system selected application server for the Apache Tomcat server company, Tomcat server is a free open source Web application server, the A
19、pache Software Foundation (Apache Software Foundation) of the Jakarta project, a core project, from Apache, Sunand other co-developed with companies and individuals.With Sun's participation and support, the latest Se
20、rvlet and JSP specifications can always be reflected in the Tomcat, Tomcat 5 supports the latest Servlet 2.4 and JSP 2.0 specifications.Becaus</p><p> The system uses the JSP front-end display technology, J
21、SP (Java Server Pages) is initiated by the Sun MicroSystems Inc., many companies involved, in 1999, built a dynamic web technology standards, JSP technology is developed based on Servlet technology, it is rapidly develop
22、ing in Java server programming has now become an important part.JSP based on the powerful Java language, has good scalability, and the Java Enterprise API closely integrated with network database application development
23、in th</p><p> This article first discusses some of the SSH model framework and the MVC framework of the advantages and disadvantages and the selection of this framework as a reason for the system.Then a bri
24、ef discussion of the characteristics of JSP.Then the system used in some small open source frameworks or tools to do a brief introduction.Later, on a systematic description of the system.On this basis, the paper focuses
25、on the introduction of this system in detail, and then, on the development of a small ho</p><p> Keywords:Hotel Management;SSH;Datebase;JavaEE;JSP;MVC;</p><p><b> 第1章 前言</b></p
26、><p><b> 1.1 選題背景</b></p><p> 本次設(shè)計(jì)的題目為酒店客房管理系統(tǒng)。酒店業(yè)是一個(gè)前景廣泛且又競(jìng)爭(zhēng)激烈的行業(yè),隨著低碳經(jīng)濟(jì)的口號(hào)被提出后,旅游業(yè)一躍成為了最熱門(mén)的產(chǎn)業(yè),據(jù)調(diào)查統(tǒng)計(jì),到2020年我國(guó)將成為世界上第四大旅游國(guó)家。這個(gè)時(shí)候,我國(guó)的酒店業(yè)將面臨著前所未有的機(jī)遇和挑戰(zhàn)。要是想讓工作效率有效的提高,采用先進(jìn)的計(jì)算機(jī)網(wǎng)絡(luò)通信技術(shù)改變酒店業(yè)
27、務(wù)模式,實(shí)現(xiàn)酒店業(yè)務(wù)的自動(dòng)化已經(jīng)成為一個(gè)必然的趨勢(shì)。</p><p><b> 1.2 選題意義</b></p><p> 隨著計(jì)算機(jī)技術(shù)的飛速發(fā)展,計(jì)算機(jī)在管理系統(tǒng)中應(yīng)用的普及,利用計(jì)算機(jī)實(shí)現(xiàn)酒店客房的管理已為必然。面對(duì)信息時(shí)代的機(jī)遇與挑戰(zhàn),利用科技手段提高酒店管理效率無(wú)疑是一條行之有效的策略。雖然計(jì)算機(jī)管理并不是酒店業(yè)走向成功的最關(guān)鍵元素,但它可以發(fā)揮快捷、高
28、效的的特性對(duì)酒店的業(yè)務(wù)管理提供強(qiáng)有力的支持。因此,采用全新的計(jì)算機(jī)酒店客房管理系統(tǒng),能實(shí)現(xiàn)流暢的工作流銜接,幫助酒店實(shí)現(xiàn)有效的業(yè)務(wù)管理,釋放最大價(jià)值。</p><p><b> 1.3 系統(tǒng)目標(biāo)</b></p><p> (1)實(shí)現(xiàn)高效的客房管理業(yè)務(wù),由計(jì)算機(jī)處理客房業(yè)務(wù)邏輯。</p><p> (2)在實(shí)現(xiàn)高效率的同時(shí)盡量降低成本,實(shí)現(xiàn)
29、低廉高效的系統(tǒng)目標(biāo)。</p><p> (3)根據(jù)現(xiàn)代酒店行業(yè)的需求,使系統(tǒng)能夠適應(yīng)中小型的酒店基本所有的業(yè)務(wù)處理,使客房管理工作更加高效、準(zhǔn)確。</p><p><b> 第2章 需求分析</b></p><p> 2.1 需求確定前臺(tái)接待可以通過(guò)系統(tǒng)瀏覽客房信息;(1)可以單獨(dú)瀏覽每個(gè)客房的詳細(xì)信息。(2)可以查看已
30、入住客房和空閑客房。(3)可以根據(jù)客房類(lèi)別分組查看客房。(4)可以根據(jù)客戶需要的特定條件搜索客房。前臺(tái)接待可以通過(guò)系統(tǒng)預(yù)定客房;(1)預(yù)約到時(shí)前客房為預(yù)約狀態(tài)不可給他人辦理入住,預(yù)約時(shí)間過(guò)期后預(yù)約人仍未辦理入住手續(xù)客房自動(dòng)恢復(fù)為空閑;前臺(tái)接待可以通過(guò)系統(tǒng)登記客戶信息;前臺(tái)接待可以通過(guò)系統(tǒng)辦理客戶入住和退房;(1)系統(tǒng)根據(jù)入住時(shí)間以及退房時(shí)間計(jì)算費(fèi)用。退房后系統(tǒng)計(jì)算出客戶應(yīng)繳納費(fèi)用;</p&
31、gt;<p> 退房后服務(wù)器保留客戶入住幾日的所有信息以供日后查詢;</p><p> 后臺(tái)管理員可以增加、刪除以及修改客房類(lèi)別信息;后臺(tái)管理員可以增加、刪除以及修改客房信息;后臺(tái)管理員可以增加與刪除前臺(tái)接待用戶;</p><p> 后臺(tái)管理員可以在沒(méi)有前臺(tái)接待用戶原始密碼的情況下修改前臺(tái)接待用戶的用戶名以及密碼;后臺(tái)管理員可以初始化數(shù)據(jù)庫(kù)信息;</p
32、><p> 2.2 架構(gòu)分析與設(shè)計(jì)2.2.1 邏輯架構(gòu)JSP + Struts + Hibernate + Spring + MySQL 其中:JSP負(fù)責(zé)展現(xiàn)層;Struts負(fù)責(zé)控制;</p><p> Hibernate以及MySQL 負(fù)責(zé)持久層;Spring負(fù)責(zé)事務(wù)管理以及資源注入;</p><p> 2.2.2 物理架構(gòu)Data
33、base服務(wù)器一臺(tái);Web服務(wù)器一臺(tái);2.2.3 技術(shù)解決方案</p><p> 開(kāi)發(fā)模式:MVC數(shù)據(jù)庫(kù):My SQLWeb服務(wù)器:Tomcat2.3 系統(tǒng)環(huán)境及開(kāi)發(fā)工具簡(jiǎn)介</p><p> 2.3.1 開(kāi)發(fā)工具簡(jiǎn)介</p><p> 本次系統(tǒng)開(kāi)發(fā)采用的開(kāi)發(fā)工具為MyEclipse 7.5,MyEclipse企業(yè)級(jí)工作平臺(tái)(MyEclipse
34、 Enterprise Workbench ,簡(jiǎn)稱MyEclipse)是對(duì)Eclipse IDE的擴(kuò)展,利用它我們可以在數(shù)據(jù)庫(kù)和J2EE的開(kāi)發(fā)、發(fā)布,以及應(yīng)用程序服務(wù)器的整合方面極大的提高工作效率。它是功能豐富的J2EE集成開(kāi)發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測(cè)試和發(fā)布功能,完整支持HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate。</p><p> 2.3.2
35、 系統(tǒng)數(shù)據(jù)庫(kù)簡(jiǎn)介</p><p> 本次系統(tǒng)的數(shù)據(jù)庫(kù)采用了MySQL數(shù)據(jù)庫(kù)系統(tǒng),MySQL是一個(gè)小型關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),開(kāi)發(fā)者為瑞典MySQL AB公司。在2008年1月16號(hào)被Sun公司收購(gòu)。而2009年,SUN又被Oracle收購(gòu).對(duì)于Mysql的前途,沒(méi)有任何人抱樂(lè)觀的態(tài)度.目前MySQL被廣泛地應(yīng)用在Internet上的中小型網(wǎng)站中。由于其體積小、速度快、總體擁有成本低,尤其是開(kāi)放源碼這一特點(diǎn),許多中
36、小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了MySQL作為網(wǎng)站數(shù)據(jù)庫(kù)。與其他的大型數(shù)據(jù)庫(kù)例如Oracle、DB2、SQL Server等相比,MySQL自有它的不足之處,如規(guī)模小、功能有限(MySQL Cluster的功能和效率都相對(duì)比較差)等,但是這絲毫也沒(méi)有減少它受歡迎的程度。對(duì)于一般的個(gè)人使用者和中小型企業(yè)來(lái)說(shuō),MySQL提供的功能已經(jīng)綽綽有余,而且由于MySQL是開(kāi)放源碼軟件,因此可以大大降低總體擁有成本。 </p>
37、<p> 2.3.3 應(yīng)用服務(wù)器簡(jiǎn)介</p><p> Tomcat 服務(wù)器是一個(gè)免費(fèi)的開(kāi)放源代碼的Web 應(yīng)用服務(wù)器,是Apache 軟件基金會(huì)(Apache Software Foundation)的Jakarta 項(xiàng)目中的一個(gè)核心項(xiàng)目,由Apache、Sun 和其他一些公司及個(gè)人共同開(kāi)發(fā)而成。由于有了Sun 的參與和支持,最新的Servlet 和JSP 規(guī)范總是能在Tomcat 中得到體現(xiàn),T
38、omcat 5 支持最新的Servlet 2.4 和JSP 2.0 規(guī)范。因?yàn)門(mén)omcat 技術(shù)先進(jìn)、性能穩(wěn)定,而且免費(fèi),因而深受Java 愛(ài)好者的喜愛(ài)并得到了部分軟件開(kāi)發(fā)商的認(rèn)可,成為目前比較流行的Web 應(yīng)用服務(wù)器。</p><p> Tomcat 很受廣大程序員的喜歡,因?yàn)樗\(yùn)行時(shí)占用的系統(tǒng)資源小,擴(kuò)展性好,支持負(fù)載平衡與郵件服務(wù)等開(kāi)發(fā)應(yīng)用系統(tǒng)常用的功能;而且它還在不斷的改進(jìn)和完善中,任何一個(gè)感興趣的程序
39、員都可以更改它或在其中加入新的功能。</p><p> Tomcat 是一個(gè)小型的輕量級(jí)應(yīng)用服務(wù)器,在中小型系統(tǒng)和并發(fā)訪問(wèn)用戶不是很多的場(chǎng)合下被普遍使用,是開(kāi)發(fā)和調(diào)試JSP 程序的首選。對(duì)于一個(gè)初學(xué)者來(lái)說(shuō),可以這樣認(rèn)為,當(dāng)在一臺(tái)機(jī)器上配置好Apache 服務(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í)際上作
40、為一個(gè)與Apache 獨(dú)立的進(jìn)程單獨(dú)運(yùn)行的。 </p><p> 2.3.4 B/S結(jié)構(gòu)簡(jiǎn)介 </p><p> B/S(Browser/Server)結(jié)構(gòu)即瀏覽器和服務(wù)器結(jié)構(gòu)。它是隨著Internet技術(shù)的興起,對(duì)C/S結(jié)構(gòu)的一種變化或者改進(jìn)的結(jié)構(gòu)。在這種結(jié)構(gòu)下,用戶工作界面是通過(guò)WWW瀏覽器來(lái)實(shí)現(xiàn),極少部分事務(wù)邏輯在前端(Browser)實(shí)現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端(Serve
41、r)實(shí)現(xiàn),形成所謂三層3-tier結(jié)構(gòu)。這樣就大大簡(jiǎn)化了客戶端電腦載荷,減輕了系統(tǒng)維護(hù)與升級(jí)的成本和工作量,降低了用戶的總體成本(TCO)。以目前的技術(shù)看,局域網(wǎng)建立B/S結(jié)構(gòu)的網(wǎng)絡(luò)應(yīng)用,并通過(guò)Internet/Intranet模式下數(shù)據(jù)庫(kù)應(yīng)用,相對(duì)易于把握、成本也是較低的。它是一次性到位的開(kāi)發(fā),能實(shí)現(xiàn)不同的人員,從不同的地點(diǎn),以不同的接入方式(比如LAN, WAN, Internet/Intranet等)訪問(wèn)和操作共同的數(shù)據(jù)庫(kù);它
42、能有效地保護(hù)數(shù)據(jù)平臺(tái)和管理訪問(wèn)權(quán)限,服務(wù)器數(shù)據(jù)庫(kù)也很安全 。特別是在JAVA這樣的跨平臺(tái)語(yǔ)言出現(xiàn)之后,B/S架構(gòu)管理軟件更是方便、快捷、高效</p><p> 2.3.5 MVC模式簡(jiǎn)介 </p><p> 模型-視圖-控制器(MVC)是Xerox PARC在八十年代為編程語(yǔ)言Smalltalk-80發(fā)明的一種軟件設(shè)計(jì)模式,至今已被廣泛使用。最近幾年被推薦為Sun公司J2EE平臺(tái)的設(shè)計(jì)
43、模式,并且受到越來(lái)越多的使用ColdFusion和 PHP的開(kāi)發(fā)者的歡迎。模型-視圖-控制器模式是一個(gè)有用的工具箱,它有很多好處,但也有一些缺點(diǎn)。MVC 架構(gòu)的核心思想是:將程序分成相對(duì)獨(dú)立,而又能協(xié)同工作的三個(gè)部分。通過(guò)使用MVC 架構(gòu),可以降低模塊之間的搞合,提供應(yīng)用的可擴(kuò)展性。另外, MVC 的每個(gè)組件只關(guān)心組件內(nèi)的邏輯,不應(yīng)與其他組件的邏輯混合。 MVC 是Model、View、Controller三個(gè)詞的縮寫(xiě),三個(gè)詞分
44、別代表應(yīng)用的三個(gè)組成部分:模型、視圖與控制器。三個(gè)部分以最少的稿合,協(xié)同工作,從而提高應(yīng)用的可擴(kuò)展性及可維護(hù)性。 在經(jīng)典的MVC 模式中,事件由控制器處理,控制器根據(jù)事件的類(lèi)型改變模型或視圖,反之亦然。具體地說(shuō),模型維護(hù)一個(gè)視圖列表,這些視圖為獲得模型變化通知,通常采用觀察者模式登記給模型。當(dāng)模型發(fā)生改變時(shí),模型向所有登記過(guò)的視圖發(fā)送通知:接下來(lái),視圖從對(duì)應(yīng)的模型中獲得</p><p> 2.3.6 J
45、SP簡(jiǎn)介</p><p> JSP(Java Server Pages)是由Sun MicroSystems公司倡導(dǎo)、許多公司參與,在1999年建立起來(lái)的一種動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)標(biāo)準(zhǔn),JSP技術(shù)是在Servlet技術(shù)基礎(chǔ)上發(fā)展起來(lái)的,它正在飛速發(fā)展中,現(xiàn)在已經(jīng)成為Java服務(wù)器編程的重要組成部分。JSP基于強(qiáng)大的Java語(yǔ)言,具有良好的可擴(kuò)展性,與Java Enterprise API緊密地集成在一起,在網(wǎng)絡(luò)數(shù)據(jù)庫(kù)應(yīng)用
46、開(kāi)發(fā)領(lǐng)域中具有得天獨(dú)厚的優(yōu)勢(shì)?;贘ava平臺(tái)構(gòu)建網(wǎng)絡(luò)程序已經(jīng)被越來(lái)越多的人認(rèn)為是未來(lái)最有發(fā)展前途的技術(shù)之一。</p><p> JSP源文件由安裝在Web服務(wù)器上的JSP引擎編譯執(zhí)行。客戶對(duì)JSP的請(qǐng)求直接發(fā)送給JSP引擎,JSP引擎接受到請(qǐng)求后,按照J(rèn)SP源代碼中所規(guī)定的內(nèi)容生成客戶端的響應(yīng),并把響應(yīng)的結(jié)果以HTML或XML頁(yè)面形式傳送給客戶端的瀏覽器。</p><p> 2.3.
47、7 SSH框架簡(jiǎn)介</p><p> Struts 的MVC設(shè)計(jì)模式可以使我們的邏輯變得很清晰。Spring 的IOC和AOP可以使我們的產(chǎn)品在最大限度上解藕。hibernate的當(dāng)然就是實(shí)體對(duì)象的持久化了。典型的J2EE三層結(jié)構(gòu),分為表現(xiàn)層、中間層(業(yè)務(wù)邏輯層)和數(shù)據(jù)服務(wù)層。三層體系將業(yè)務(wù)規(guī)則、數(shù)據(jù)訪問(wèn)及合法性校驗(yàn)等工作放在中間層處理。客戶端不直接與數(shù)據(jù)庫(kù)交互,而是通過(guò)組件與中間層建立連接,再由中間層與數(shù)據(jù)庫(kù)
48、交互。表現(xiàn)層是傳統(tǒng)的JSP技術(shù),自1999年問(wèn)世以來(lái),經(jīng)過(guò)多年的發(fā)展,其廣泛的應(yīng)用和穩(wěn)定的表現(xiàn),為其作為表現(xiàn)層技術(shù)打下了堅(jiān)實(shí)的基礎(chǔ)。中間層采用的是流行的Spring+Hibernate,為了將控制層與業(yè)務(wù)邏輯層分離,又細(xì)分為以下幾種。Web層,就是MVC模式里面的'C'(controller),負(fù)責(zé)控制業(yè)務(wù)邏輯層與表現(xiàn)層的交互,調(diào)用業(yè)務(wù)邏輯層,并將業(yè)務(wù)數(shù)據(jù)返回給表現(xiàn)層作組織表現(xiàn),該系統(tǒng)的MVC框架采用Stru
49、ts。Service層(就是業(yè)務(wù)邏輯層),負(fù)責(zé)實(shí)現(xiàn)業(yè)務(wù)邏輯。業(yè)務(wù)邏輯層以DAO層為基礎(chǔ),通過(guò)對(duì)DAO組件的正面模式包裝,完成系統(tǒng)所要求的業(yè)務(wù)邏輯。DAO層,負(fù)責(zé)與持久化對(duì)象交互。該層封裝了數(shù)據(jù)的</p><p><b> 第3章 系統(tǒng)設(shè)計(jì)</b></p><p> 3.1 功能結(jié)構(gòu)設(shè)計(jì)
50、 </p><p> 酒店前臺(tái)管理信息系統(tǒng)的主要功能有預(yù)訂、接待、結(jié)賬、調(diào)房服務(wù)、客房管理和查詢服務(wù)等。每個(gè)功能模塊都和賓客直接有關(guān),其采用酒店管理信息系統(tǒng)的目的是提高就店服務(wù)的質(zhì)量,提高信息管理的精度,進(jìn)而提高酒店在客戶心目中的信譽(yù),樹(shù)立良好的酒店服務(wù)形象。各子功能分析如下:</p><p> (1)預(yù)訂功能需求:其主要目的是提高酒店的開(kāi)房率,為客人預(yù)留房
51、間,并提供良好的預(yù)訂服務(wù)。其功能需求包括預(yù)訂查詢,可用房確認(rèn),預(yù)訂記錄建立,預(yù)訂確認(rèn),預(yù)訂記錄維護(hù)等;</p><p> (2)接待功能需求:其主要目的是以最快的速度為客人開(kāi)房。其功能需求包括賓客登記、可用房確認(rèn)、修改賓客信息、刪除賓客信息和查詢賓客信息等;</p><p> (3)結(jié)賬功能需求:其功能需求包括客人結(jié)賬、打印報(bào)表和客人掛
52、賬等;</p><p> (4)調(diào)房功能需求:其主要目的是滿足客人調(diào)房的需要。其主要功能是查詢客房,調(diào)房登記,調(diào)房確認(rèn)等;</p><p> (5)客房管理功能需求:其主要目的是對(duì)客房的信息化管理,提高客房管理的精度和準(zhǔn)確度,同時(shí)減輕酒店客房中心員工的工作負(fù)擔(dān),從而提高客房管理的效率和服務(wù)質(zhì)量。其主要功能是房態(tài)維護(hù),費(fèi)用記錄和客人查詢等;</p>&l
53、t;p> (6)查詢功能需求:其主要目的是滿足客人的需要,快速查找相應(yīng)的房間和信息,提高服務(wù)的效率和樹(shù)立酒店良好的企業(yè)形象。其主要功能包括房態(tài)查詢,房間類(lèi)型查詢和房間價(jià)格查詢等;</p><p> 酒店客房管理信息系統(tǒng)的功能圖如下圖3.1:</p><p> 圖3.1 功能結(jié)構(gòu)圖</p><p><b> 3.2 概念設(shè)計(jì)</
54、b></p><p> 概念設(shè)計(jì)模式:E-R圖3.2</p><p> 圖3.2 概念設(shè)計(jì)E-R圖</p><p> 3.3 業(yè)務(wù)模型分析(1)客房類(lèi)包裝客房信息,與客戶類(lèi)是一對(duì)多關(guān)系,與客房類(lèi)別類(lèi)是多對(duì)一關(guān)系(2)客房類(lèi)別類(lèi)包裝客房的類(lèi)別,與客房類(lèi)是一對(duì)多關(guān)系。(3)前臺(tái)接待用戶類(lèi)包裝前臺(tái)接待用戶信息。(4)后臺(tái)管理員
55、類(lèi)包裝管理員信息。(5)客戶類(lèi)包裝客戶信息,與客房類(lèi)是多對(duì)一關(guān)系。</p><p> 業(yè)務(wù)模型根據(jù)旅客住宿登記表抽象而來(lái),登記表如下圖:</p><p> 圖3.3 住宿登記表</p><p> 3.4 業(yè)務(wù)模型設(shè)計(jì)</p><p> 業(yè)務(wù)模型使用Hibernate的annotation鏈接數(shù)據(jù)庫(kù)表與業(yè)務(wù)模型實(shí)體類(lèi)。具
56、體實(shí)體類(lèi)實(shí)現(xiàn)代碼如下:3.4.1 Room@Entity</p><p> public class Room {</p><p> private int id;// 客房ID</p><p> private int roomNo;// 客房號(hào)</p><p> pr
57、ivate int floor;// 客房樓層</p><p> private int state;// 客房狀態(tài)(預(yù)定/入住/空閑)</p><p> private Category category;// 客房類(lèi)別類(lèi)</p><p> private List<Client> clients;//
58、 此客房客戶列表</p><p> private Date checkInTime;// 客房入住時(shí)間</p><p> private float pay;// 客人應(yīng)付金額</p><p><b> @Id</b></p><p> @GeneratedValue</p>
59、<p> public int getId() {</p><p> return id;</p><p><b> }</b></p><p> public void setId(int id) {</p><p> this.id = id;</p><p><b
60、> }</b></p><p> @Column(nullable=false, unique=true)</p><p> public int getRoomNo() {</p><p> return roomNo;</p><p><b> }</b></p><p
61、> public void setRoomNo(int roomNo) {</p><p> this.roomNo = roomNo;</p><p><b> }</b></p><p> @Column(nullable=false)</p><p> public int getFloor() {
62、</p><p> return floor;</p><p><b> }</b></p><p> public void setFloor(int floor) {</p><p> this.floor = floor;</p><p><b> }</b>
63、</p><p> @Column(nullable=false)</p><p> public int getState() {</p><p> return state;</p><p><b> }</b></p><p> public void setState(int s
64、tate) {</p><p> this.state = state;</p><p><b> }</b></p><p> @ManyToOne</p><p> public Category getCategory() {</p><p> return category;&l
65、t;/p><p><b> }</b></p><p> public void setCategory(Category category) {</p><p> this.category = category;</p><p><b> }</b></p><p>
66、 @Column(nullable=true)</p><p> public Date getCheckInTime() {</p><p> return checkInTime;</p><p><b> }</b></p><p> public void setCheckInTime(Date che
67、ckInTime) {</p><p> this.checkInTime = checkInTime;</p><p><b> }</b></p><p> @OneToMany(mappedBy="room")</p><p> public List<Client> get
68、Clients() {</p><p> return clients;</p><p><b> }</b></p><p> public void setClients(List<Client> clients) {</p><p> this.clients = clients;</p&
69、gt;<p><b> }</b></p><p><b> }</b></p><p> 3.4.2 Category@Entity</p><p> public class Category {</p><p> private int id;
70、// 類(lèi)別ID</p><p> private String name;// 類(lèi)別名</p><p> private float price;// 類(lèi)別價(jià)格</p><p> private int roomNumber;// 此類(lèi)別總房間數(shù)</p><p> private in
71、t roomSurplus;// 此類(lèi)別空閑房間數(shù)</p><p> private List<Room> rooms;// 此類(lèi)別房間列表</p><p><b> @Id</b></p><p> @GeneratedValue</p><p> public int get
72、Id() {</p><p> return id;</p><p><b> }</b></p><p> public void setId(int id) {</p><p> this.id = id;</p><p><b> }</b></p>
73、;<p> @Column(nullable=false, unique=true, length=20)</p><p> public String getName() {</p><p> return name;</p><p><b> }</b></p><p> public voi
74、d setName(String name) {</p><p> this.name = name;</p><p><b> }</b></p><p> @Column(nullable=true)</p><p> public float getPrice() {</p><p>
75、; return price;</p><p><b> }</b></p><p> public void setPrice(float price) {</p><p> this.price = price;</p><p><b> }</b></p><p&
76、gt; @Column(nullable=true)</p><p> public int getRoomNumber() {</p><p> return roomNumber;</p><p><b> }</b></p><p> public void setRoomNumber(int roomN
77、umber) {</p><p> this.roomNumber = roomNumber;</p><p><b> }</b></p><p> @Column(nullable=true)</p><p> public int getRoomSurplus() {</p><p>
78、; return roomSurplus;</p><p><b> }</b></p><p> public void setRoomSurplus(int roomSurplus) {</p><p> this.roomSurplus = roomSurplus;</p><p><b> }
79、</b></p><p> @OneToMany(mappedBy="category")</p><p> public List<Room> getRooms() {</p><p> return rooms;</p><p><b> }</b></p&g
80、t;<p> public void setRooms(List<Room> rooms) {</p><p> this.rooms = rooms;</p><p><b> }</b></p><p><b> }</b></p><p> 3.4.3 Us
81、er</p><p><b> @Entity</b></p><p> public class User {</p><p> private int id;// 用戶ID</p><p> private String username;// 用戶名&l
82、t;/p><p> private String password;// 用戶密碼</p><p> private String name;// 用戶真實(shí)姓名</p><p> private String sex;// 用戶性別</p><p> private int age;
83、// 用戶年齡</p><p><b> @Id</b></p><p> @GeneratedValue</p><p> public int getId() {</p><p> return id;</p><p><b> }</b></p&
84、gt;<p> public void setId(int id) {</p><p> this.id = id;</p><p><b> }</b></p><p> @Column(nullable=false, unique=true, length=20)</p><p> publi
85、c String getUsername() {</p><p> return username;</p><p><b> }</b></p><p> public void setUsername(String username) {</p><p> this.username = username;&
86、lt;/p><p><b> }</b></p><p> @Column(nullable=false, length=20)</p><p> public String getPassword() {</p><p> return password;</p><p><b>
87、 }</b></p><p> public void setPassword(String password) {</p><p> this.password = password;</p><p><b> }</b></p><p> @Column(nullable=false, leng
88、th=10)</p><p> public String getName() {</p><p> return name;</p><p><b> }</b></p><p> public void setName(String name) {</p><p> this.nam
89、e = name;</p><p><b> }</b></p><p> @Column(nullable=false, length=2)</p><p> public String getSex() {</p><p> return sex;</p><p><b>
90、 }</b></p><p> public void setSex(String sex) {</p><p> this.sex = sex;</p><p><b> }</b></p><p> @Column(nullable=false)</p><p> pub
91、lic int getAge() {</p><p> return age;</p><p><b> }</b></p><p> public void setAge(int age) {</p><p> this.age = age;</p><p><b> }&l
92、t;/b></p><p><b> }</b></p><p> 3.4.4 Client@Entity</p><p> public class Client {</p><p> private int id;// 客戶ID</p><p&g
93、t; private float idNum;// 客戶身份證號(hào)</p><p> private String name;// 客戶姓名</p><p> private String sex;// 客戶性別</p><p> private int age;// 客戶年齡</p>&
94、lt;p> private String birthPlace;// 客戶籍貫</p><p> private String address;// 客戶住址</p><p> private Room room;// 客戶所住客房</p><p><b> @Id</b></p>
95、<p> @GeneratedValue</p><p> public int getId() {</p><p> return id;</p><p><b> }</b></p><p> public void setId(int id) {</p><p>
96、this.id = id;</p><p><b> }</b></p><p> @Column(nullable=false, length=10)</p><p> public String getName() {</p><p> return name;</p><p><
97、;b> }</b></p><p> public void setName(String name) {</p><p> this.name = name;</p><p><b> }</b></p><p> @Column(nullable=false, length=2)</
98、p><p> public String getSex() {</p><p> return sex;</p><p><b> }</b></p><p> public void setSex(String sex) {</p><p> this.sex = sex;</p&g
99、t;<p><b> }</b></p><p> @Column(nullable=false)</p><p> public int getAge() {</p><p> return age;</p><p><b> }</b></p><p&
100、gt; public void setAge(int age) {</p><p> this.age = age;</p><p><b> }</b></p><p> @Column(nullable=false, length=100)</p><p> public String getAddress
101、() {</p><p> return address;</p><p><b> }</b></p><p> public void setAddress(String address) {</p><p> this.address = address;</p><p><b
102、> }</b></p><p> @Column(nullable=false, unique=true)</p><p> public float getIdNum() {</p><p> return idNum;</p><p><b> }</b></p><p
103、> public void setIdNum(float idNum) {</p><p> this.idNum = idNum;</p><p><b> }</b></p><p> @ManyToOne</p><p> public Room getRoom() {</p><
104、;p> return room;</p><p><b> }</b></p><p> public void setRoom(Room room) {</p><p> this.room = room;</p><p><b> }</b></p><p&g
105、t; public void setBirthPlace(String birthPlace) {</p><p> this.birthPlace = birthPlace;</p><p><b> }</b></p><p> @Column(nullable=false, length=100)</p><p
106、> public String getBirthPlace() {</p><p> return birthPlace;</p><p><b> }</b></p><p><b> }</b></p><p> 3.5 數(shù)據(jù)庫(kù)設(shè)計(jì)3.5.1 Room</p>&
107、lt;p> 表3.1 Room表結(jié)構(gòu)設(shè)計(jì)</p><p> 圖3.4 Room表結(jié)構(gòu)</p><p> 3.5.2 Category</p><p> 表3.2 Category表結(jié)構(gòu)設(shè)計(jì)</p><p> 圖3.5 Category表結(jié)構(gòu)</p><p> 3.5.3 User</p>
108、<p> 表3.3 User表結(jié)構(gòu)設(shè)計(jì)</p><p> 圖3.6 User表結(jié)構(gòu)</p><p> 3.5.4 Client</p><p> 表3.4 Client表結(jié)構(gòu)設(shè)計(jì)</p><p> 圖3.7 Client表結(jié)構(gòu)</p><p><b> 3.6界面設(shè)計(jì)</b>
109、;</p><p> 3.6.1 前臺(tái)登陸頁(yè)面:</p><p> 圖3.8 前臺(tái)登陸頁(yè)面</p><p> 3.6.2 前臺(tái)主頁(yè)面:</p><p> 圖3.9 前臺(tái)主頁(yè)面</p><p> 3.6.3 后臺(tái)登陸頁(yè)面:</p><p> 圖3.10 后臺(tái)登陸頁(yè)面</p>
110、<p> 3.6.4 后臺(tái)主頁(yè)面:</p><p> 圖3.11 后臺(tái)主頁(yè)面</p><p><b> 系統(tǒng)使用說(shuō)明書(shū)</b></p><p> 4.1 安裝配置JDK</p><p> 4.1.1 安裝jdk </p><p> 首次使用本系統(tǒng)應(yīng)該首先安裝最新版本的J
111、DK,安裝配置步驟如下:</p><p> (1) JDK的下載</p><p> 如果需要獲得JDK最新版本,可以到SUN公司的官方網(wǎng)站上進(jìn)行下載,下載地址為:</p><p> http://java.sun.com/javase/downloads/index.jsp。下載最新版本的“JDK 6 Update 6”,選擇對(duì)應(yīng)的操作系統(tǒng),以及使用的語(yǔ)言即可
112、。</p><p> 在下載Windows版本時(shí),有兩個(gè)版本可供下載,,分別是:</p><p> Windows Online Installation:在線安裝版本,每次安裝時(shí)都從網(wǎng)絡(luò)上下載安裝程序,在下載完成以后,進(jìn)行實(shí)際的安裝。</p><p> Windows Offline Installation:離線安裝版本,每次安裝時(shí)直接進(jìn)行本地安裝。通常情
113、況下,一般下載離線安裝版本。</p><p> 其實(shí)如果不需要安裝JDK最新版本的話,也可以在國(guó)內(nèi)主流的下載站點(diǎn)下載JDK的安裝程序,只是這些程序的版本可能稍微老一些,這些對(duì)于初學(xué)者來(lái)說(shuō)其實(shí)問(wèn)題不大。</p><p> (2) JDK的安裝</p><p> Windows操作系統(tǒng)上的JDK安裝程序是一個(gè)exe可執(zhí)行程序,直接安裝即可,在安裝過(guò)程中可以選擇安裝
114、路徑以及安裝的組件等,如果沒(méi)有特殊要求,選擇默認(rèn)設(shè)置即可。程序默認(rèn)的安裝路徑在C:\Program Files\Java目錄下。</p><p><b> (3)JDK的配置</b></p><p> JDK安裝完成以后,可以不用設(shè)置就進(jìn)行使用,但是為了使用方便,一般需要進(jìn)行簡(jiǎn)單的配置。由于JDK提供的編譯和運(yùn)行工具都是基于命令行的,所以需要進(jìn)行一下DOS下面的一
115、個(gè)設(shè)定,把JDK安裝目錄下bin目錄中的可執(zhí)行文件都添加到DOS的外部命令中,這樣就可以在任意路徑下直接使用bin目錄下的exe程序了。</p><p> 4.1.2 配置jdk</p><p> 配置的參數(shù)為操作系統(tǒng)中的path環(huán)境變量,該變量的用途是系統(tǒng)查找可執(zhí)行程序所在的路徑。</p><p><b> 配置步驟為:</b><
116、/p><p> (1) “開(kāi)始”>“設(shè)置”>“控制面板”>“系統(tǒng)”,如果控制面板的設(shè)置不是經(jīng)典方式,那么可以在控制面板的“性能和維護(hù)”中找到“系統(tǒng)”。當(dāng)然,也可以選擇桌面上的“我的電腦”,點(diǎn)擊鼠標(biāo)右鍵,選擇“屬性”打開(kāi)。</p><p> (2) 在“系統(tǒng)屬性”窗口中,選擇“高級(jí)”屬性頁(yè)中的“環(huán)境變量”按鈕。</p><p> (3) 在“環(huán)境變
117、量”窗口中,選擇“系統(tǒng)變量”中變量名為“Path”的環(huán)境變量,雙擊該變量。</p><p> (4) 把JDK安裝路徑中bin目錄的絕對(duì)路徑,添加到Path變量的值中,并使用半角的分號(hào)和已有的路徑進(jìn)行分隔。例如JDK的安裝路徑下的bin路徑是C:\Program Files\Java\jdk1.6.0_04\bin,則把該路徑添加到Path值的起始位置,則值為:C:\Program Files\Java\jdk
溫馨提示
- 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ù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 酒店客房管理系統(tǒng)—畢業(yè)設(shè)計(jì)
- 酒店客房管理系統(tǒng)畢業(yè)設(shè)計(jì)
- 酒店客房管理系統(tǒng)設(shè)計(jì)【畢業(yè)設(shè)計(jì)】
- 酒店客房管理系統(tǒng)畢業(yè)設(shè)計(jì)論文
- 酒店客房管理系統(tǒng)畢業(yè)設(shè)計(jì)論文
- 酒店客房管理系統(tǒng)設(shè)計(jì)
- 酒店客房管理系統(tǒng)畢業(yè)設(shè)計(jì)開(kāi)題報(bào)告
- 酒店客房管理系統(tǒng)設(shè)計(jì)資料
- 酒店客房管理信息系統(tǒng)設(shè)計(jì)畢業(yè)設(shè)計(jì)
- 酒店客房管理系統(tǒng)設(shè)計(jì)報(bào)告
- 酒店客房管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)【畢業(yè)設(shè)計(jì)】
- 酒店客房管理系統(tǒng)設(shè)計(jì)【畢業(yè)設(shè)計(jì)+開(kāi)題報(bào)告+文獻(xiàn)綜述】
- 酒店客房管理系統(tǒng)設(shè)計(jì)【開(kāi)題報(bào)告】
- 酒店客房管理系統(tǒng)課程設(shè)計(jì)
- 酒店客房管理系統(tǒng)畢業(yè)設(shè)計(jì)(最終版).doc
- 酒店客房管理系統(tǒng)課程設(shè)計(jì)
- 酒店客房管理系統(tǒng)設(shè)計(jì)【文獻(xiàn)綜述】
- 畢業(yè)設(shè)計(jì)酒店客房預(yù)定管理系統(tǒng)
- 酒店客房預(yù)定管理系統(tǒng)畢業(yè)設(shè)計(jì)
- 酒店客房管理系統(tǒng)ssh
評(píng)論
0/150
提交評(píng)論