




已閱讀5頁(yè),還剩58頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
基于B/S結(jié)構(gòu)的數(shù)字酒店管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)中文摘要數(shù)字酒店管理系統(tǒng)是一個(gè)由人、計(jì)算機(jī)和數(shù)據(jù)庫(kù)組成的進(jìn)行酒店經(jīng)營(yíng)管理的系統(tǒng),通過(guò)對(duì)信息的收集、傳遞、整理、加工、維護(hù)和使用,提高管理水平和效率,從而實(shí)現(xiàn)酒店管理的自動(dòng)化、規(guī)范化和人性化。本系統(tǒng)采用流行的Web應(yīng)用開(kāi)發(fā)框架Struts+POJO+Hibernate來(lái)實(shí)現(xiàn);數(shù)據(jù)庫(kù)的設(shè)計(jì)上,采用MySQL來(lái)支持各種信息,保障數(shù)據(jù)安全。使用Eclipse(MyEclipse)、Apache-Tomcat-5.2.0開(kāi)發(fā)工具開(kāi)發(fā)。本系統(tǒng)包括了前臺(tái)功能:用戶注冊(cè)、用戶登錄、顧客訂餐、菜單信息查詢、顧客訂房,客房信息查詢以及客戶付款;后臺(tái)功能:用戶管理,菜肴信息維護(hù),客房信息維護(hù),就餐計(jì)劃管理,就餐管理,住宿計(jì)劃管理,住宿管理等。本文簡(jiǎn)要介紹了基于MySQL數(shù)據(jù)庫(kù)系統(tǒng)和采用Java程序語(yǔ)言開(kāi)發(fā)的基于B/S結(jié)構(gòu)的酒店管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn),著重闡述了該系統(tǒng)開(kāi)發(fā)實(shí)現(xiàn)過(guò)程,從系統(tǒng)采用的開(kāi)發(fā)工具,開(kāi)發(fā)平臺(tái)以及架構(gòu)介紹到方案論證、系統(tǒng)功能介紹和開(kāi)發(fā)過(guò)程對(duì)遇到問(wèn)題的分析和解決等各個(gè)環(huán)節(jié)都進(jìn)行了較為詳盡的分析和描述。關(guān)鍵詞: 酒店管理信息系統(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第三章 開(kāi)發(fā)平臺(tái)介紹4第四章 開(kāi)發(fā)工具介紹54.1 Eclipse(MyEclipse)介紹54.1.1 Eclipse簡(jiǎn)介54.1.2 MyEclipse的功能和特點(diǎn)54.2 Apache-Tomcat-5.2.0介紹64.3 MySQL數(shù)據(jù)庫(kù)介紹64.3.1 MySQL的特性64.3.2 MySQL的應(yīng)用7第五章 系統(tǒng)架構(gòu)介紹85.1三層架構(gòu)介紹85.1.1三層架構(gòu)簡(jiǎn)介85.1.2各層職責(zé)85.1.3實(shí)際應(yīng)用介紹95.2 B/S架構(gòu)介紹95.2.1 C/S與B/S架構(gòu)比較95.2.2 B/S簡(jiǎn)介11第六章 課題目前在國(guó)內(nèi)外的研究及應(yīng)用開(kāi)發(fā)現(xiàn)狀126.1該課題在國(guó)內(nèi)外的研究動(dòng)態(tài)126.1.1國(guó)外研究動(dòng)態(tài):126.1.2國(guó)內(nèi)研究動(dòng)態(tài)136.2該課題的應(yīng)用開(kāi)發(fā)現(xiàn)狀13第七章 需求分析147.1 系統(tǒng)總體結(jié)構(gòu)圖147.2 系統(tǒng)業(yè)務(wù)模型圖147.3 系統(tǒng)用例圖157.4系統(tǒng)業(yè)務(wù)流程圖167.4.1餐飲前臺(tái)業(yè)務(wù)辦理和后臺(tái)管理流程圖167.4.2住宿前臺(tái)業(yè)務(wù)辦理和后臺(tái)管理流程圖17第八章 數(shù)據(jù)庫(kù)設(shè)計(jì)188.1概念設(shè)計(jì)188.2邏輯設(shè)計(jì)258.2.1數(shù)據(jù)庫(kù)表匯總258.2.2具體表結(jié)構(gòu)26第九章 系統(tǒng)的關(guān)鍵技術(shù)以及要點(diǎn)介紹299.1 JSP簡(jiǎn)介299.1.1 JSP簡(jiǎn)介299.1.2 JSP的特點(diǎn)299.2 Struts框架319.2.1采用該框架的背景及原因319.2.2 MVC設(shè)計(jì)模式概述319.2.3 Struts框架介紹329.3 POJO(JavaBean)介紹339.3.1 POJO概述339.3.2 JavaBean使用規(guī)范349.3.3 JavaBean的特點(diǎn)349.4 Hibernate O/R Mapping359.4.1 持久化和持久層的定義359.4.2 Hibernate介紹359.4.3 Hibernate的體系結(jié)構(gòu)35第十章 系統(tǒng)功能介紹3810.1 功能模塊分析3810.2 各功能模塊說(shuō)明3810.2.1 前臺(tái)功能介紹3810.2.2 后臺(tái)功能介紹40第十一章 開(kāi)發(fā)中解決的主要技術(shù)難題4711.1 表示層出現(xiàn)的技術(shù)難題4711.1.1對(duì)用戶信息的獲取4711.1.2頁(yè)面亂碼的處理4811.2 業(yè)務(wù)層出現(xiàn)的技術(shù)難題4911.2.1事務(wù)的提交5011.2.2 Session線程安全5011.3持久層出現(xiàn)的技術(shù)難題5211.3.1 在Hibernate的映射文件中對(duì)于cascade屬性的設(shè)置5211.3.2 在Hibernate的映射文件中對(duì)于inverse屬性的設(shè)置53第十二章 開(kāi)發(fā)的心得體會(huì)與收獲55參考文獻(xiàn)57致謝5858第一章 前言1.1課題的來(lái)源近年來(lái),隨著改革開(kāi)放步伐的加快和中西方文化的交流與發(fā)展,我國(guó)人民生活水平顯著提高,全社會(huì)對(duì)餐飲業(yè)的需求量也越來(lái)越大,伴隨著消費(fèi)的持續(xù)增長(zhǎng),酒店行業(yè)已經(jīng)成為現(xiàn)代社會(huì)中發(fā)展最快的行業(yè)之一。要想在激烈的市場(chǎng)競(jìng)爭(zhēng)中生存,就必須在經(jīng)營(yíng)管理、餐飲服務(wù)等方面提高管理意識(shí)。而對(duì)酒店的經(jīng)營(yíng)狀況起決定作用的是對(duì)酒店日常營(yíng)業(yè)的管理,所以應(yīng)勢(shì)而出的酒店管理系統(tǒng)有著很好的可行應(yīng)用性。傳統(tǒng)的酒店系統(tǒng)大都使用C/S(Client/ Server) 模式的計(jì)算機(jī)信息管理系統(tǒng),這種C/ S 模式在20 世紀(jì)90 年代分布式處理中起到主流系統(tǒng)的作用,它有著自身的一些優(yōu)點(diǎn),如通過(guò)在客戶和服務(wù)之間劃分各自所包含的層次,提高了應(yīng)用的計(jì)算效率,緩解終端/ 主機(jī)模式中主機(jī)繁重的負(fù)擔(dān),在終端/ 主機(jī)模式和文件服務(wù)器模式中找到平衡等;然而隨著酒店規(guī)模的日益擴(kuò)大,應(yīng)用程序的復(fù)雜程度不斷提高,傳統(tǒng)的C/ S 模式逐漸暴露出許多問(wèn)題,如系統(tǒng)的可移植性、可擴(kuò)展性、可維護(hù)性都很差等,同時(shí),隨著Internet 迅速普及以及中國(guó)加入WTO ,酒店管理也面臨著許多新的挑戰(zhàn)和機(jī)遇,如提供遠(yuǎn)程客房預(yù)定、餐飲預(yù)定、網(wǎng)上信息發(fā)布等等。因此,酒店迫切需要開(kāi)發(fā)出基于B/ S(Browser/ Server) 模式的酒店管理系統(tǒng),以適應(yīng)當(dāng)前酒店行業(yè)的發(fā)展,提供更好的服務(wù)和提高酒店的經(jīng)濟(jì)效益1。1.2課題采用的技術(shù)因此,針對(duì)上述情況,我開(kāi)發(fā)了一個(gè)基于B/S結(jié)構(gòu)的數(shù)字酒店管理系統(tǒng)。它采用表示層、業(yè)務(wù)層,持久層三層架構(gòu),采用B/S結(jié)構(gòu)以及三層架構(gòu)的好處主要是:基于B/S結(jié)構(gòu)的系統(tǒng)使得客戶端無(wú)專用程序,應(yīng)用程序全部集中在應(yīng)用服務(wù)器,這更便于應(yīng)用程序的維護(hù)管理,降低用戶應(yīng)用成本。軟件的系統(tǒng)升級(jí)和功能改進(jìn)變得更加容易,當(dāng)程序和系統(tǒng)需要更改時(shí),只需要在Web Application Server Tier上修改程序的界面和系統(tǒng)的業(yè)務(wù)邏輯,減少了系統(tǒng)維護(hù)和修改的工作量,特別適合互聯(lián)網(wǎng)時(shí)代的應(yīng)用需要。再者,對(duì)于業(yè)務(wù)邏輯比較復(fù)雜的系統(tǒng),分層處理會(huì)更加方便和清晰,并且測(cè)試就比較容易,思路也清晰,可以減少模塊之間的耦合性,最后本系統(tǒng)使用Java面向?qū)ο髮W(xué)編程語(yǔ)言開(kāi)發(fā),可以解決跨平臺(tái)的問(wèn)題,并且提高系統(tǒng)的安全性。1.3課題達(dá)到的目標(biāo)本次設(shè)計(jì)的數(shù)字酒店管理系統(tǒng)分為前臺(tái)操作和后臺(tái)處理,以數(shù)據(jù)庫(kù)為核心。整個(gè)系統(tǒng)圍繞顧客就餐和住宿的業(yè)務(wù)流程而設(shè)計(jì)。該系統(tǒng)全面、正確、完整、及時(shí)地收集、加工、整理在整個(gè)就餐和住宿的業(yè)務(wù)流程中所發(fā)生的各類有關(guān)信息,具有檢索迅速、查找方便、可靠性高、存儲(chǔ)量大、保密性好、壽命長(zhǎng)、成本低等優(yōu)點(diǎn)。這些優(yōu)點(diǎn)能夠極大地提高賓館管理的效率,也是賓館的科學(xué)化、正規(guī)化管理,與世界接軌的重要條件。第二章 系統(tǒng)概述2.1系統(tǒng)簡(jiǎn)介本文的數(shù)字酒店管理系統(tǒng)是一套比較復(fù)雜的軟件,它是依據(jù)大中型酒店和賓館的營(yíng)業(yè)點(diǎn),結(jié)合計(jì)算機(jī)信息管理的特點(diǎn),利用計(jì)算機(jī)網(wǎng)絡(luò)及其它通訊工具設(shè)施對(duì)酒店業(yè)務(wù)信息進(jìn)行及時(shí)有效管理的一個(gè)應(yīng)用軟件。2.2系統(tǒng)功能簡(jiǎn)介數(shù)字酒店管理系統(tǒng)分為前臺(tái)操作和后臺(tái)處理,以數(shù)據(jù)庫(kù)為核心。整個(gè)系統(tǒng)圍繞顧客就餐和住宿的業(yè)務(wù)流程而設(shè)計(jì)??傮w上,其功能貫穿2 條線:一條線貫穿著客戶注冊(cè)、查詢就餐計(jì)劃或住宿計(jì)劃信息、預(yù)定就餐訂單或住宿訂單信息、更改就餐或住宿訂單信息、取消預(yù)定的就餐或住宿訂單信息等;另一條線是對(duì)菜肴、餐桌、客房、客戶信息的維護(hù),以及根據(jù)酒店就餐時(shí)間和餐桌的具體調(diào)度安排和住宿時(shí)間和客房的具體調(diào)度安排來(lái)制定就餐計(jì)劃和住宿計(jì)劃,并負(fù)責(zé)打印統(tǒng)計(jì)報(bào)表和相關(guān)的單據(jù)。該系統(tǒng)全面、正確、完整、及時(shí)地收集、加工、整理在整個(gè)就餐和住宿的業(yè)務(wù)流程中所發(fā)生的各類有關(guān)信息。第三章 開(kāi)發(fā)平臺(tái)介紹3.1 J2EE平臺(tái)簡(jiǎn)介本系統(tǒng)的開(kāi)發(fā)平臺(tái)是J2EE。J2EE本身是一個(gè)開(kāi)放的標(biāo)準(zhǔn)是美國(guó)Sun公司剛剛推出的一種全新概念的模型,與傳統(tǒng)的互聯(lián)網(wǎng)應(yīng)用程序模型相比有著不可比擬的優(yōu)勢(shì)。 當(dāng)今許多企業(yè)都需要擴(kuò)展他們的業(yè)務(wù)范圍,降低自身經(jīng)營(yíng)成本,縮短他們和客戶之間的響應(yīng)時(shí)間,這就需要存在一種簡(jiǎn)捷,快速的服務(wù)于企業(yè),合作伙伴和雇員之間。典型的說(shuō),提供這些服務(wù)的應(yīng)用軟件必須同企業(yè)信息系統(tǒng)(EIS)相結(jié)合,并提供新的能向更為廣闊的用戶提供的服務(wù)。這些服務(wù)要具備以下的特點(diǎn):a 高可用性:來(lái)滿足現(xiàn)在的全球商業(yè)環(huán)境b 安全性:保護(hù)用戶的隱私和企業(yè)數(shù)據(jù)的安全c 可依賴性和可擴(kuò)展性:保證商業(yè)交易的正確和迅捷通常這些服務(wù)是由分布的應(yīng)用程序組成的,包括前端數(shù)據(jù)端和后端數(shù)據(jù)源以及它們之間的一層或幾層,這些中間層提供了把商業(yè)功能和數(shù)據(jù)與EIS相結(jié)合的功能。這些中間層把客戶端從復(fù)雜的商業(yè)邏輯中分離出來(lái),利用成熟的INTERNET技術(shù)使用戶在管理上所花費(fèi)的時(shí)間最小化。 J2EE正式降低了開(kāi)發(fā)這種中間層服務(wù)的成本和復(fù)雜程度,因而使得服務(wù)可以被快速的展開(kāi),并能夠更輕松的面對(duì)競(jìng)爭(zhēng)中的壓力。J2EE通過(guò)定義一種標(biāo)準(zhǔn)的結(jié)構(gòu)來(lái)實(shí)現(xiàn)它的優(yōu)勢(shì),如下:a J2EE Application Programming Model -一種用于開(kāi)發(fā)多層次,瘦型客戶用戶程序的標(biāo)準(zhǔn)設(shè)計(jì)模型b J2EE Platform-一個(gè)標(biāo)準(zhǔn)的平臺(tái),用來(lái)整合J2EE的應(yīng)用程序,指定一系列的接口和方法c J2EE Compatibility Test Suite-一套兼容測(cè)試組件,用來(lái)檢測(cè)產(chǎn)品是否同J2EE 平臺(tái)兼容d J2EE Reference Implementation-用來(lái)示范J2EE的能力第四章 開(kāi)發(fā)工具介紹4.1 Eclipse(MyEclipse)介紹4.1.1 Eclipse簡(jiǎn)介Eclipse是一款非常優(yōu)秀的開(kāi)源IDE(Integrated Development Environment,集成開(kāi)發(fā)環(huán)境),非常適合Java項(xiàng)目的開(kāi)發(fā)。由于它支持插件開(kāi)發(fā)技術(shù),因而受到了很多開(kāi)發(fā)者的歡迎。其中MyEclipse是Eclipse的一個(gè)優(yōu)秀插件,它是一個(gè)專業(yè)的軟件開(kāi)發(fā)平臺(tái),它為軟件開(kāi)發(fā)提供了豐富的工具和系統(tǒng)的支持。MyEclipse是基于工業(yè)開(kāi)發(fā)標(biāo)準(zhǔn)的Eclipse平臺(tái)來(lái)工作的,所以它提供了 對(duì)一系列軟件開(kāi)發(fā)技術(shù)、組件以及應(yīng)用開(kāi)發(fā)環(huán)境的支持。其中包括J2EE,XML,UML,各種類型的數(shù)據(jù)庫(kù)以及各種應(yīng)用服務(wù)器的支持。并且可以針對(duì)每種不同的應(yīng)用環(huán)境提供對(duì)開(kāi)發(fā)、部署、測(cè)試環(huán)節(jié)的優(yōu)化工作。 4.1.2 MyEclipse的功能和特點(diǎn)MyEclipse主要具有以下功能和特點(diǎn):Java的專業(yè)開(kāi)發(fā)工具。提供了JSP、JSF、Struts、JSTL、XML、XSD,Servlets,EJB的圖形化開(kāi)發(fā)環(huán)境以及對(duì)各種應(yīng)用服務(wù)器的部署和各種調(diào)試功能的支持。數(shù)據(jù)庫(kù)開(kāi)發(fā)工具。提供了數(shù)據(jù)瀏覽、SQL編輯、數(shù)據(jù)修改、觸發(fā)器和存儲(chǔ)過(guò)程開(kāi)發(fā)等一系列與數(shù)據(jù)庫(kù)相關(guān)的開(kāi)發(fā)工具。輔助RAD開(kāi)發(fā)工具。提供了包括類圖、序列圖、部署圖、狀態(tài)圖等各種UML圖形的支持。POJO開(kāi)發(fā)工具。提供了對(duì)Spring,EJB,Hibernate,Web服務(wù)以及XDoclet的輔助開(kāi)發(fā)。AJAX與Web 2.0的輔助開(kāi)發(fā)工具。提供了包括對(duì)JavaScript編輯、CSS編輯、XML編輯、HTML編輯、JavaScript調(diào)試控制臺(tái)、DOM觀察器等一系列的輔助開(kāi)發(fā)工具3。4.2 Apache-Tomcat-5.2.0介紹Tomcat 是Apache-Jarkarta的一個(gè)子項(xiàng)目,是一個(gè)免費(fèi)的、開(kāi)放源碼的、支持JSP和Servlet技術(shù)的容器,它同時(shí)又是一個(gè)Web服務(wù)軟件。Tomcat 很受廣大程序員的喜歡,因?yàn)樗\(yùn)行時(shí)占用的系統(tǒng)資源小,擴(kuò)展性好,支持負(fù)載平衡與郵件服務(wù)等開(kāi)發(fā)應(yīng)用系統(tǒng)常用的功能。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ō),可以說(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í)際作為一個(gè)與Apache獨(dú)立的進(jìn)程單獨(dú)運(yùn)行的4。4.3 MySQL數(shù)據(jù)庫(kù)介紹MySQL是一個(gè)小型關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),開(kāi)發(fā)者為瑞典MySQL AB公司。目前MySQL被廣泛地應(yīng)用在Internet上的中小型網(wǎng)站中。由于其體積小、速度快、總體擁有成本低,尤其是開(kāi)放源碼這一特點(diǎn),許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了MySQL作為網(wǎng)站數(shù)據(jù)庫(kù)。4.3.1 MySQL的特性1.使用C和C+編寫,并使用了多種編譯器進(jìn)行測(cè)試,保證源代碼的可移植性 2.支持AIX、FreeBSD、HP-UX、Linux、Mac OS、Novell Netware、OpenBSD、OS/2 Wrap、Solaris、Windows等多種操作系統(tǒng) 3.為多種編程語(yǔ)言提供了API。這些編程語(yǔ)言包括C、C+、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl等。 4.支持多線程,充分利用CPU資源 5.優(yōu)化的SQL查詢算法,有效地提高查詢速度 6.既能夠作為一個(gè)單獨(dú)的應(yīng)用程序應(yīng)用在客戶端服務(wù)器網(wǎng)絡(luò)環(huán)境中,也能夠作為一個(gè)庫(kù)而嵌入到其他的軟件中提供多語(yǔ)言支持,常見(jiàn)的編碼如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作數(shù)據(jù)表名和數(shù)據(jù)列名7.提供TCP/IP、ODBC和JDBC等多種數(shù)據(jù)庫(kù)連接途徑 8.提供用于管理、檢查、優(yōu)化數(shù)據(jù)庫(kù)操作的管理工具 9.可以處理?yè)碛猩锨f(wàn)條記錄的小型數(shù)據(jù)庫(kù) 4.3.2 MySQL的應(yīng)用與其他的大型數(shù)據(jù)庫(kù)例如Oracle、DB2、SQL Server等相比,MySQL自有它的不足之處,如規(guī)模小、功能有限(MySQL不支持視圖(已經(jīng)被列入5.1版的開(kāi)發(fā)計(jì)劃)、事件等)等,但是這絲毫也沒(méi)有減少它受歡迎的程度。對(duì)于一般的個(gè)人使用者和中小型企業(yè)來(lái)說(shuō),MySQL提供的功能已經(jīng)綽綽有余,而且由于MySQL是開(kāi)放源碼軟件,因此可以大大降低總體擁有成本5。第五章 系統(tǒng)架構(gòu)介紹5.1三層架構(gòu)介紹5.1.1三層架構(gòu)簡(jiǎn)介目前開(kāi)發(fā)人員對(duì)系統(tǒng)開(kāi)發(fā)的一個(gè)共識(shí)是使用三層架構(gòu),分為表示層,業(yè)務(wù)層,和持久層。而這三層之間的依賴關(guān)系是:表示層 - 業(yè)務(wù)層 - 持久層。這表明了層與層之間的調(diào)用關(guān)系,表示層通過(guò)調(diào)用業(yè)務(wù)層來(lái)完成任務(wù),而業(yè)務(wù)層則調(diào)用持久層。從另一個(gè)角度來(lái)看,一種依賴關(guān)系是:表示層 - 領(lǐng)域模型(Domain Model) - 持久層,即表示層和持久層都應(yīng)該理解(recognize)領(lǐng)域模型。而領(lǐng)域模型則是業(yè)務(wù)層的一部分。業(yè)務(wù)層正是系統(tǒng)的價(jià)值所在。雖說(shuō)表示和持久也很重要,在某些系統(tǒng)中可以說(shuō)是很關(guān)鍵,但是它們的最終目的都是為業(yè)務(wù)服務(wù),所以業(yè)務(wù)層應(yīng)該是系統(tǒng)的核心?;谝陨系恼J(rèn)識(shí),在系統(tǒng)設(shè)計(jì)的時(shí)應(yīng)首先分析需求得到領(lǐng)域模型,找出系統(tǒng)中的實(shí)體、對(duì)象(靜態(tài)的一面),并明確大致的業(yè)務(wù)流程(動(dòng)態(tài)的一面)。 而另兩層應(yīng)盡最大努力為業(yè)務(wù)層服務(wù),且盡量減少業(yè)務(wù)層受另兩層的限制。5.1.2各層職責(zé)表示層:負(fù)責(zé)顯示信息,及從系統(tǒng)外部得到輸入。表示層的設(shè)計(jì)決定系統(tǒng)界面的可用性,及信息輸入和展示的可靠性。表示層只知道如何展示信息,及收集用戶輸入,并不知道該如何對(duì)這些輸入進(jìn)行處理來(lái)完成業(yè)務(wù)。業(yè)務(wù)層:完成業(yè)務(wù)邏輯。業(yè)務(wù)層設(shè)計(jì)決定客戶價(jià)值是否能夠得到實(shí)現(xiàn)。這是系統(tǒng)的關(guān)鍵。外在的表現(xiàn)是功能性。業(yè)務(wù)層設(shè)計(jì)和實(shí)現(xiàn)的失誤表現(xiàn)在用戶端即功能缺失,功能不可靠等。如果需要對(duì)業(yè)務(wù)層的業(yè)務(wù)規(guī)則進(jìn)行解耦,則可以使用規(guī)則引擎如Drools,把業(yè)務(wù)規(guī)則分離出來(lái)。但分離后的業(yè)務(wù)規(guī)則仍屬于業(yè)務(wù)層。業(yè)務(wù)層知道如何對(duì)用戶輸入進(jìn)行處理,能夠應(yīng)用業(yè)務(wù)規(guī)則完成用戶所需的業(yè)務(wù),但它不知道數(shù)據(jù)如何讀取和保存。 持久層:負(fù)責(zé)用戶信息的持久化。持久層的失誤表現(xiàn)在外即數(shù)據(jù)處理(儲(chǔ)存,展示等)不可靠。持久層完全不知道業(yè)務(wù),只專注于數(shù)據(jù)存儲(chǔ)和讀取。所謂持久化并不一定是指數(shù)據(jù)庫(kù),任何方式的持久化(通過(guò)文件,網(wǎng)絡(luò)的持久化等)都應(yīng)由持久層完成。5.1.3實(shí)際應(yīng)用介紹各層的設(shè)計(jì)都會(huì)直接影響系統(tǒng)性能,不同的系統(tǒng)中可能會(huì)有很大的不同。比如說(shuō)GOOGLE的搜索引擎,它的界面很簡(jiǎn)單,可以想像表示層是比較容易實(shí)現(xiàn)的,而它的業(yè)務(wù)層,關(guān)系到處理關(guān)鍵字,分析搜索結(jié)果,決定排名等,而持久層則要負(fù)責(zé)處理超大量的數(shù)據(jù)。業(yè)務(wù)層和持久層則相當(dāng)復(fù)雜。而有的系統(tǒng)持久層會(huì)很小,比如殺毒軟件,媒體播放軟件等6。5.2 B/S架構(gòu)介紹5.2.1 C/S與B/S架構(gòu)比較C/S和B/S是當(dāng)今世界開(kāi)發(fā)模式技術(shù)架構(gòu)的兩大主流技術(shù)。C/S是美國(guó)borland公司最早研發(fā),B/S是美國(guó)微軟公司研發(fā)。目前,這兩項(xiàng)技術(shù)以被世界各國(guó)所掌握,國(guó)內(nèi)公司以C/S和B/S技術(shù)開(kāi)發(fā)出產(chǎn)品也很多。這兩種技術(shù)都有自己一定的市場(chǎng)份額和客戶群,各家企業(yè)都說(shuō)自己的管理軟件架構(gòu)技術(shù)功能強(qiáng)大、先進(jìn)、方便,都能舉出各自的客戶群體,都有一大群文人墨客為自己搖旗吶喊,廣告滿天飛,可謂仁者見(jiàn)仁,智者見(jiàn)智。1.C/S架構(gòu)軟件的優(yōu)勢(shì)與劣勢(shì)(1) 應(yīng)用服務(wù)器運(yùn)行數(shù)據(jù)負(fù)荷較輕。最簡(jiǎn)單的C/S體系結(jié)構(gòu)的數(shù)據(jù)庫(kù)應(yīng)用由兩部分組成,即客戶應(yīng)用程序和數(shù)據(jù)庫(kù)服務(wù)器程序。二者可分別稱為前臺(tái)程序與后臺(tái)程序。運(yùn)行數(shù)據(jù)庫(kù)服務(wù)器程序的機(jī)器,也稱為應(yīng)用服務(wù)器。一旦服務(wù)器程序被啟動(dòng),就隨時(shí)等待響應(yīng)客戶程序發(fā)來(lái)的請(qǐng)求;客戶應(yīng)用程序運(yùn)行在用戶自己的電腦上,對(duì)應(yīng)于數(shù)據(jù)庫(kù)服務(wù)器,可稱為客戶電腦,當(dāng)需要對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行任何操作時(shí),客戶程序就自動(dòng)地尋找服務(wù)器程序,并向其發(fā)出請(qǐng)求,服務(wù)器程序根據(jù)預(yù)定的規(guī)則作出應(yīng)答,送回結(jié)果,應(yīng)用服務(wù)器運(yùn)行數(shù)據(jù)負(fù)荷較輕。(2) 數(shù)據(jù)的儲(chǔ)存管理功能較為透明。在數(shù)據(jù)庫(kù)應(yīng)用中,數(shù)據(jù)的儲(chǔ)存管理功能,是由服務(wù)器程序和客戶應(yīng)用程序分別獨(dú)立進(jìn)行的,前臺(tái)應(yīng)用可以違反的規(guī)則,并且通常把那些不同的(不管是已知還是未知的)運(yùn)行數(shù)據(jù),在服務(wù)器程序中不集中實(shí)現(xiàn),例如訪問(wèn)者的權(quán)限,編號(hào)可以重復(fù)、必須有客戶才能建立定單這樣的規(guī)則。所有這些,對(duì)于工作在前臺(tái)程序上的最終用戶,是“透明”的,他們無(wú)須過(guò)問(wèn)(通常也無(wú)法干涉)背后的過(guò)程,就可以完成自己的一切工作。在客戶服務(wù)器架構(gòu)的應(yīng)用中,前臺(tái)程序不是非?!笆菪 ?,麻煩的事情都交給了服務(wù)器和網(wǎng)絡(luò)。在C/S體系的下,數(shù)據(jù)庫(kù)不能真正成為公共、專業(yè)化的倉(cāng)庫(kù),它受到獨(dú)立的專門管理。(3) C/S架構(gòu)的劣勢(shì)是高昂的維護(hù)成本且投資大。首先,采用C/S架構(gòu),要選擇適當(dāng)?shù)臄?shù)據(jù)庫(kù)平臺(tái)來(lái)實(shí)現(xiàn)數(shù)據(jù)庫(kù)數(shù)據(jù)的真正“統(tǒng)一”,使分布于兩地的數(shù)據(jù)同步完全交由數(shù)據(jù)庫(kù)系統(tǒng)去管理,但邏輯上兩地的操作者要直接訪問(wèn)同一個(gè)數(shù)據(jù)庫(kù)才能有效實(shí)現(xiàn),有這樣一些問(wèn)題,如果需要建立“實(shí)時(shí)”的數(shù)據(jù)同步,就必須在兩地間建立實(shí)時(shí)的通訊連接,保持兩地的數(shù)據(jù)庫(kù)服務(wù)器在線運(yùn)行,網(wǎng)絡(luò)管理工作人員既要對(duì)服務(wù)器維護(hù)管理,又要對(duì)客戶端維護(hù)和管理,這需要高昂的投資和復(fù)雜的技術(shù)支持,維護(hù)成本很高,維護(hù)任務(wù)量大。其次,傳統(tǒng)的C/S結(jié)構(gòu)的軟件需要針對(duì)不同的操作系統(tǒng)系統(tǒng)開(kāi)發(fā)不同版本的軟件,由于產(chǎn)品的更新?lián)Q代十分快,代價(jià)高和低效率已經(jīng)不適應(yīng)工作需要。在Java這樣的跨平臺(tái)語(yǔ)言出現(xiàn)之后,B/S架構(gòu)更是猛烈沖擊C/S,并對(duì)其形成威脅和挑戰(zhàn)。2.B/S架構(gòu)軟件的優(yōu)勢(shì)與劣勢(shì)(1) 維護(hù)和升級(jí)方式簡(jiǎn)單。目前,軟件系統(tǒng)的改進(jìn)和升級(jí)越來(lái)越頻繁,B/S架構(gòu)的產(chǎn)品明顯體現(xiàn)著更為方便的特性。對(duì)一個(gè)稍微大一點(diǎn)單位來(lái)說(shuō),系統(tǒng)管理人員如果需要在幾百甚至上千部電腦之間來(lái)回奔跑,效率和工作量是可想而知的,但B/S架構(gòu)的軟件只需要管理服務(wù)器就行了,所有的客戶端只是瀏覽器,根本不需要做任何的維護(hù)。無(wú)論用戶的規(guī)模有多大,有多少分支機(jī)構(gòu)都不會(huì)增加任何維護(hù)升級(jí)的工作量,所有的操作只需要針對(duì)服務(wù)器進(jìn)行;如果是異地,只需要把服務(wù)器連接專網(wǎng)即可,實(shí)現(xiàn)遠(yuǎn)程維護(hù)、升級(jí)和共享。所以客戶機(jī)越來(lái)越“瘦”,而服務(wù)器越來(lái)越“胖”是將來(lái)信息化發(fā)展的主流方向。今后,軟件升級(jí)和維護(hù)會(huì)越來(lái)越容易,而使用起來(lái)會(huì)越來(lái)越簡(jiǎn)單,這對(duì)用戶人力、物力、時(shí)間、費(fèi)用的節(jié)省是顯而易見(jiàn)的,驚人的。因此,維護(hù)和升級(jí)革命的方式是“瘦”客戶機(jī),“胖”服務(wù)器。(2) 成本降低,選擇更多。大家都知道Windows在桌面電腦上幾乎一統(tǒng)天下,瀏覽器成為了標(biāo)準(zhǔn)配置,但在服務(wù)器操作系統(tǒng)上Windows并不是處于絕對(duì)的統(tǒng)治地位?,F(xiàn)在的趨勢(shì)是凡使用B/S架構(gòu)的應(yīng)用管理軟件,只需安裝在Linux服務(wù)器上即可,而且安全性高。所以服務(wù)器操作系統(tǒng)的選擇是很多的,不管選用那種操作系統(tǒng)都可以讓大部分人使用Windows作為桌面操作系統(tǒng)電腦不受影響,這就使的最流行免費(fèi)的Linux操作系統(tǒng)快速發(fā)展起來(lái),Linux除了操作系統(tǒng)是免費(fèi)的以外,連數(shù)據(jù)庫(kù)也是免費(fèi)的,這種選擇非常盛行。比如說(shuō)很多人每天上“網(wǎng)易”網(wǎng),只要安裝了瀏覽器就可以了,并不需要了解“網(wǎng)易”的服務(wù)器用的是什么操作系統(tǒng),而事實(shí)上大部分網(wǎng)站確實(shí)沒(méi)有使用Windows操作系統(tǒng),但用戶的電腦本身安裝的大部分是Windows操作系統(tǒng)。(3) 應(yīng)用服務(wù)器運(yùn)行數(shù)據(jù)負(fù)荷較重。由于B/S架構(gòu)管理軟件只安裝在服務(wù)器端(server)上,網(wǎng)絡(luò)管理人員只需要管理服務(wù)器就行了,用戶界面主要事務(wù)邏輯在服務(wù)器(server)端完全通過(guò)www瀏覽器實(shí)現(xiàn),極少部分事務(wù)邏輯在前端(browser)實(shí)現(xiàn),所有的客戶端只有瀏覽器,網(wǎng)絡(luò)管理人員只需要做硬件維護(hù)。但是,應(yīng)用服務(wù)器運(yùn)行數(shù)據(jù)負(fù)荷較重,一旦發(fā)生服務(wù)器“崩潰”等問(wèn)題,后果不堪設(shè)想。因此,許多單位都備有數(shù)據(jù)庫(kù)存儲(chǔ)服務(wù)器,以防萬(wàn)一7。5.2.2 B/S簡(jiǎn)介基于B/S模式的網(wǎng)絡(luò)信息系統(tǒng),通常采用三層或更多層結(jié)構(gòu),即“客戶機(jī)瀏覽器-Web服務(wù)器-數(shù)據(jù)庫(kù)服務(wù)器”,如圖5-1。B/S結(jié)構(gòu)以Web服務(wù)器為系統(tǒng)的中心,即用戶端通過(guò)瀏覽器向Web服務(wù)器提出查詢請(qǐng)求,Web服務(wù)器根據(jù)需要向數(shù)據(jù)庫(kù)服務(wù)器發(fā)出數(shù)據(jù)請(qǐng)求,數(shù)據(jù)庫(kù)則根據(jù)查詢或查詢條件返回相應(yīng)的數(shù)據(jù)結(jié)果給Web服務(wù)器,最后Web服務(wù)器將結(jié)果翻譯成為HTML或各類腳本語(yǔ)言的格式,并傳送給客戶機(jī)上的瀏覽器,用戶通過(guò)瀏覽器即可瀏覽自己所需的結(jié)果8。Web服務(wù)器瀏覽器數(shù)據(jù)庫(kù)圖5-1 B/S模式圖第六章 課題目前在國(guó)內(nèi)外的研究及應(yīng)用開(kāi)發(fā)現(xiàn)狀6.1該課題在國(guó)內(nèi)外的研究動(dòng)態(tài)6.1.1國(guó)外研究動(dòng)態(tài)隨著全球經(jīng)濟(jì)一體化使酒店業(yè)客源更加豐富多樣化,市場(chǎng)更加廣闊多渠道的同時(shí),酒店業(yè)更面臨著日趨激烈的競(jìng)爭(zhēng)環(huán)境和不斷攀升的客戶期望,迫使業(yè)內(nèi)人士不斷進(jìn)一步尋求改進(jìn)服務(wù)質(zhì)量、降低運(yùn)營(yíng)成本和提升客戶滿意度的新法寶來(lái)增強(qiáng)酒店的核心競(jìng)爭(zhēng)力。其中最有效的手段之一就是大規(guī)模應(yīng)用先進(jìn)的信息化技術(shù),變革傳統(tǒng)意義上的酒店業(yè)競(jìng)爭(zhēng)方式和經(jīng)營(yíng)管理模式以進(jìn)而贏得新競(jìng)爭(zhēng)優(yōu)勢(shì),在這方面國(guó)際上領(lǐng)先的酒店業(yè)一直在不遺余力地探索、實(shí)施和推進(jìn)。國(guó)際酒店業(yè)先進(jìn)信息化應(yīng)用的產(chǎn)生與發(fā)展大體上經(jīng)過(guò)了電算化階段、自動(dòng)化階段、網(wǎng)絡(luò)化階段、集成化階段、協(xié)同化階段五階段。其中,網(wǎng)絡(luò)化階段指的是,以因特網(wǎng)(Internet)和數(shù)字化經(jīng)濟(jì)為主要特征的信息化沖擊,使網(wǎng)絡(luò)化建設(shè)也已成為酒店業(yè)整個(gè)信息化建設(shè)應(yīng)用中的重要組成部分,于是以寬帶高速數(shù)據(jù)網(wǎng)絡(luò)為核心的“數(shù)字化酒店,(CyberH。tel)也應(yīng)運(yùn)而生?!皵?shù)字化酒店”其含義不僅僅是酒店有寬帶接入線路,方便客人在酒店內(nèi)高速上網(wǎng),還包含以下內(nèi)容:在網(wǎng)上創(chuàng)建公司網(wǎng)站可供客戶瀏覽,進(jìn)行互動(dòng)式的數(shù)據(jù)查詢和客戶自助服務(wù)功能,有市場(chǎng)銷售、宣傳推廣、訂房管理的功能;以因特網(wǎng)為基礎(chǔ),方便員工的移動(dòng)辦公系統(tǒng)和面向社會(huì)的電子商務(wù)系統(tǒng)雛形。在這一階段的應(yīng)用重點(diǎn)是網(wǎng)絡(luò)營(yíng)銷和網(wǎng)上適時(shí)訂房業(yè)務(wù),正所謂“網(wǎng)絡(luò)點(diǎn)擊,無(wú)限商機(jī)”,酒店通過(guò)網(wǎng)絡(luò)宣傳企業(yè)形象和服務(wù),開(kāi)展網(wǎng)上預(yù)訂客房,讓客人了解酒店設(shè)施,選擇所需要的服務(wù)進(jìn)行遠(yuǎn)程預(yù)訂。而酒店與顧客通過(guò)網(wǎng)上互動(dòng)式交流,為顧客提供更為個(gè)性化的服務(wù),這比打價(jià)格戰(zhàn)要高明得多??腿藷o(wú)論身處何處,上網(wǎng)就可以選擇自己中意的酒店。高速互聯(lián)網(wǎng)接入將是未來(lái)酒店基本的設(shè)施,“明日”的酒店將要以寬帶網(wǎng)絡(luò)化為特色。協(xié)同化階段指進(jìn)入互聯(lián)網(wǎng)新經(jīng)濟(jì)時(shí)代,酒店業(yè)信息化的新追求境界是在集成化基礎(chǔ)上的協(xié)同化應(yīng)用,酒店通過(guò)互聯(lián)網(wǎng)搭建統(tǒng)一的信息應(yīng)用平臺(tái)將客戶、酒店、員工、供應(yīng)商、合作伙伴等各方聯(lián)為一個(gè)整體以實(shí)現(xiàn)縱覽全局的跨行業(yè)、跨組織、跨地區(qū),實(shí)時(shí)在線的、端對(duì)端數(shù)據(jù)無(wú)縫交換的業(yè)務(wù)協(xié)同運(yùn)作,其重點(diǎn)在于各方聯(lián)為一體直接面向顧客提供個(gè)性化服務(wù)??v觀國(guó)外酒店業(yè)信息化發(fā)展軌跡和趨勢(shì),我們不難看出,隨著酒店業(yè)競(jìng)爭(zhēng)的加劇,酒店之間客源的爭(zhēng)奪越來(lái)越激烈,客房銷售的利潤(rùn)空間越來(lái)越小,酒店需要使用更有效的信息化手段,拓展經(jīng)營(yíng)空間,降低運(yùn)營(yíng)成本,提高管理和決策效率。高層次的酒店業(yè)信息化不再是僅僅追求計(jì)算機(jī)輔助管理,而是追求建立在集成化基礎(chǔ)上的協(xié)同化應(yīng)用。6.1.2國(guó)內(nèi)研究動(dòng)態(tài)中國(guó)酒店業(yè)利用計(jì)算機(jī)管理系統(tǒng)來(lái)加強(qiáng)管理、提高服務(wù)水平,雖然至今己有了20多年的歷史,但起步發(fā)展較晚,只是一些淺層次應(yīng)用,與國(guó)際酒店業(yè)先進(jìn)信息化應(yīng)用的差距非常突出。提高星級(jí)酒店的服務(wù)質(zhì)量,開(kāi)發(fā)酒店管理系統(tǒng)提高酒店管理的效率勢(shì)在必行。6.2該課題的應(yīng)用開(kāi)發(fā)現(xiàn)狀相對(duì)于國(guó)外的酒店管理系統(tǒng)國(guó)內(nèi)酒店IT技術(shù)開(kāi)發(fā)的現(xiàn)狀是:1、需求不明確,使酒店項(xiàng)目工程性強(qiáng),產(chǎn)品化不足,開(kāi)發(fā)商的總體成本居高不下,研發(fā)缺乏原動(dòng)力。2、沒(méi)有行業(yè)統(tǒng)一標(biāo)準(zhǔn),廠商各自為政,市場(chǎng)分化導(dǎo)致產(chǎn)品整合難度大。3、產(chǎn)品推廣依賴行政手段和關(guān)系網(wǎng),抑制了新技術(shù)的引進(jìn)和技術(shù)的創(chuàng)新,不利于形成自己的產(chǎn)品特色和質(zhì)量控制。第七章 需求分析7.1 系統(tǒng)總體結(jié)構(gòu)圖圖7-1 系統(tǒng)總體結(jié)構(gòu)圖NM7.2 系統(tǒng)業(yè)務(wù)模型圖客 戶預(yù)訂客房訂單訂房圖7-2 系統(tǒng)業(yè)務(wù)模型圖1圖7-3系統(tǒng)業(yè)務(wù)模型圖2客 戶預(yù)訂餐飲訂單訂餐MN7.3 系統(tǒng)用例圖圖7.4 Admin用例圖圖7-5 agent用例圖7.4系統(tǒng)業(yè)務(wù)流程圖7.4.1餐飲前臺(tái)業(yè)務(wù)辦理和后臺(tái)管理流程圖圖7-6餐飲前臺(tái)業(yè)務(wù)辦理和后臺(tái)管理流程圖7.4.2住宿前臺(tái)業(yè)務(wù)辦理和后臺(tái)管理流程圖圖7-7住宿前臺(tái)業(yè)務(wù)辦理和后臺(tái)管理流程圖第八章 數(shù)據(jù)庫(kù)設(shè)計(jì)8.1概念設(shè)計(jì)將需求分析得到的用戶需求抽象為信息結(jié)構(gòu)即概念模型的過(guò)程就是概念結(jié)構(gòu)設(shè)計(jì)。它是整個(gè)數(shù)據(jù)庫(kù)設(shè)計(jì)的關(guān)鍵。在需求分析階段所得到的應(yīng)用需求應(yīng)該首先抽象為信息世界的結(jié)構(gòu),才能更好地,更準(zhǔn)確地用某一DBMS實(shí)現(xiàn)這些需求。概念結(jié)構(gòu)是各種數(shù)據(jù)模型的共同基礎(chǔ),它比數(shù)據(jù)模型更獨(dú)立于機(jī)器,更抽象,從而更加穩(wěn)定。描述概念模型的有力工具是E-R模型。所謂E-R模型就是實(shí)體-聯(lián)系方法。E-R圖提供了表示實(shí)體、實(shí)體的屬性和實(shí)體之間的聯(lián)系的方法。實(shí)體型:用矩形表示,矩形框內(nèi)寫明實(shí)體名屬性:用橢圓型表示,并用無(wú)向邊與其相應(yīng)實(shí)體連接起來(lái)聯(lián)系:用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用無(wú)向邊與其有關(guān)實(shí)體連接起來(lái),同時(shí)在邊旁邊標(biāo)上聯(lián)系的類型(1:1,1:n或m:n)9。對(duì)象類型的組成成份可以抽象為實(shí)體的屬性。組成成份與對(duì)象之間是“is part of”的關(guān)系。實(shí)際上實(shí)體與屬性是相對(duì)而言的,很難有截然劃分的界限。同一事物,在一種應(yīng)用環(huán)境中作為“屬性”,在另一種環(huán)境中就必須作為“實(shí)體”。一般來(lái)說(shuō),在給定的應(yīng)用環(huán)境中,屬性不能再具有需要描述的性質(zhì)。即屬性必須是不可分的數(shù)據(jù)項(xiàng),不能再由另一些屬性組成。屬性不能與其它實(shí)體具有聯(lián)系。聯(lián)系只發(fā)生在實(shí)體之間。由此,下面將酒店管理系統(tǒng)所涉及的E-R圖表示出來(lái):1.顧客實(shí)體E-R圖圖8-1顧客實(shí)體E-R圖顧 客姓名名 稱密 碼聯(lián)系方式Email顧客id2.管理員實(shí)體E-R圖圖8-2 管理員實(shí)體E-R圖管理員用戶名密碼管理員id3.就餐實(shí)體E-R圖就餐費(fèi)用就餐訂單號(hào)日 期顧客編號(hào)折 扣就餐id圖8-3就餐實(shí)體E-R圖4.就餐計(jì)劃實(shí)體E-R圖就餐計(jì)劃id就餐計(jì)劃菜肴菜肴數(shù)量餐桌編號(hào)總價(jià)格圖8-4 就餐計(jì)劃實(shí)體E-R圖編 號(hào)5.菜肴實(shí)體E-R圖菜 肴單 價(jià)類型編號(hào)名 稱描 述菜肴id圖8-5菜肴實(shí)體E-R圖6.菜肴類型實(shí)體E-R圖菜肴類型id菜肴類型類型名稱保質(zhì)期圖8-6 菜肴類型實(shí)體E-R圖7.餐桌實(shí)體E-R圖餐 桌編 號(hào)名 稱位 置類型編號(hào)餐桌id圖8-7餐桌實(shí)體E-R圖8.餐桌類型實(shí)體E-R圖餐桌類型編 號(hào)名 稱座位數(shù)目類型id圖8-8餐桌類型實(shí)體E-R圖9.住宿實(shí)體E-R圖客房編號(hào)住宿入住日期顧客編號(hào)折 扣費(fèi)用住宿id圖8-9住宿實(shí)體E-R圖10.住宿計(jì)劃實(shí)體E-R圖住宿計(jì)劃編 號(hào)客房編號(hào)房間個(gè)數(shù)住宿計(jì)劃id總價(jià)格住宿編號(hào)圖8-10 住宿計(jì)劃實(shí)體E-R圖11.客房實(shí)體E-R圖客房id客 房人數(shù)單 價(jià)類型編號(hào)名 稱描 述圖8-11客房實(shí)體E-R圖12.客房類型實(shí)體E-R圖客房類型類型名稱描 述 客房類型id圖8-12 客房類型實(shí)體E-R圖13實(shí)體間的E-R圖顧 客預(yù) 訂就餐信息菜肴名稱就餐日期菜肴數(shù)量就餐計(jì)劃信息菜肴信息nnn1包含1包含1圖8-13 實(shí)體關(guān)系圖1顧 客預(yù) 訂住宿信息客房名稱房間數(shù)量住宿日期住宿計(jì)劃信息客房信息n1n1包含n包含1圖8-14實(shí)體關(guān)系圖28.2邏輯設(shè)計(jì)8.2.1數(shù)據(jù)庫(kù)表匯總 表8-1 數(shù)據(jù)庫(kù)表匯總8.2.2具體表結(jié)構(gòu)表8-2菜肴表序號(hào)字段名稱字段類型說(shuō)明備注1idInteger菜肴編號(hào)Primary key2nameVarchar菜肴名稱3priceDouble菜肴價(jià)格4descriptionVarchar菜肴描述5cuisineType_idInteger菜肴類型外碼表8-3菜肴類型表序號(hào)字段名稱字段類型說(shuō)明備注1idinteger類型編號(hào)Primary key2namevarchar類型名稱3lifevarchar保質(zhì)期表8-4顧客表序號(hào)字段名稱字段類型說(shuō)明備注1idinteger顧客編號(hào)Primary key2usernamevarchar用戶名3passwordvarchar密碼4namevarchar姓名5phonevarchar電話6emailvarchar郵件表8-5就餐表序號(hào)字段名稱字段類型說(shuō)明備注1idinteger序號(hào)Primary key2novarchar訂單編號(hào)3personNumvarchar就餐人數(shù)4datedate就餐日期5customer_idinteger顧客編號(hào)外碼表8-6就餐計(jì)劃表序號(hào)字段名稱字段類型說(shuō)明備注1idinteger序號(hào)Primary key2novarchar編號(hào)3numinteger菜肴數(shù)量4totalPricedouble總價(jià)格5cuisine_idinteger菜肴編號(hào)外碼16eating_idinteger就餐序號(hào)外碼27tables_idinteger餐桌序號(hào)外碼3表8-7餐桌表序號(hào)字段名稱字段類型說(shuō)明備注1idinteger序號(hào)Primary key2novarchar餐桌編號(hào)3namevarchar名稱4addressvarchar位置5tablesType_idinteger餐桌類型序號(hào)外碼表8-8餐桌類型表序號(hào)字段名稱字段類型說(shuō)明備注1idinteger序號(hào)Primary key2novarchar類型編號(hào)3namevarchar類型名稱4sizeinteger座位數(shù)目表8-9管理員表序號(hào)字段名稱字段類型說(shuō)明備注1idinteger序號(hào)Primary key2usernamevarchar用戶名3passwordvarchar密碼表8-10客房表序號(hào)字段名稱字段類型說(shuō)明備注1idinteger序號(hào)Primary key2namevarchar客房名稱3personNuminteger人數(shù)4pricedouble單價(jià)5descriptionvarchar描述6roomType_idinteger房間類型序號(hào)外碼表8-11客房類型表序號(hào)字段名稱字段類型說(shuō)明備注1idinteger序號(hào)Primary key2novarchar類型編號(hào)3descriptionvarchar描述4sizeinteger座位數(shù)目表8-12住宿表序號(hào)字段名稱字段類型說(shuō)明備注1idinteger序號(hào)Primary key2novarchar客房編號(hào)3lessdouble折扣外碼14dateDate入住時(shí)間5costdouble費(fèi)用6customer_idinteger顧客編號(hào)外碼2表8-13住宿計(jì)劃表序號(hào)字段名稱字段類型說(shuō)明備注1idinteger序號(hào)Primary key2novarchar客房編號(hào)3numinteger房間個(gè)數(shù)4totalPricedouble總價(jià)格5room_idinteger房間序號(hào)外碼16lodging_idinteger住宿序號(hào)外碼2第九章 系統(tǒng)的關(guān)鍵技術(shù)以及要點(diǎn)介紹首先,本系統(tǒng)分為三層,每層的技術(shù)選型分別為:表示層:Struts業(yè)務(wù)層:POJO持久層:Hibernate即所謂的目前最流行的Web應(yīng)用開(kāi)發(fā)框架Struts+POJO+Hibernate技術(shù),其中涉及到的技術(shù)有JSP,開(kāi)發(fā)語(yǔ)言則目前最流行的應(yīng)用程序開(kāi)發(fā)語(yǔ)言面向?qū)ο缶幊陶Z(yǔ)言Java。下面將分別對(duì)這些技術(shù)進(jìn)行相應(yīng)的介紹。本設(shè)計(jì)采用的是目前最為流行的動(dòng)態(tài)網(wǎng)站開(kāi)發(fā)技術(shù)JSP,下面對(duì)該技術(shù)進(jìn)行介紹,并將其與其他網(wǎng)頁(yè)開(kāi)發(fā)技術(shù)進(jìn)行比較以闡述采用該技術(shù)的原因。9.1 JSP簡(jiǎn)介9.1.1 JSP簡(jiǎn)介JSP(Java Server Page)是由于Sun Microsystems公司倡導(dǎo)、許多公司參與建立的以種動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)標(biāo)準(zhǔn)。該技術(shù)為創(chuàng)建顯示動(dòng)態(tài)生成內(nèi)容的Web頁(yè)面提供了一個(gè)簡(jiǎn)捷而快捷的方法。在目前流行的3P技術(shù)中(3P技術(shù)分別是:ASP,Active Server Page;PHP,Personal HomePage;JSP,Java Server Page),JSP已經(jīng)逐漸成為Internet上的主流開(kāi)發(fā)工具。JSP是基于Java Servlet以及整個(gè)Java體系的Web開(kāi)發(fā)技術(shù),具有動(dòng)態(tài)頁(yè)面與靜態(tài)頁(yè)面分離、能夠脫離硬件平臺(tái)束縛、“一次編寫,各處運(yùn)行”等優(yōu)點(diǎn)。利用這一技術(shù)可以建立安全、跨平臺(tái)的先進(jìn)動(dòng)態(tài)網(wǎng)站。9.1.2 JSP的特點(diǎn)JSP主要有如下5個(gè)方面的特點(diǎn):1.內(nèi)容的生成和顯示相分離使用JSP技術(shù),Web頁(yè)面開(kāi)發(fā)人員可以使用HTML或者XML來(lái)設(shè)計(jì)和格式化最終頁(yè)面,使用JSP標(biāo)簽或者腳本生成頁(yè)面的動(dòng)態(tài)內(nèi)容。生成內(nèi)容的邏輯被封裝在標(biāo)簽和JavaBean組件中,并且捆綁在腳本中,所有的腳本在服務(wù)器端運(yùn)行。如果核心邏輯被封裝在標(biāo)簽和JavaBean組件中,那么其他人員,如頁(yè)面設(shè)計(jì)者或是Web管理人員,就能夠編輯和使用JSP頁(yè)面而不影響內(nèi)容生成。在服務(wù)器端,JSP引擎解釋JSP標(biāo)簽和腳本,生成所請(qǐng)求的內(nèi)容,并且將結(jié)果以HTML或XML頁(yè)面的形式發(fā)送回瀏覽器。這有助于作者保護(hù)自己的代碼,并且保證了任何基于HTML的Web的瀏覽器的完全可用性。2.可移植性JSP的重要特點(diǎn)之一就是它由Java語(yǔ)言構(gòu)建,是Java應(yīng)用程序的一種。Java技術(shù)最鮮明的特點(diǎn)之一就是工作平臺(tái)具有獨(dú)立性。如果學(xué)習(xí)過(guò)Java語(yǔ)言,就一定聽(tīng)說(shuō)過(guò)“Write Once,Run Anywhere”這句名言。與之相同,JSP也不必考慮在Web服務(wù)器環(huán)境的操作系統(tǒng)相關(guān)性。不管JSP在何種平臺(tái)中編寫,只要服務(wù)器中有JSP C
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中國(guó)新型傘齒布料器市場(chǎng)調(diào)查研究報(bào)告
- 2025年中國(guó)數(shù)字報(bào)警器數(shù)據(jù)監(jiān)測(cè)報(bào)告
- 2025至2031年中國(guó)纖維混紡紗線行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025年中國(guó)工業(yè)計(jì)數(shù)器市場(chǎng)調(diào)查研究報(bào)告
- 肇慶市實(shí)驗(yàn)中學(xué)高中歷史三:第課社會(huì)主義建設(shè)的思想指南高效課堂教學(xué)設(shè)計(jì)
- 新疆生產(chǎn)建設(shè)兵團(tuán)圖木舒克市2024-2025學(xué)年六年級(jí)數(shù)學(xué)小升初摸底考試含解析
- 新疆烏魯木齊2025年高三期初調(diào)研測(cè)試英語(yǔ)試題含解析
- 新鄉(xiāng)醫(yī)學(xué)院三全學(xué)院《物流系統(tǒng)優(yōu)化與仿真》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025-2030年中國(guó)edta鐵銨行業(yè)發(fā)展?fàn)顩r及投資前景規(guī)劃研究報(bào)告
- 興義民族師范學(xué)院《生物與醫(yī)藥儀器分析》2023-2024學(xué)年第二學(xué)期期末試卷
- 拔牙技巧必成高手
- 婦科醫(yī)生進(jìn)修匯報(bào)課件
- 動(dòng)態(tài)分析與設(shè)計(jì)實(shí)驗(yàn)報(bào)告總結(jié)
- 2024年江蘇省泰州市海陵區(qū)中考一模數(shù)學(xué)試卷
- 從汽車檢測(cè)看低空飛行器檢測(cè)發(fā)展趨勢(shì)
- DB32T 4740-2024 耕地和林地?fù)p害程度鑒定規(guī)范
- 投標(biāo)項(xiàng)目實(shí)施方案服務(wù)響應(yīng)方案
- 五一節(jié)假日安全生產(chǎn)培訓(xùn)
- 中考英語(yǔ)二輪復(fù)習(xí)課件:中考解題技巧-讀寫綜合
- 《鐵路基本安全知識(shí)》課程標(biāo)準(zhǔn)
- 三年級(jí)下冊(cè)口算練習(xí)1000道附答案
評(píng)論
0/150
提交評(píng)論