(精品論文)酒店畢業(yè)論文-西大基地gxdx0801韋靜賢_第1頁
(精品論文)酒店畢業(yè)論文-西大基地gxdx0801韋靜賢_第2頁
(精品論文)酒店畢業(yè)論文-西大基地gxdx0801韋靜賢_第3頁
(精品論文)酒店畢業(yè)論文-西大基地gxdx0801韋靜賢_第4頁
(精品論文)酒店畢業(yè)論文-西大基地gxdx0801韋靜賢_第5頁
已閱讀5頁,還剩58頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

基于B/S結構的數(shù)字酒店管理系統(tǒng)的設計與實現(xiàn)中文摘要數(shù)字酒店管理系統(tǒng)是一個由人、計算機和數(shù)據(jù)庫組成的進行酒店經(jīng)營管理的系統(tǒng),通過對信息的收集、傳遞、整理、加工、維護和使用,提高管理水平和效率,從而實現(xiàn)酒店管理的自動化、規(guī)范化和人性化。本系統(tǒng)采用流行的Web應用開發(fā)框架Struts+POJO+Hibernate來實現(xiàn);數(shù)據(jù)庫的設計上,采用MySQL來支持各種信息,保障數(shù)據(jù)安全。使用Eclipse(MyEclipse)、Apache-Tomcat-5.2.0開發(fā)工具開發(fā)。本系統(tǒng)包括了前臺功能:用戶注冊、用戶登錄、顧客訂餐、菜單信息查詢、顧客訂房,客房信息查詢以及客戶付款;后臺功能:用戶管理,菜肴信息維護,客房信息維護,就餐計劃管理,就餐管理,住宿計劃管理,住宿管理等。本文簡要介紹了基于MySQL數(shù)據(jù)庫系統(tǒng)和采用Java程序語言開發(fā)的基于B/S結構的酒店管理系統(tǒng)的設計與實現(xiàn),著重闡述了該系統(tǒng)開發(fā)實現(xiàn)過程,從系統(tǒng)采用的開發(fā)工具,開發(fā)平臺以及架構介紹到方案論證、系統(tǒng)功能介紹和開發(fā)過程對遇到問題的分析和解決等各個環(huán)節(jié)都進行了較為詳盡的分析和描述。關鍵詞: 酒店管理信息系統(tǒng) MySQL Java B/STHE DESIGN AND IMPLEMENTATION OF THE DIGITAL HOTEL MANAGEMENT SYSTEM BASED ON B/S ARCHITECTUREAbstractThe hotel management information system composes of human, computer and database, which is used to do hotel management. Through the collection, transmission, sorting out, processing, safeguarding and using of information, improve management level and efficiency, thus realize the automatization, standardization and humanization of management of hotels.For this system, we use fashionable Web application exploit framework-Struts+ POJO+ Hibernate to realize; We use MySQL to support various kinds information and ensure the safety of data for designing database. We choose Eclipse(MyEclipse) and Apache-Tomcat-5.2.0 as development tools.This system include proscenium function: user register, user login, order meal, inquiry meal message ,inquiry room message, order room and client pay for the order; The background function: user management, dish message maintain, guest room message maintain, eating plan maintain, eating management, lodging plan management, lodging management and so on.This paper has briefly introduced the design and implementation of the hotel management information system which bases on B/S architecture and is developed with MySQL and Java programming language, emphatically explained that should develop the course of realizing systematically, from the introduction of tools ,platform and structure which is adopted for development , to the demonstration of programme, the introduction of the system function and the analysis and solution of the difficulty which turned up during the development, all that what are metioned before are exhaustivly analyse and descripte in detail.Keywords:the hotel management information system MySQL Java B/S目 錄第一章 前言1第二章 系統(tǒng)概述3第三章 開發(fā)平臺介紹4第四章 開發(fā)工具介紹54.1 Eclipse(MyEclipse)介紹54.1.1 Eclipse簡介54.1.2 MyEclipse的功能和特點54.2 Apache-Tomcat-5.2.0介紹64.3 MySQL數(shù)據(jù)庫介紹64.3.1 MySQL的特性64.3.2 MySQL的應用7第五章 系統(tǒng)架構介紹85.1三層架構介紹85.1.1三層架構簡介85.1.2各層職責85.1.3實際應用介紹95.2 B/S架構介紹95.2.1 C/S與B/S架構比較95.2.2 B/S簡介11第六章 課題目前在國內(nèi)外的研究及應用開發(fā)現(xiàn)狀126.1該課題在國內(nèi)外的研究動態(tài)126.1.1國外研究動態(tài):126.1.2國內(nèi)研究動態(tài)136.2該課題的應用開發(fā)現(xiàn)狀13第七章 需求分析147.1 系統(tǒng)總體結構圖147.2 系統(tǒng)業(yè)務模型圖147.3 系統(tǒng)用例圖157.4系統(tǒng)業(yè)務流程圖167.4.1餐飲前臺業(yè)務辦理和后臺管理流程圖167.4.2住宿前臺業(yè)務辦理和后臺管理流程圖17第八章 數(shù)據(jù)庫設計188.1概念設計188.2邏輯設計258.2.1數(shù)據(jù)庫表匯總258.2.2具體表結構26第九章 系統(tǒng)的關鍵技術以及要點介紹299.1 JSP簡介299.1.1 JSP簡介299.1.2 JSP的特點299.2 Struts框架319.2.1采用該框架的背景及原因319.2.2 MVC設計模式概述319.2.3 Struts框架介紹329.3 POJO(JavaBean)介紹339.3.1 POJO概述339.3.2 JavaBean使用規(guī)范349.3.3 JavaBean的特點349.4 Hibernate O/R Mapping359.4.1 持久化和持久層的定義359.4.2 Hibernate介紹359.4.3 Hibernate的體系結構35第十章 系統(tǒng)功能介紹3810.1 功能模塊分析3810.2 各功能模塊說明3810.2.1 前臺功能介紹3810.2.2 后臺功能介紹40第十一章 開發(fā)中解決的主要技術難題4711.1 表示層出現(xiàn)的技術難題4711.1.1對用戶信息的獲取4711.1.2頁面亂碼的處理4811.2 業(yè)務層出現(xiàn)的技術難題4911.2.1事務的提交5011.2.2 Session線程安全5011.3持久層出現(xiàn)的技術難題5211.3.1 在Hibernate的映射文件中對于cascade屬性的設置5211.3.2 在Hibernate的映射文件中對于inverse屬性的設置53第十二章 開發(fā)的心得體會與收獲55參考文獻57致謝5858第一章 前言1.1課題的來源近年來,隨著改革開放步伐的加快和中西方文化的交流與發(fā)展,我國人民生活水平顯著提高,全社會對餐飲業(yè)的需求量也越來越大,伴隨著消費的持續(xù)增長,酒店行業(yè)已經(jīng)成為現(xiàn)代社會中發(fā)展最快的行業(yè)之一。要想在激烈的市場競爭中生存,就必須在經(jīng)營管理、餐飲服務等方面提高管理意識。而對酒店的經(jīng)營狀況起決定作用的是對酒店日常營業(yè)的管理,所以應勢而出的酒店管理系統(tǒng)有著很好的可行應用性。傳統(tǒng)的酒店系統(tǒng)大都使用C/S(Client/ Server) 模式的計算機信息管理系統(tǒng),這種C/ S 模式在20 世紀90 年代分布式處理中起到主流系統(tǒng)的作用,它有著自身的一些優(yōu)點,如通過在客戶和服務之間劃分各自所包含的層次,提高了應用的計算效率,緩解終端/ 主機模式中主機繁重的負擔,在終端/ 主機模式和文件服務器模式中找到平衡等;然而隨著酒店規(guī)模的日益擴大,應用程序的復雜程度不斷提高,傳統(tǒng)的C/ S 模式逐漸暴露出許多問題,如系統(tǒng)的可移植性、可擴展性、可維護性都很差等,同時,隨著Internet 迅速普及以及中國加入WTO ,酒店管理也面臨著許多新的挑戰(zhàn)和機遇,如提供遠程客房預定、餐飲預定、網(wǎng)上信息發(fā)布等等。因此,酒店迫切需要開發(fā)出基于B/ S(Browser/ Server) 模式的酒店管理系統(tǒng),以適應當前酒店行業(yè)的發(fā)展,提供更好的服務和提高酒店的經(jīng)濟效益1。1.2課題采用的技術因此,針對上述情況,我開發(fā)了一個基于B/S結構的數(shù)字酒店管理系統(tǒng)。它采用表示層、業(yè)務層,持久層三層架構,采用B/S結構以及三層架構的好處主要是:基于B/S結構的系統(tǒng)使得客戶端無專用程序,應用程序全部集中在應用服務器,這更便于應用程序的維護管理,降低用戶應用成本。軟件的系統(tǒng)升級和功能改進變得更加容易,當程序和系統(tǒng)需要更改時,只需要在Web Application Server Tier上修改程序的界面和系統(tǒng)的業(yè)務邏輯,減少了系統(tǒng)維護和修改的工作量,特別適合互聯(lián)網(wǎng)時代的應用需要。再者,對于業(yè)務邏輯比較復雜的系統(tǒng),分層處理會更加方便和清晰,并且測試就比較容易,思路也清晰,可以減少模塊之間的耦合性,最后本系統(tǒng)使用Java面向對象學編程語言開發(fā),可以解決跨平臺的問題,并且提高系統(tǒng)的安全性。1.3課題達到的目標本次設計的數(shù)字酒店管理系統(tǒng)分為前臺操作和后臺處理,以數(shù)據(jù)庫為核心。整個系統(tǒng)圍繞顧客就餐和住宿的業(yè)務流程而設計。該系統(tǒng)全面、正確、完整、及時地收集、加工、整理在整個就餐和住宿的業(yè)務流程中所發(fā)生的各類有關信息,具有檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等優(yōu)點。這些優(yōu)點能夠極大地提高賓館管理的效率,也是賓館的科學化、正規(guī)化管理,與世界接軌的重要條件。第二章 系統(tǒng)概述2.1系統(tǒng)簡介本文的數(shù)字酒店管理系統(tǒng)是一套比較復雜的軟件,它是依據(jù)大中型酒店和賓館的營業(yè)點,結合計算機信息管理的特點,利用計算機網(wǎng)絡及其它通訊工具設施對酒店業(yè)務信息進行及時有效管理的一個應用軟件。2.2系統(tǒng)功能簡介數(shù)字酒店管理系統(tǒng)分為前臺操作和后臺處理,以數(shù)據(jù)庫為核心。整個系統(tǒng)圍繞顧客就餐和住宿的業(yè)務流程而設計??傮w上,其功能貫穿2 條線:一條線貫穿著客戶注冊、查詢就餐計劃或住宿計劃信息、預定就餐訂單或住宿訂單信息、更改就餐或住宿訂單信息、取消預定的就餐或住宿訂單信息等;另一條線是對菜肴、餐桌、客房、客戶信息的維護,以及根據(jù)酒店就餐時間和餐桌的具體調度安排和住宿時間和客房的具體調度安排來制定就餐計劃和住宿計劃,并負責打印統(tǒng)計報表和相關的單據(jù)。該系統(tǒng)全面、正確、完整、及時地收集、加工、整理在整個就餐和住宿的業(yè)務流程中所發(fā)生的各類有關信息。第三章 開發(fā)平臺介紹3.1 J2EE平臺簡介本系統(tǒng)的開發(fā)平臺是J2EE。J2EE本身是一個開放的標準是美國Sun公司剛剛推出的一種全新概念的模型,與傳統(tǒng)的互聯(lián)網(wǎng)應用程序模型相比有著不可比擬的優(yōu)勢。 當今許多企業(yè)都需要擴展他們的業(yè)務范圍,降低自身經(jīng)營成本,縮短他們和客戶之間的響應時間,這就需要存在一種簡捷,快速的服務于企業(yè),合作伙伴和雇員之間。典型的說,提供這些服務的應用軟件必須同企業(yè)信息系統(tǒng)(EIS)相結合,并提供新的能向更為廣闊的用戶提供的服務。這些服務要具備以下的特點:a 高可用性:來滿足現(xiàn)在的全球商業(yè)環(huán)境b 安全性:保護用戶的隱私和企業(yè)數(shù)據(jù)的安全c 可依賴性和可擴展性:保證商業(yè)交易的正確和迅捷通常這些服務是由分布的應用程序組成的,包括前端數(shù)據(jù)端和后端數(shù)據(jù)源以及它們之間的一層或幾層,這些中間層提供了把商業(yè)功能和數(shù)據(jù)與EIS相結合的功能。這些中間層把客戶端從復雜的商業(yè)邏輯中分離出來,利用成熟的INTERNET技術使用戶在管理上所花費的時間最小化。 J2EE正式降低了開發(fā)這種中間層服務的成本和復雜程度,因而使得服務可以被快速的展開,并能夠更輕松的面對競爭中的壓力。J2EE通過定義一種標準的結構來實現(xiàn)它的優(yōu)勢,如下:a J2EE Application Programming Model -一種用于開發(fā)多層次,瘦型客戶用戶程序的標準設計模型b J2EE Platform-一個標準的平臺,用來整合J2EE的應用程序,指定一系列的接口和方法c J2EE Compatibility Test Suite-一套兼容測試組件,用來檢測產(chǎn)品是否同J2EE 平臺兼容d J2EE Reference Implementation-用來示范J2EE的能力第四章 開發(fā)工具介紹4.1 Eclipse(MyEclipse)介紹4.1.1 Eclipse簡介Eclipse是一款非常優(yōu)秀的開源IDE(Integrated Development Environment,集成開發(fā)環(huán)境),非常適合Java項目的開發(fā)。由于它支持插件開發(fā)技術,因而受到了很多開發(fā)者的歡迎。其中MyEclipse是Eclipse的一個優(yōu)秀插件,它是一個專業(yè)的軟件開發(fā)平臺,它為軟件開發(fā)提供了豐富的工具和系統(tǒng)的支持。MyEclipse是基于工業(yè)開發(fā)標準的Eclipse平臺來工作的,所以它提供了 對一系列軟件開發(fā)技術、組件以及應用開發(fā)環(huán)境的支持。其中包括J2EE,XML,UML,各種類型的數(shù)據(jù)庫以及各種應用服務器的支持。并且可以針對每種不同的應用環(huán)境提供對開發(fā)、部署、測試環(huán)節(jié)的優(yōu)化工作。 4.1.2 MyEclipse的功能和特點MyEclipse主要具有以下功能和特點:Java的專業(yè)開發(fā)工具。提供了JSP、JSF、Struts、JSTL、XML、XSD,Servlets,EJB的圖形化開發(fā)環(huán)境以及對各種應用服務器的部署和各種調試功能的支持。數(shù)據(jù)庫開發(fā)工具。提供了數(shù)據(jù)瀏覽、SQL編輯、數(shù)據(jù)修改、觸發(fā)器和存儲過程開發(fā)等一系列與數(shù)據(jù)庫相關的開發(fā)工具。輔助RAD開發(fā)工具。提供了包括類圖、序列圖、部署圖、狀態(tài)圖等各種UML圖形的支持。POJO開發(fā)工具。提供了對Spring,EJB,Hibernate,Web服務以及XDoclet的輔助開發(fā)。AJAX與Web 2.0的輔助開發(fā)工具。提供了包括對JavaScript編輯、CSS編輯、XML編輯、HTML編輯、JavaScript調試控制臺、DOM觀察器等一系列的輔助開發(fā)工具3。4.2 Apache-Tomcat-5.2.0介紹Tomcat 是Apache-Jarkarta的一個子項目,是一個免費的、開放源碼的、支持JSP和Servlet技術的容器,它同時又是一個Web服務軟件。Tomcat 很受廣大程序員的喜歡,因為它運行時占用的系統(tǒng)資源小,擴展性好,支持負載平衡與郵件服務等開發(fā)應用系統(tǒng)常用的功能。Tomcat是一個小型的輕量級應用服務器,在中、小型系統(tǒng)和并發(fā)訪問用戶不是很多的場合下被普遍使用,是開發(fā)和調試JSP程序的首選。對于一個初學者來說,可以說這樣認為,當一臺機器上配置好Apache服務器,可利用它響應對HTML頁面的訪問請求。實際上Tomcat部分是Apache服務器的擴展,但它是獨立運行的,所以當你運行Tomcat時,它實際作為一個與Apache獨立的進程單獨運行的4。4.3 MySQL數(shù)據(jù)庫介紹MySQL是一個小型關系型數(shù)據(jù)庫管理系統(tǒng),開發(fā)者為瑞典MySQL AB公司。目前MySQL被廣泛地應用在Internet上的中小型網(wǎng)站中。由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了MySQL作為網(wǎng)站數(shù)據(jù)庫。4.3.1 MySQL的特性1.使用C和C+編寫,并使用了多種編譯器進行測試,保證源代碼的可移植性 2.支持AIX、FreeBSD、HP-UX、Linux、Mac OS、Novell Netware、OpenBSD、OS/2 Wrap、Solaris、Windows等多種操作系統(tǒng) 3.為多種編程語言提供了API。這些編程語言包括C、C+、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl等。 4.支持多線程,充分利用CPU資源 5.優(yōu)化的SQL查詢算法,有效地提高查詢速度 6.既能夠作為一個單獨的應用程序應用在客戶端服務器網(wǎng)絡環(huán)境中,也能夠作為一個庫而嵌入到其他的軟件中提供多語言支持,常見的編碼如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作數(shù)據(jù)表名和數(shù)據(jù)列名7.提供TCP/IP、ODBC和JDBC等多種數(shù)據(jù)庫連接途徑 8.提供用于管理、檢查、優(yōu)化數(shù)據(jù)庫操作的管理工具 9.可以處理擁有上千萬條記錄的小型數(shù)據(jù)庫 4.3.2 MySQL的應用與其他的大型數(shù)據(jù)庫例如Oracle、DB2、SQL Server等相比,MySQL自有它的不足之處,如規(guī)模小、功能有限(MySQL不支持視圖(已經(jīng)被列入5.1版的開發(fā)計劃)、事件等)等,但是這絲毫也沒有減少它受歡迎的程度。對于一般的個人使用者和中小型企業(yè)來說,MySQL提供的功能已經(jīng)綽綽有余,而且由于MySQL是開放源碼軟件,因此可以大大降低總體擁有成本5。第五章 系統(tǒng)架構介紹5.1三層架構介紹5.1.1三層架構簡介目前開發(fā)人員對系統(tǒng)開發(fā)的一個共識是使用三層架構,分為表示層,業(yè)務層,和持久層。而這三層之間的依賴關系是:表示層 - 業(yè)務層 - 持久層。這表明了層與層之間的調用關系,表示層通過調用業(yè)務層來完成任務,而業(yè)務層則調用持久層。從另一個角度來看,一種依賴關系是:表示層 - 領域模型(Domain Model) - 持久層,即表示層和持久層都應該理解(recognize)領域模型。而領域模型則是業(yè)務層的一部分。業(yè)務層正是系統(tǒng)的價值所在。雖說表示和持久也很重要,在某些系統(tǒng)中可以說是很關鍵,但是它們的最終目的都是為業(yè)務服務,所以業(yè)務層應該是系統(tǒng)的核心。基于以上的認識,在系統(tǒng)設計的時應首先分析需求得到領域模型,找出系統(tǒng)中的實體、對象(靜態(tài)的一面),并明確大致的業(yè)務流程(動態(tài)的一面)。 而另兩層應盡最大努力為業(yè)務層服務,且盡量減少業(yè)務層受另兩層的限制。5.1.2各層職責表示層:負責顯示信息,及從系統(tǒng)外部得到輸入。表示層的設計決定系統(tǒng)界面的可用性,及信息輸入和展示的可靠性。表示層只知道如何展示信息,及收集用戶輸入,并不知道該如何對這些輸入進行處理來完成業(yè)務。業(yè)務層:完成業(yè)務邏輯。業(yè)務層設計決定客戶價值是否能夠得到實現(xiàn)。這是系統(tǒng)的關鍵。外在的表現(xiàn)是功能性。業(yè)務層設計和實現(xiàn)的失誤表現(xiàn)在用戶端即功能缺失,功能不可靠等。如果需要對業(yè)務層的業(yè)務規(guī)則進行解耦,則可以使用規(guī)則引擎如Drools,把業(yè)務規(guī)則分離出來。但分離后的業(yè)務規(guī)則仍屬于業(yè)務層。業(yè)務層知道如何對用戶輸入進行處理,能夠應用業(yè)務規(guī)則完成用戶所需的業(yè)務,但它不知道數(shù)據(jù)如何讀取和保存。 持久層:負責用戶信息的持久化。持久層的失誤表現(xiàn)在外即數(shù)據(jù)處理(儲存,展示等)不可靠。持久層完全不知道業(yè)務,只專注于數(shù)據(jù)存儲和讀取。所謂持久化并不一定是指數(shù)據(jù)庫,任何方式的持久化(通過文件,網(wǎng)絡的持久化等)都應由持久層完成。5.1.3實際應用介紹各層的設計都會直接影響系統(tǒng)性能,不同的系統(tǒng)中可能會有很大的不同。比如說GOOGLE的搜索引擎,它的界面很簡單,可以想像表示層是比較容易實現(xiàn)的,而它的業(yè)務層,關系到處理關鍵字,分析搜索結果,決定排名等,而持久層則要負責處理超大量的數(shù)據(jù)。業(yè)務層和持久層則相當復雜。而有的系統(tǒng)持久層會很小,比如殺毒軟件,媒體播放軟件等6。5.2 B/S架構介紹5.2.1 C/S與B/S架構比較C/S和B/S是當今世界開發(fā)模式技術架構的兩大主流技術。C/S是美國borland公司最早研發(fā),B/S是美國微軟公司研發(fā)。目前,這兩項技術以被世界各國所掌握,國內(nèi)公司以C/S和B/S技術開發(fā)出產(chǎn)品也很多。這兩種技術都有自己一定的市場份額和客戶群,各家企業(yè)都說自己的管理軟件架構技術功能強大、先進、方便,都能舉出各自的客戶群體,都有一大群文人墨客為自己搖旗吶喊,廣告滿天飛,可謂仁者見仁,智者見智。1.C/S架構軟件的優(yōu)勢與劣勢(1) 應用服務器運行數(shù)據(jù)負荷較輕。最簡單的C/S體系結構的數(shù)據(jù)庫應用由兩部分組成,即客戶應用程序和數(shù)據(jù)庫服務器程序。二者可分別稱為前臺程序與后臺程序。運行數(shù)據(jù)庫服務器程序的機器,也稱為應用服務器。一旦服務器程序被啟動,就隨時等待響應客戶程序發(fā)來的請求;客戶應用程序運行在用戶自己的電腦上,對應于數(shù)據(jù)庫服務器,可稱為客戶電腦,當需要對數(shù)據(jù)庫中的數(shù)據(jù)進行任何操作時,客戶程序就自動地尋找服務器程序,并向其發(fā)出請求,服務器程序根據(jù)預定的規(guī)則作出應答,送回結果,應用服務器運行數(shù)據(jù)負荷較輕。(2) 數(shù)據(jù)的儲存管理功能較為透明。在數(shù)據(jù)庫應用中,數(shù)據(jù)的儲存管理功能,是由服務器程序和客戶應用程序分別獨立進行的,前臺應用可以違反的規(guī)則,并且通常把那些不同的(不管是已知還是未知的)運行數(shù)據(jù),在服務器程序中不集中實現(xiàn),例如訪問者的權限,編號可以重復、必須有客戶才能建立定單這樣的規(guī)則。所有這些,對于工作在前臺程序上的最終用戶,是“透明”的,他們無須過問(通常也無法干涉)背后的過程,就可以完成自己的一切工作。在客戶服務器架構的應用中,前臺程序不是非?!笆菪 保闊┑氖虑槎冀唤o了服務器和網(wǎng)絡。在C/S體系的下,數(shù)據(jù)庫不能真正成為公共、專業(yè)化的倉庫,它受到獨立的專門管理。(3) C/S架構的劣勢是高昂的維護成本且投資大。首先,采用C/S架構,要選擇適當?shù)臄?shù)據(jù)庫平臺來實現(xiàn)數(shù)據(jù)庫數(shù)據(jù)的真正“統(tǒng)一”,使分布于兩地的數(shù)據(jù)同步完全交由數(shù)據(jù)庫系統(tǒng)去管理,但邏輯上兩地的操作者要直接訪問同一個數(shù)據(jù)庫才能有效實現(xiàn),有這樣一些問題,如果需要建立“實時”的數(shù)據(jù)同步,就必須在兩地間建立實時的通訊連接,保持兩地的數(shù)據(jù)庫服務器在線運行,網(wǎng)絡管理工作人員既要對服務器維護管理,又要對客戶端維護和管理,這需要高昂的投資和復雜的技術支持,維護成本很高,維護任務量大。其次,傳統(tǒng)的C/S結構的軟件需要針對不同的操作系統(tǒng)系統(tǒng)開發(fā)不同版本的軟件,由于產(chǎn)品的更新?lián)Q代十分快,代價高和低效率已經(jīng)不適應工作需要。在Java這樣的跨平臺語言出現(xiàn)之后,B/S架構更是猛烈沖擊C/S,并對其形成威脅和挑戰(zhàn)。2.B/S架構軟件的優(yōu)勢與劣勢(1) 維護和升級方式簡單。目前,軟件系統(tǒng)的改進和升級越來越頻繁,B/S架構的產(chǎn)品明顯體現(xiàn)著更為方便的特性。對一個稍微大一點單位來說,系統(tǒng)管理人員如果需要在幾百甚至上千部電腦之間來回奔跑,效率和工作量是可想而知的,但B/S架構的軟件只需要管理服務器就行了,所有的客戶端只是瀏覽器,根本不需要做任何的維護。無論用戶的規(guī)模有多大,有多少分支機構都不會增加任何維護升級的工作量,所有的操作只需要針對服務器進行;如果是異地,只需要把服務器連接專網(wǎng)即可,實現(xiàn)遠程維護、升級和共享。所以客戶機越來越“瘦”,而服務器越來越“胖”是將來信息化發(fā)展的主流方向。今后,軟件升級和維護會越來越容易,而使用起來會越來越簡單,這對用戶人力、物力、時間、費用的節(jié)省是顯而易見的,驚人的。因此,維護和升級革命的方式是“瘦”客戶機,“胖”服務器。(2) 成本降低,選擇更多。大家都知道Windows在桌面電腦上幾乎一統(tǒng)天下,瀏覽器成為了標準配置,但在服務器操作系統(tǒng)上Windows并不是處于絕對的統(tǒng)治地位。現(xiàn)在的趨勢是凡使用B/S架構的應用管理軟件,只需安裝在Linux服務器上即可,而且安全性高。所以服務器操作系統(tǒng)的選擇是很多的,不管選用那種操作系統(tǒng)都可以讓大部分人使用Windows作為桌面操作系統(tǒng)電腦不受影響,這就使的最流行免費的Linux操作系統(tǒng)快速發(fā)展起來,Linux除了操作系統(tǒng)是免費的以外,連數(shù)據(jù)庫也是免費的,這種選擇非常盛行。比如說很多人每天上“網(wǎng)易”網(wǎng),只要安裝了瀏覽器就可以了,并不需要了解“網(wǎng)易”的服務器用的是什么操作系統(tǒng),而事實上大部分網(wǎng)站確實沒有使用Windows操作系統(tǒng),但用戶的電腦本身安裝的大部分是Windows操作系統(tǒng)。(3) 應用服務器運行數(shù)據(jù)負荷較重。由于B/S架構管理軟件只安裝在服務器端(server)上,網(wǎng)絡管理人員只需要管理服務器就行了,用戶界面主要事務邏輯在服務器(server)端完全通過www瀏覽器實現(xiàn),極少部分事務邏輯在前端(browser)實現(xiàn),所有的客戶端只有瀏覽器,網(wǎng)絡管理人員只需要做硬件維護。但是,應用服務器運行數(shù)據(jù)負荷較重,一旦發(fā)生服務器“崩潰”等問題,后果不堪設想。因此,許多單位都備有數(shù)據(jù)庫存儲服務器,以防萬一7。5.2.2 B/S簡介基于B/S模式的網(wǎng)絡信息系統(tǒng),通常采用三層或更多層結構,即“客戶機瀏覽器-Web服務器-數(shù)據(jù)庫服務器”,如圖5-1。B/S結構以Web服務器為系統(tǒng)的中心,即用戶端通過瀏覽器向Web服務器提出查詢請求,Web服務器根據(jù)需要向數(shù)據(jù)庫服務器發(fā)出數(shù)據(jù)請求,數(shù)據(jù)庫則根據(jù)查詢或查詢條件返回相應的數(shù)據(jù)結果給Web服務器,最后Web服務器將結果翻譯成為HTML或各類腳本語言的格式,并傳送給客戶機上的瀏覽器,用戶通過瀏覽器即可瀏覽自己所需的結果8。Web服務器瀏覽器數(shù)據(jù)庫圖5-1 B/S模式圖第六章 課題目前在國內(nèi)外的研究及應用開發(fā)現(xiàn)狀6.1該課題在國內(nèi)外的研究動態(tài)6.1.1國外研究動態(tài)隨著全球經(jīng)濟一體化使酒店業(yè)客源更加豐富多樣化,市場更加廣闊多渠道的同時,酒店業(yè)更面臨著日趨激烈的競爭環(huán)境和不斷攀升的客戶期望,迫使業(yè)內(nèi)人士不斷進一步尋求改進服務質量、降低運營成本和提升客戶滿意度的新法寶來增強酒店的核心競爭力。其中最有效的手段之一就是大規(guī)模應用先進的信息化技術,變革傳統(tǒng)意義上的酒店業(yè)競爭方式和經(jīng)營管理模式以進而贏得新競爭優(yōu)勢,在這方面國際上領先的酒店業(yè)一直在不遺余力地探索、實施和推進。國際酒店業(yè)先進信息化應用的產(chǎn)生與發(fā)展大體上經(jīng)過了電算化階段、自動化階段、網(wǎng)絡化階段、集成化階段、協(xié)同化階段五階段。其中,網(wǎng)絡化階段指的是,以因特網(wǎng)(Internet)和數(shù)字化經(jīng)濟為主要特征的信息化沖擊,使網(wǎng)絡化建設也已成為酒店業(yè)整個信息化建設應用中的重要組成部分,于是以寬帶高速數(shù)據(jù)網(wǎng)絡為核心的“數(shù)字化酒店,(CyberH。tel)也應運而生?!皵?shù)字化酒店”其含義不僅僅是酒店有寬帶接入線路,方便客人在酒店內(nèi)高速上網(wǎng),還包含以下內(nèi)容:在網(wǎng)上創(chuàng)建公司網(wǎng)站可供客戶瀏覽,進行互動式的數(shù)據(jù)查詢和客戶自助服務功能,有市場銷售、宣傳推廣、訂房管理的功能;以因特網(wǎng)為基礎,方便員工的移動辦公系統(tǒng)和面向社會的電子商務系統(tǒng)雛形。在這一階段的應用重點是網(wǎng)絡營銷和網(wǎng)上適時訂房業(yè)務,正所謂“網(wǎng)絡點擊,無限商機”,酒店通過網(wǎng)絡宣傳企業(yè)形象和服務,開展網(wǎng)上預訂客房,讓客人了解酒店設施,選擇所需要的服務進行遠程預訂。而酒店與顧客通過網(wǎng)上互動式交流,為顧客提供更為個性化的服務,這比打價格戰(zhàn)要高明得多。客人無論身處何處,上網(wǎng)就可以選擇自己中意的酒店。高速互聯(lián)網(wǎng)接入將是未來酒店基本的設施,“明日”的酒店將要以寬帶網(wǎng)絡化為特色。協(xié)同化階段指進入互聯(lián)網(wǎng)新經(jīng)濟時代,酒店業(yè)信息化的新追求境界是在集成化基礎上的協(xié)同化應用,酒店通過互聯(lián)網(wǎng)搭建統(tǒng)一的信息應用平臺將客戶、酒店、員工、供應商、合作伙伴等各方聯(lián)為一個整體以實現(xiàn)縱覽全局的跨行業(yè)、跨組織、跨地區(qū),實時在線的、端對端數(shù)據(jù)無縫交換的業(yè)務協(xié)同運作,其重點在于各方聯(lián)為一體直接面向顧客提供個性化服務??v觀國外酒店業(yè)信息化發(fā)展軌跡和趨勢,我們不難看出,隨著酒店業(yè)競爭的加劇,酒店之間客源的爭奪越來越激烈,客房銷售的利潤空間越來越小,酒店需要使用更有效的信息化手段,拓展經(jīng)營空間,降低運營成本,提高管理和決策效率。高層次的酒店業(yè)信息化不再是僅僅追求計算機輔助管理,而是追求建立在集成化基礎上的協(xié)同化應用。6.1.2國內(nèi)研究動態(tài)中國酒店業(yè)利用計算機管理系統(tǒng)來加強管理、提高服務水平,雖然至今己有了20多年的歷史,但起步發(fā)展較晚,只是一些淺層次應用,與國際酒店業(yè)先進信息化應用的差距非常突出。提高星級酒店的服務質量,開發(fā)酒店管理系統(tǒng)提高酒店管理的效率勢在必行。6.2該課題的應用開發(fā)現(xiàn)狀相對于國外的酒店管理系統(tǒng)國內(nèi)酒店IT技術開發(fā)的現(xiàn)狀是:1、需求不明確,使酒店項目工程性強,產(chǎn)品化不足,開發(fā)商的總體成本居高不下,研發(fā)缺乏原動力。2、沒有行業(yè)統(tǒng)一標準,廠商各自為政,市場分化導致產(chǎn)品整合難度大。3、產(chǎn)品推廣依賴行政手段和關系網(wǎng),抑制了新技術的引進和技術的創(chuàng)新,不利于形成自己的產(chǎn)品特色和質量控制。第七章 需求分析7.1 系統(tǒng)總體結構圖圖7-1 系統(tǒng)總體結構圖NM7.2 系統(tǒng)業(yè)務模型圖客 戶預訂客房訂單訂房圖7-2 系統(tǒng)業(yè)務模型圖1圖7-3系統(tǒng)業(yè)務模型圖2客 戶預訂餐飲訂單訂餐MN7.3 系統(tǒng)用例圖圖7.4 Admin用例圖圖7-5 agent用例圖7.4系統(tǒng)業(yè)務流程圖7.4.1餐飲前臺業(yè)務辦理和后臺管理流程圖圖7-6餐飲前臺業(yè)務辦理和后臺管理流程圖7.4.2住宿前臺業(yè)務辦理和后臺管理流程圖圖7-7住宿前臺業(yè)務辦理和后臺管理流程圖第八章 數(shù)據(jù)庫設計8.1概念設計將需求分析得到的用戶需求抽象為信息結構即概念模型的過程就是概念結構設計。它是整個數(shù)據(jù)庫設計的關鍵。在需求分析階段所得到的應用需求應該首先抽象為信息世界的結構,才能更好地,更準確地用某一DBMS實現(xiàn)這些需求。概念結構是各種數(shù)據(jù)模型的共同基礎,它比數(shù)據(jù)模型更獨立于機器,更抽象,從而更加穩(wěn)定。描述概念模型的有力工具是E-R模型。所謂E-R模型就是實體-聯(lián)系方法。E-R圖提供了表示實體、實體的屬性和實體之間的聯(lián)系的方法。實體型:用矩形表示,矩形框內(nèi)寫明實體名屬性:用橢圓型表示,并用無向邊與其相應實體連接起來聯(lián)系:用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用無向邊與其有關實體連接起來,同時在邊旁邊標上聯(lián)系的類型(1:1,1:n或m:n)9。對象類型的組成成份可以抽象為實體的屬性。組成成份與對象之間是“is part of”的關系。實際上實體與屬性是相對而言的,很難有截然劃分的界限。同一事物,在一種應用環(huán)境中作為“屬性”,在另一種環(huán)境中就必須作為“實體”。一般來說,在給定的應用環(huán)境中,屬性不能再具有需要描述的性質。即屬性必須是不可分的數(shù)據(jù)項,不能再由另一些屬性組成。屬性不能與其它實體具有聯(lián)系。聯(lián)系只發(fā)生在實體之間。由此,下面將酒店管理系統(tǒng)所涉及的E-R圖表示出來:1.顧客實體E-R圖圖8-1顧客實體E-R圖顧 客姓名名 稱密 碼聯(lián)系方式Email顧客id2.管理員實體E-R圖圖8-2 管理員實體E-R圖管理員用戶名密碼管理員id3.就餐實體E-R圖就餐費用就餐訂單號日 期顧客編號折 扣就餐id圖8-3就餐實體E-R圖4.就餐計劃實體E-R圖就餐計劃id就餐計劃菜肴菜肴數(shù)量餐桌編號總價格圖8-4 就餐計劃實體E-R圖編 號5.菜肴實體E-R圖菜 肴單 價類型編號名 稱描 述菜肴id圖8-5菜肴實體E-R圖6.菜肴類型實體E-R圖菜肴類型id菜肴類型類型名稱保質期圖8-6 菜肴類型實體E-R圖7.餐桌實體E-R圖餐 桌編 號名 稱位 置類型編號餐桌id圖8-7餐桌實體E-R圖8.餐桌類型實體E-R圖餐桌類型編 號名 稱座位數(shù)目類型id圖8-8餐桌類型實體E-R圖9.住宿實體E-R圖客房編號住宿入住日期顧客編號折 扣費用住宿id圖8-9住宿實體E-R圖10.住宿計劃實體E-R圖住宿計劃編 號客房編號房間個數(shù)住宿計劃id總價格住宿編號圖8-10 住宿計劃實體E-R圖11.客房實體E-R圖客房id客 房人數(shù)單 價類型編號名 稱描 述圖8-11客房實體E-R圖12.客房類型實體E-R圖客房類型類型名稱描 述 客房類型id圖8-12 客房類型實體E-R圖13實體間的E-R圖顧 客預 訂就餐信息菜肴名稱就餐日期菜肴數(shù)量就餐計劃信息菜肴信息nnn1包含1包含1圖8-13 實體關系圖1顧 客預 訂住宿信息客房名稱房間數(shù)量住宿日期住宿計劃信息客房信息n1n1包含n包含1圖8-14實體關系圖28.2邏輯設計8.2.1數(shù)據(jù)庫表匯總 表8-1 數(shù)據(jù)庫表匯總8.2.2具體表結構表8-2菜肴表序號字段名稱字段類型說明備注1idInteger菜肴編號Primary key2nameVarchar菜肴名稱3priceDouble菜肴價格4descriptionVarchar菜肴描述5cuisineType_idInteger菜肴類型外碼表8-3菜肴類型表序號字段名稱字段類型說明備注1idinteger類型編號Primary key2namevarchar類型名稱3lifevarchar保質期表8-4顧客表序號字段名稱字段類型說明備注1idinteger顧客編號Primary key2usernamevarchar用戶名3passwordvarchar密碼4namevarchar姓名5phonevarchar電話6emailvarchar郵件表8-5就餐表序號字段名稱字段類型說明備注1idinteger序號Primary key2novarchar訂單編號3personNumvarchar就餐人數(shù)4datedate就餐日期5customer_idinteger顧客編號外碼表8-6就餐計劃表序號字段名稱字段類型說明備注1idinteger序號Primary key2novarchar編號3numinteger菜肴數(shù)量4totalPricedouble總價格5cuisine_idinteger菜肴編號外碼16eating_idinteger就餐序號外碼27tables_idinteger餐桌序號外碼3表8-7餐桌表序號字段名稱字段類型說明備注1idinteger序號Primary key2novarchar餐桌編號3namevarchar名稱4addressvarchar位置5tablesType_idinteger餐桌類型序號外碼表8-8餐桌類型表序號字段名稱字段類型說明備注1idinteger序號Primary key2novarchar類型編號3namevarchar類型名稱4sizeinteger座位數(shù)目表8-9管理員表序號字段名稱字段類型說明備注1idinteger序號Primary key2usernamevarchar用戶名3passwordvarchar密碼表8-10客房表序號字段名稱字段類型說明備注1idinteger序號Primary key2namevarchar客房名稱3personNuminteger人數(shù)4pricedouble單價5descriptionvarchar描述6roomType_idinteger房間類型序號外碼表8-11客房類型表序號字段名稱字段類型說明備注1idinteger序號Primary key2novarchar類型編號3descriptionvarchar描述4sizeinteger座位數(shù)目表8-12住宿表序號字段名稱字段類型說明備注1idinteger序號Primary key2novarchar客房編號3lessdouble折扣外碼14dateDate入住時間5costdouble費用6customer_idinteger顧客編號外碼2表8-13住宿計劃表序號字段名稱字段類型說明備注1idinteger序號Primary key2novarchar客房編號3numinteger房間個數(shù)4totalPricedouble總價格5room_idinteger房間序號外碼16lodging_idinteger住宿序號外碼2第九章 系統(tǒng)的關鍵技術以及要點介紹首先,本系統(tǒng)分為三層,每層的技術選型分別為:表示層:Struts業(yè)務層:POJO持久層:Hibernate即所謂的目前最流行的Web應用開發(fā)框架Struts+POJO+Hibernate技術,其中涉及到的技術有JSP,開發(fā)語言則目前最流行的應用程序開發(fā)語言面向對象編程語言Java。下面將分別對這些技術進行相應的介紹。本設計采用的是目前最為流行的動態(tài)網(wǎng)站開發(fā)技術JSP,下面對該技術進行介紹,并將其與其他網(wǎng)頁開發(fā)技術進行比較以闡述采用該技術的原因。9.1 JSP簡介9.1.1 JSP簡介JSP(Java Server Page)是由于Sun Microsystems公司倡導、許多公司參與建立的以種動態(tài)網(wǎng)頁技術標準。該技術為創(chuàng)建顯示動態(tài)生成內(nèi)容的Web頁面提供了一個簡捷而快捷的方法。在目前流行的3P技術中(3P技術分別是:ASP,Active Server Page;PHP,Personal HomePage;JSP,Java Server Page),JSP已經(jīng)逐漸成為Internet上的主流開發(fā)工具。JSP是基于Java Servlet以及整個Java體系的Web開發(fā)技術,具有動態(tài)頁面與靜態(tài)頁面分離、能夠脫離硬件平臺束縛、“一次編寫,各處運行”等優(yōu)點。利用這一技術可以建立安全、跨平臺的先進動態(tài)網(wǎng)站。9.1.2 JSP的特點JSP主要有如下5個方面的特點:1.內(nèi)容的生成和顯示相分離使用JSP技術,Web頁面開發(fā)人員可以使用HTML或者XML來設計和格式化最終頁面,使用JSP標簽或者腳本生成頁面的動態(tài)內(nèi)容。生成內(nèi)容的邏輯被封裝在標簽和JavaBean組件中,并且捆綁在腳本中,所有的腳本在服務器端運行。如果核心邏輯被封裝在標簽和JavaBean組件中,那么其他人員,如頁面設計者或是Web管理人員,就能夠編輯和使用JSP頁面而不影響內(nèi)容生成。在服務器端,JSP引擎解釋JSP標簽和腳本,生成所請求的內(nèi)容,并且將結果以HTML或XML頁面的形式發(fā)送回瀏覽器。這有助于作者保護自己的代碼,并且保證了任何基于HTML的Web的瀏覽器的完全可用性。2.可移植性JSP的重要特點之一就是它由Java語言構建,是Java應用程序的一種。Java技術最鮮明的特點之一就是工作平臺具有獨立性。如果學習過Java語言,就一定聽說過“Write Once,Run Anywhere”這句名言。與之相同,JSP也不必考慮在Web服務器環(huán)境的操作系統(tǒng)相關性。不管JSP在何種平臺中編寫,只要服務器中有JSP C

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論