版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、信息系統(tǒng)課程設(shè)計(jì)報(bào)告基于ssh酒店管理系統(tǒng)班級(jí):學(xué)號(hào):XX:小組成員:二0一一年十二月-I-對(duì)基于SSH的酒店管理系統(tǒng)摘要隨著計(jì)算機(jī)的普及和計(jì)算機(jī)科學(xué)技術(shù)的飛速發(fā)展,人們開(kāi)始越來(lái)越多地利用計(jì)算機(jī)解決實(shí)際問(wèn)題。酒店面對(duì)大量的預(yù)定,入住以及人員管理和歷史記錄的查詢(xún)等問(wèn)題,采用原始方式處理既浪費(fèi)時(shí)間、又浪費(fèi)人力和物力,并且數(shù)據(jù)的準(zhǔn)確性低,所以酒店管理系統(tǒng)的出現(xiàn)起到了很重要的作用。因此,總結(jié)前人的經(jīng)驗(yàn),開(kāi)發(fā)交互性好,易于操作的酒店管理系統(tǒng)進(jìn)行自動(dòng)化處理變得十分重要,這正是本系統(tǒng)開(kāi)發(fā)的目的和意義。本文介紹了酒店管理系統(tǒng)的開(kāi)發(fā)過(guò)程。論文詳細(xì)介紹了從系統(tǒng)的需求分析、可行性分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、系統(tǒng)實(shí)現(xiàn)的
2、整個(gè)開(kāi)發(fā)過(guò)程。此系統(tǒng)實(shí)現(xiàn)了用戶(hù)對(duì)客房的預(yù)定、用戶(hù)自身信息的查詢(xún)、用戶(hù)對(duì)系統(tǒng)的留言、管理員對(duì)預(yù)定的處理、管理員對(duì)入住的接收,管理員對(duì)信息的查詢(xún),管理員對(duì)歷史記錄的查詢(xún),管理員對(duì)人員的管理,以及員工的簽到等功能,實(shí)現(xiàn)了易安裝性、易維護(hù)性和易操作性,并且系統(tǒng)運(yùn)行穩(wěn)定、安全。酒店管理系統(tǒng)的應(yīng)用對(duì)酒店起到了重要的作用。此系統(tǒng)是對(duì)酒店前臺(tái)的業(yè)務(wù)進(jìn)行管理,對(duì)某些環(huán)節(jié)進(jìn)行了優(yōu)化,提高了工作效率,使酒店管理者能夠及時(shí)了解收費(fèi)狀況的許多必要的信息,提高酒店的工作效率和競(jìng)爭(zhēng)力。本系統(tǒng)是以Java平臺(tái)作為開(kāi)發(fā)環(huán)境,后臺(tái)采用Mysql數(shù)據(jù)庫(kù),全面系統(tǒng)的介紹了整個(gè)軟件的開(kāi)發(fā)全過(guò)程,介紹了如何進(jìn)行數(shù)據(jù)庫(kù)連接,以及如何構(gòu)建成
3、熟的系統(tǒng)。在酒店收費(fèi)系統(tǒng)的設(shè)計(jì)過(guò)程中結(jié)合運(yùn)用了SSH技術(shù),實(shí)現(xiàn)一套適合中小型酒店的酒店管理系統(tǒng)。經(jīng)歷了一個(gè)比較完整的開(kāi)發(fā)過(guò)程,并總結(jié)了開(kāi)發(fā)過(guò)程中的實(shí)際經(jīng)驗(yàn)和體會(huì)。-II-關(guān)鍵詞酒店管理;Java語(yǔ)言;Mysql數(shù)據(jù)庫(kù);SSH框架-III-ThehotelmanagementsystembasedonSSHAbstractWiththepopularityofcomputerandrapiddevelopmentofcomputerscienceandtechnology,moreandmorepeopleareusingcomputerstosolvepracticalproblems.The
4、applicationofhotelmanagementplaysaveryimportantrole.Inthefaceofalargenumberofreservationsandoccupancy,aswellaspersonnelmanagement,andhistoricalrecordsquery,humanprocessingcanabsolutelywastetime,alongwithhumanandmaterialresources,wheretheaccuracyofthedataislow.Therefore,developingafriendlyinterface,e
5、asyoperationofthehotelmanagementsystemforautomatedprocessingbecomesveryimportant,whichisthepurposeandsignificanceofthissystemdevelopment.Thispaperintroducestheprocessofhotelmanagementsystemdevelopment.Thispaperintroducestheprocessrangingfromtherequirementsfromthesystemanalysis,feasibilityanalysis,ou
6、tlinedesign,detaileddesigntosystemimplementation.itplaysanimportantrolesinthesystem.Thissystemenablescustomerstobookhotelrooms,askforinformation,leavemessageforsystem.Italsoenablestheadministratortotreatreservations,receivethecheck-in,lookforinformationandhistoricrecords,andmanagestaff,whichalsoincl
7、udesthefunctionslikestaffattendance.Itrealizesthegoalofeasyinstallation,easymaintenanceandeasytooperate,andthesystemisstableandsafe.Thissystemdealswiththebusinessofthehotel,optimizessomesegments,improvesefficiencywhichenableshotelmanagerstokeepabreastofchargestatusofmanyinformation.Itnotonlyimproves
8、efficiencybutalsoenhancesthecompetitiveness.ThesystemisbasedonJavaasthedevelopmentenvironment,withthe-IV-backgroundusingMysql.Itintroducesacomprehensivesystemofthewholeprocessoftheentiresoftwaredevelopment,describeshowtomanagethedatabaseconnection,andhowtobuildsophisticatedsystems.Chargingsysteminth
9、ehoteldesignprocessusingacombinationofSSHtechnology,makesahotelmanagementsystemforsmallandmediumhotels.Afteramorecompletedevelopmentprocess,itsummarizesthepracticalexperienceofthedevelopmentprocess.Keywords:Hotelmanagement;Javalanguage;Mysqldatabase;SSHframe-V-目錄摘要.I.Abstract.I.I.Thehotelmanagements
10、ystembasedonSS.H.I.VAbstract.I.V.第1章緒論.1.1.1課題背景.1.1.2研究目的.1.1.3研究意義.2.1.4研究現(xiàn)狀.2.1.5研究?jī)?nèi)容.3.1.6論文結(jié)構(gòu).3.第2章相關(guān)知識(shí)簡(jiǎn)介.5.2.1JAVA簡(jiǎn)介.5.2.2JAVA概況.JAVA的特點(diǎn).JAVA的優(yōu)勢(shì).JAVA的應(yīng)用X圍.6.2.3MySql簡(jiǎn)介.MySQL應(yīng)用概述.MySQL的優(yōu)勢(shì).7.2.4SSH框架概述.SSH的機(jī)制.SSH的特點(diǎn).SSH的工作流程.9.2.5本章小結(jié).1.0.第
11、3章需求分析.1.13.1系統(tǒng)需求分析.1.13.2可行性分析.開(kāi)發(fā)模型.本章小結(jié).1.3.第4章概要設(shè)計(jì).1.54.1項(xiàng)目規(guī)劃..1系統(tǒng)模塊.1.5-VI-4.1.2系統(tǒng)構(gòu)架.1.64.2項(xiàng)目設(shè)計(jì).設(shè)計(jì)目標(biāo).開(kāi)發(fā)及運(yùn)行環(huán)境.1.84.5本章小結(jié).1.8.第5章詳細(xì)設(shè)計(jì).1.95.1系統(tǒng)總體分析.系統(tǒng)工作流程分析.系統(tǒng)總體架構(gòu).2.05.2系統(tǒng)模塊劃分.2.05.3數(shù)據(jù)庫(kù)設(shè)計(jì).本章小結(jié).2.5.第6章系統(tǒng)實(shí)現(xiàn).2.66.1系統(tǒng)結(jié)構(gòu)實(shí)現(xiàn).2.66.2管理員模塊實(shí)現(xiàn).
12、房間刷選實(shí)現(xiàn).立即入住實(shí)現(xiàn).預(yù)定入住實(shí)現(xiàn).3.06.2.4用戶(hù)退房實(shí)現(xiàn).3.16.3本章小結(jié).3.1.第7章系統(tǒng)測(cè)試.3.27.1測(cè)試背景及方法.3.37.2測(cè)試過(guò)程..1測(cè)試登錄功能.管理員管理模塊測(cè)試.3.57.3本章小結(jié).3.6.結(jié)論.3.7.-VII-第1章緒論1.1課題背景如今酒店管理系統(tǒng)已經(jīng)成為一個(gè)酒店不可缺少的部分,它的功能對(duì)于企業(yè)的用戶(hù)和管理者來(lái)說(shuō)都是至關(guān)重要的,因此,酒店管理系統(tǒng)應(yīng)該能夠?yàn)橛脩?hù)提供方便的服務(wù),充足的信息和快捷的查詢(xún)手段,以往人們一直使用傳統(tǒng)的人工方式管理,這種管理方式存在著許多缺點(diǎn),諸如效率低,XX
13、性差等,而且時(shí)間一長(zhǎng),將產(chǎn)生大量的文件和數(shù)據(jù),這對(duì)于查找、更新和維護(hù)都帶來(lái)了不少的困難。隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)不斷發(fā)展,其強(qiáng)大的功能已經(jīng)被人們深刻認(rèn)識(shí),它已經(jīng)進(jìn)入了人類(lèi)社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來(lái)越重要的作用?;赟SH的酒店管理系統(tǒng)實(shí)現(xiàn)了信息及人員的全過(guò)程追蹤和動(dòng)態(tài)管理,從而做到簡(jiǎn)化預(yù)定客房過(guò)程,優(yōu)化入住客房速度,改變以往排隊(duì)多、等候時(shí)間長(zhǎng)、秩序混亂的局面。同時(shí)酒店管理系統(tǒng)的實(shí)施也強(qiáng)化了酒店內(nèi)部管理,降低了員工的工作強(qiáng)度和時(shí)間,人為因素造成的漏現(xiàn)象可以解決,也加速了處理速度,減少用戶(hù)流程。酒店管理系統(tǒng)為管理者提供了收費(fèi)狀況和歷史記錄等許多有用的信息,也由于許多因素的影響:如提供的信
14、息是否充足,數(shù)據(jù)的處理是否快捷等,使得繁瑣的管理在酒店運(yùn)營(yíng)中的地位越發(fā)重要,越來(lái)越多的人都在關(guān)心酒店管理的重要性問(wèn)題。本系統(tǒng)作為一個(gè)管理信息平臺(tái),在一定程度上便是適應(yīng)這樣的發(fā)展的需求。1.2研究目的在信息高速發(fā)展的今天,使用快速有效的工具和設(shè)備是所有行業(yè)保持領(lǐng)先優(yōu)勢(shì)的必須手段,為了更好的對(duì)酒店業(yè)務(wù)進(jìn)行管理和協(xié)調(diào),所以使用酒店管理系統(tǒng)是對(duì)酒店和賓館有很多益處的,為了使系統(tǒng)能夠很好的適應(yīng)業(yè)務(wù)變化系統(tǒng)具有了良好的業(yè)務(wù)擴(kuò)展和業(yè)務(wù)定制能力,解決了用戶(hù)需求經(jīng)-1-常變化軟件系統(tǒng)長(zhǎng)期難以定型的問(wèn)題,我對(duì)此進(jìn)行了一些相關(guān)調(diào)查并開(kāi)發(fā)實(shí)現(xiàn)了一個(gè)適用于中小型酒店和賓館的管理系統(tǒng)。1.3研究意義信息化的今天,酒店管理
15、收費(fèi)系統(tǒng)的應(yīng)用,使高效率的酒店管理模式成為可能。通過(guò)本酒店管理系統(tǒng),酒店的相關(guān)工作人員通過(guò)簽到可以提高自身的工作效率,并且通過(guò)歷史記錄和收費(fèi)紀(jì)錄能夠做好金錢(qián)的查詢(xún)和協(xié)調(diào)工作;通過(guò)本酒店管理系統(tǒng),酒店的決策者可以直接管理和運(yùn)營(yíng)相關(guān)的業(yè)務(wù),有效地發(fā)現(xiàn)和挖掘前景,及時(shí)與自己的上級(jí)、下屬、同行業(yè)單位進(jìn)行的溝通與交流,同心協(xié)作,積極為酒店事業(yè)的發(fā)展與決策貢獻(xiàn)力量。使酒店管理適應(yīng)時(shí)代的發(fā)展要求,大大提高了在大量服務(wù)機(jī)構(gòu)中的核心竟?fàn)幜Α?.4研究現(xiàn)狀國(guó)外的酒店管理系統(tǒng)最早是于70年代初發(fā)展起來(lái)的,到了80年代,國(guó)外的酒店管理系統(tǒng),如EECO(ElectronicEngineeringCO)、HIS(Hote
16、lInformationSystem)、CLS、Lodgistix等,整個(gè)模式已基本定型,技術(shù)較成熟,功能也較齊全。現(xiàn)在,國(guó)外酒店正向個(gè)性化方向發(fā)展,酒店按其經(jīng)營(yíng)方式可分為商務(wù)型酒店、長(zhǎng)住型酒店、度假型酒店等等;按其經(jīng)營(yíng)形式可分為獨(dú)立經(jīng)營(yíng)飯店、集團(tuán)經(jīng)營(yíng)飯店等。而且產(chǎn)生了一大批國(guó)際級(jí)的聯(lián)號(hào)飯店,如希爾頓(HiltonHotelsCorp)、謝拉頓(SheratonCorp)、假日(HolidayCorp)、凱悅(HyattHotelCorp)等集團(tuán)公司的世界飯店。國(guó)內(nèi)的酒店計(jì)算機(jī)管理系統(tǒng)最早是在80年代初開(kāi)始的,從事該方面工作的有清華大學(xué)自動(dòng)化系的金國(guó)芬教授、XX交大和XX省計(jì)算技術(shù)研究所。到了
17、80年代中后期,隨著國(guó)外飯店計(jì)算機(jī)系統(tǒng)和先進(jìn)管理技術(shù)的大規(guī)模引進(jìn),進(jìn)一步促進(jìn)了我國(guó)酒店管理技術(shù)的發(fā)展。國(guó)內(nèi)酒店管理系統(tǒng)正是在充分吸收國(guó)外管理系統(tǒng)的精華,結(jié)合國(guó)內(nèi)實(shí)際的情況下逐步發(fā)展成熟,-2-到90年代初期形成了幾個(gè)較成熟的軟件系統(tǒng),同時(shí)產(chǎn)生了許多專(zhuān)職從事酒店計(jì)算機(jī)管理系統(tǒng)的公司。其中比較有影響的有XX西歐Foxhis飯店管理系統(tǒng)、中軟好泰CSHIS管理系統(tǒng)、華儀飯店管理系統(tǒng)和XX萬(wàn)迅千里馬飯店管理系統(tǒng)。到了90年代中期,隨著計(jì)算機(jī)在飯店中的普及應(yīng)用,以及計(jì)算機(jī)技術(shù)的不斷發(fā)展,酒店計(jì)算機(jī)系統(tǒng)的發(fā)展到了一個(gè)新的時(shí)期,新的系統(tǒng)平臺(tái)、新的軟件功能、新的系統(tǒng)特點(diǎn)及發(fā)展方向不斷涌現(xiàn)。1.5研究?jī)?nèi)容在項(xiàng)目
18、開(kāi)發(fā)之前,我做了認(rèn)真仔細(xì)的需求調(diào)查,考查了一些酒店的實(shí)際需求,和具體工作流程,進(jìn)行詳細(xì)的分析,然后經(jīng)過(guò)整理,列出了軟件的需求及應(yīng)該完成哪些模塊和功能。在本系統(tǒng)中我實(shí)現(xiàn)了對(duì)酒店的各項(xiàng)管理,具體功能如下:1管理員對(duì)預(yù)定房間的入住,退訂,退房。2管理員對(duì)未預(yù)定房間的入住,退房。3管理員對(duì)用戶(hù)信息的查看,刪除。4管理員對(duì)員工信息的查看,刪除。5管理員對(duì)系統(tǒng)留言的查看,刪除。6管理員對(duì)歷史信息的查看。7管理員對(duì)收費(fèi)信息的查看。8系統(tǒng)最大限度地實(shí)現(xiàn)了易安裝性、易維護(hù)性和易操作性。9系統(tǒng)運(yùn)行穩(wěn)定、安全可靠。1.6論文結(jié)構(gòu)1分析研究目的以及研究意義,最終確定研究?jī)?nèi)容。2簡(jiǎn)述程序設(shè)計(jì)所用相關(guān)知識(shí)以及語(yǔ)言,數(shù)據(jù)庫(kù)
19、和框架等。3仔細(xì)研究,進(jìn)行系統(tǒng)需求分析。-3-4明確項(xiàng)目模塊,系統(tǒng)框架,進(jìn)行系統(tǒng)概要設(shè)計(jì)。5仔細(xì)對(duì)功能進(jìn)行分析,進(jìn)行詳細(xì)設(shè)計(jì)。6系統(tǒng)的具體實(shí)現(xiàn),并詳細(xì)講述每個(gè)功能。7盡可能全面的進(jìn)行系統(tǒng)測(cè)試,找出不安定因素。-4-第2章相關(guān)知識(shí)簡(jiǎn)介2.1JAVA簡(jiǎn)介Java是由SunMicrosystems公司于1995年5月推出的Java程序設(shè)計(jì)語(yǔ)言和Java平臺(tái)的總稱(chēng),是一種簡(jiǎn)單的、面向?qū)ο蟮?、分布式的、解釋型的、健壯安全的、結(jié)構(gòu)中立的、可移植的、性能優(yōu)異、多線程的動(dòng)態(tài)語(yǔ)言,很多軟件就是用這個(gè)開(kāi)發(fā)出來(lái)的。Java分為三個(gè)體系:JavaSE標(biāo)準(zhǔn)版,JavaEE企業(yè)版,JavaME微型版。2.2JAVA概況J
20、ava的誕生是對(duì)傳統(tǒng)計(jì)算機(jī)模式的挑戰(zhàn),對(duì)計(jì)算機(jī)軟件開(kāi)發(fā)和軟件產(chǎn)業(yè)都產(chǎn)生了深遠(yuǎn)的影響,基于構(gòu)建開(kāi)發(fā)方法的崛起,引出了CORBA國(guó)際標(biāo)準(zhǔn)軟件體系結(jié)構(gòu)和多層應(yīng)用體系框架。在此基礎(chǔ)上形成了Java平臺(tái)和.NET平臺(tái)兩大派系,推動(dòng)了整個(gè)IT業(yè)的發(fā)展。對(duì)軟件產(chǎn)業(yè)和工業(yè)企業(yè)都產(chǎn)生了深遠(yuǎn)的影響,軟件從以開(kāi)發(fā)為中心轉(zhuǎn)到了以服務(wù)為中心。中間提供商,構(gòu)件提供商,服務(wù)器軟件以及咨詢(xún)服務(wù)商出現(xiàn)。企業(yè)必須重塑自我,B2B的電子商務(wù)將帶動(dòng)整個(gè)新經(jīng)濟(jì)市場(chǎng),使企業(yè)獲得新的價(jià)值,新的增長(zhǎng),新的商機(jī),新的管理。對(duì)軟件開(kāi)發(fā)帶來(lái)了新的革命,重視使用第三方構(gòu)件集成,利用平臺(tái)的基礎(chǔ)設(shè)施服務(wù),實(shí)現(xiàn)開(kāi)發(fā)各個(gè)階段的重要技術(shù),重視開(kāi)發(fā)團(tuán)隊(duì)的組織和
21、文化理念,協(xié)作,創(chuàng)作,責(zé)任,誠(chéng)信是人才的基本素質(zhì)??傊壳耙钥吹搅薐ava對(duì)信息時(shí)代的重要性,未來(lái)還會(huì)不斷發(fā)展,Java在應(yīng)用方面將會(huì)有更廣闊的前景。2.2.1JAVA的特點(diǎn)1語(yǔ)言簡(jiǎn)單Java丟棄了C+中很少使用的、很難理解的、令人迷惑的那些特性,并提供了自動(dòng)的廢料收集,使得程序員不必為內(nèi)存管理而擔(dān)憂。-5-2面向?qū)ο驤ava語(yǔ)言提供類(lèi)、接口和繼承等原語(yǔ),為了簡(jiǎn)單起見(jiàn),只支持類(lèi)之間的單繼承,但支持接口之間的多繼承,并支持類(lèi)與接口之間的實(shí)現(xiàn)機(jī)制。3語(yǔ)言是分布式它提供了用于網(wǎng)絡(luò)應(yīng)用編程的類(lèi)庫(kù),包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(遠(yuǎn)程
22、方法激活)機(jī)制也是開(kāi)發(fā)分布式應(yīng)用的重要手段。4語(yǔ)言是可移植的Java系統(tǒng)本身也具有很強(qiáng)的可移植性,Java編譯器是用Java實(shí)現(xiàn)的,Java的運(yùn)行環(huán)境是用ANSIC實(shí)現(xiàn)的。5語(yǔ)言是多線程的在Java語(yǔ)言中,線程是一種特殊的對(duì)象Thread類(lèi)已經(jīng)實(shí)現(xiàn)了Runnable接口,因此,任何一個(gè)線程均有它的run方法,而run方法中包含了線程所要運(yùn)行的代碼。6異常處理機(jī)制為了使Java程式更穩(wěn)定、更安全,Java引入了異常處理機(jī)制。能夠在程序中產(chǎn)生異常情況的地方,執(zhí)行相對(duì)應(yīng)的處理,不至于因突發(fā)或意外的錯(cuò)誤造成執(zhí)行中斷或是死機(jī)。2.2.2JAVA的優(yōu)勢(shì)Java編程是面向?qū)ο蟮模褂盟幊?,可以幫助我們了?/p>
23、需求,定制功能更為強(qiáng)大的軟件更好地為客戶(hù)服務(wù)。并且擁有語(yǔ)言動(dòng)態(tài),語(yǔ)言可移植語(yǔ)言可拓展、通用性強(qiáng)和易于擴(kuò)充等優(yōu)勢(shì)。2.2.3JAVA的應(yīng)用X圍Java主要針對(duì)企業(yè)級(jí)用戶(hù),適合一些企業(yè)級(jí)的開(kāi)發(fā),可以開(kāi)發(fā)優(yōu)秀的企業(yè)級(jí)平臺(tái)的的程序、高效靈活的文件操作程序、高效靈活的數(shù)據(jù)庫(kù)操作程序??傊?,Web應(yīng)用、移動(dòng)設(shè)備、嵌入式設(shè)備、Linux客戶(hù)端管理工具等應(yīng)用方面,Java有不可比擬的功能。-6-2.3MySql簡(jiǎn)介2.3.1MySQL應(yīng)用概述SQL的全稱(chēng)是StructuredQueryLanguage,即結(jié)構(gòu)化查詢(xún)語(yǔ)言。SQL語(yǔ)句可以從關(guān)系數(shù)據(jù)庫(kù)中獲得數(shù)據(jù),也可以建立數(shù)據(jù)庫(kù)、增加數(shù)據(jù)、修改數(shù)據(jù)。1986年AN
24、SI采用SQL語(yǔ)言作為關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)的標(biāo)準(zhǔn)語(yǔ)言,后被國(guó)際化標(biāo)準(zhǔn)組織(ISO)采納為國(guó)際標(biāo)準(zhǔn)。SQL語(yǔ)言是一種非過(guò)程化語(yǔ)言,它一次處理一個(gè)記錄集合,對(duì)數(shù)據(jù)提供自動(dòng)導(dǎo)航。SQL語(yǔ)言允許用戶(hù)在高層的數(shù)據(jù)結(jié)構(gòu)上工作,而不對(duì)單個(gè)記錄進(jìn)行操作。SQL語(yǔ)言不要求用戶(hù)指定數(shù)據(jù)的存取方法,而是使用查詢(xún)優(yōu)化器,由系統(tǒng)決定對(duì)指定數(shù)據(jù)存取的最快速手段。SQL語(yǔ)言可以完成許多功能,例如:查詢(xún)數(shù)據(jù);在數(shù)據(jù)庫(kù)表格中插入、刪除和修改記錄;建立、修改和刪除數(shù)據(jù)對(duì)象;控制對(duì)數(shù)據(jù)和數(shù)據(jù)對(duì)象的存取。2.3.2MySQL的優(yōu)勢(shì)1使用了多種編譯器進(jìn)行測(cè)試,保證源代碼的可移植性。2支持AIX、FreeBSD、HP-UX、Linux、Mac
25、OS、NovellNetware、OS/2Wrap、Solaris、Windows等多種操作系統(tǒng)。3為多種編程語(yǔ)言提供了API。這些編程語(yǔ)言包括C、C+、Python、Java、Perl、PHP、Eiffel、Ruby等。4支持多線程,充分利用CPU資源。5優(yōu)化的SQL查詢(xún)算法,有效地提高查詢(xún)速度。6提供TCP/IP、ODBC和JDBC等多種數(shù)據(jù)庫(kù)連接途徑。7提供用于管理、檢查、優(yōu)化數(shù)據(jù)庫(kù)操作的管理工具。8可以處理?yè)碛猩锨f(wàn)條記錄的大型數(shù)據(jù)庫(kù)。2.4SSH框架概述針對(duì)當(dāng)前Web應(yīng)用程序開(kāi)發(fā)面臨的問(wèn)題,結(jié)合目前比較流行的開(kāi)源框-7-架Spring、Struts和Hibernate,提出了一種開(kāi)發(fā)
26、J2EEWeb應(yīng)用的輕量級(jí)解決方案,以幫助開(kāi)發(fā)人員在短期內(nèi)搭建結(jié)構(gòu)清晰、可復(fù)用性好、維護(hù)方便的Web應(yīng)用程序。并且,通過(guò)案例具體說(shuō)明了如何將這一方案應(yīng)用到實(shí)際項(xiàng)目中。大型企業(yè)級(jí)Web應(yīng)用系統(tǒng)的開(kāi)發(fā)通常要求有一個(gè)良好的軟件架構(gòu)、便于協(xié)作開(kāi)發(fā)和擴(kuò)展升級(jí),而傳統(tǒng)的開(kāi)發(fā)模式不能很好地滿足這些要求。本文針對(duì)當(dāng)前Web應(yīng)用程序開(kāi)發(fā)面臨的問(wèn)題,結(jié)合目前比較流行的開(kāi)源框架SSH,提出一種開(kāi)發(fā)J2EE企業(yè)級(jí)Web應(yīng)用的輕量級(jí)解決方案,并通過(guò)案例具體說(shuō)明如何將這一方案應(yīng)用到實(shí)際項(xiàng)目中。目前,市場(chǎng)上出現(xiàn)了一些商業(yè)的、開(kāi)源的基于J2EE的應(yīng)用框架,其中主流的框架技術(shù)有:基于MVC模式的Struts框架和基于IoC模式
27、的Spring框架以及對(duì)象/關(guān)系映射框架Hibernate等。2.4.1SSH的機(jī)制Struts是一個(gè)在JSPModel2基礎(chǔ)上實(shí)現(xiàn)的MVC框架,主要分為模型、視圖和控制器三部分,其主要的設(shè)計(jì)理念是通過(guò)控制器將表現(xiàn)邏輯和業(yè)務(wù)邏輯解耦,以提高系統(tǒng)的可維護(hù)性、可擴(kuò)展性和可重用性。Spring是一個(gè)解決了許多J2EE開(kāi)發(fā)中常見(jiàn)問(wèn)題并能夠替代E技術(shù)的強(qiáng)大的輕量級(jí)框架。這里所說(shuō)的輕量級(jí)指的是Spring框架本身,而不是指Spring只能用于輕量級(jí)的應(yīng)用開(kāi)發(fā)。Spring的輕盈體現(xiàn)在其框架本身的基礎(chǔ)結(jié)構(gòu)以及對(duì)其他應(yīng)用工具的支持和裝配能力。Hibernate有自己的面向?qū)ο蟮牟樵?xún)語(yǔ)言HQL,HQL功能強(qiáng)大,
28、支持目前大部分主流的數(shù)據(jù)庫(kù),如Oracle、DB2、MySQL、MicrosoftSQLServer等,是目前應(yīng)用最廣泛的O/R映射工具。Hibernate為快速開(kāi)發(fā)應(yīng)用程序提供了底層的支持。-8-2.4.2SSH的特點(diǎn)典型的J2EE三層結(jié)構(gòu),分為表現(xiàn)層、中間層(業(yè)務(wù)邏輯層)和數(shù)據(jù)服務(wù)層。三層體系將業(yè)務(wù)規(guī)則、數(shù)據(jù)訪問(wèn)及合法性校驗(yàn)等工作放在中間層處理。客戶(hù)端不直接與數(shù)據(jù)庫(kù)交互,而是通過(guò)組件與中間層建立連接,再由中間層與數(shù)據(jù)庫(kù)交互。表現(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+Hibe
29、rnate,為了將控制層與業(yè)務(wù)邏輯層分離,又細(xì)分為以下幾種。Web層,就是MVC模式里面的controller,負(fù)責(zé)控制業(yè)務(wù)邏輯層與表現(xiàn)層的交互,調(diào)用業(yè)務(wù)邏輯層,并將業(yè)務(wù)數(shù)據(jù)返回給表現(xiàn)層作組織表現(xiàn),該系統(tǒng)的MVC框架采用Struts。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ù)的增、刪、查、改的操作。PO,持久化對(duì)象。通過(guò)實(shí)體關(guān)系映射工具將關(guān)系型數(shù)據(jù)庫(kù)的數(shù)據(jù)映射成對(duì)象,很方便地實(shí)現(xiàn)以面向?qū)ο蠓绞讲僮鲾?shù)據(jù)庫(kù),該系統(tǒng)采用Hibernate作為ORM框架。S
30、pring的作用貫穿了整個(gè)中間層,將Web層、Service層、DAO層及PO無(wú)縫整合,其數(shù)據(jù)服務(wù)層用來(lái)存放數(shù)據(jù)。2.4.3SSH的工作流程初始化COM庫(kù),引入ADO庫(kù)定義文件,用Connection對(duì)象連接數(shù)據(jù)庫(kù);利用建立好的連接,通過(guò)Connection,Commend對(duì)象執(zhí)行SQL命令或利用Recordset對(duì)象取得結(jié)果記錄集進(jìn)行查詢(xún)處理,使用完畢后關(guān)閉連接釋放對(duì)象。ADO編程模型被設(shè)計(jì)成你只需集中完成兩項(xiàng)簡(jiǎn)單的任務(wù),即可完成對(duì)數(shù)據(jù)的絕大部分的操作:1初始化COM庫(kù),引入ADO庫(kù)定義文件。2用Connection對(duì)象連接數(shù)據(jù)庫(kù)。-9-3利用建立好的連接,通過(guò)Connection、Comm
31、and對(duì)象執(zhí)行命令。4利用Recordset對(duì)象取得結(jié)果記錄集進(jìn)行查詢(xún)、處理。5使用完畢后關(guān)閉連接釋放對(duì)象。2.5本章小結(jié)本章開(kāi)始介紹了系統(tǒng)開(kāi)發(fā)所涉及到的語(yǔ)言,框架和數(shù)據(jù)庫(kù),并詳細(xì)介紹了這些開(kāi)發(fā)工具的相關(guān)信息,并根據(jù)這些深入研究,為程序?qū)崿F(xiàn)奠定了基礎(chǔ)。介紹了開(kāi)發(fā)這套管理系統(tǒng)的技術(shù)相關(guān)框架及主要開(kāi)發(fā)工具進(jìn)行了概要的介紹,通過(guò)需求分析后,考慮到客戶(hù)的各種具體要求,制定了系統(tǒng)的基本功能,確定了系統(tǒng)的用戶(hù),及不同用戶(hù)的使用權(quán)限。方便管理員對(duì)相關(guān)環(huán)境的搭建及維護(hù)。-10-第3章需求分析3.1系統(tǒng)需求分析需求分析是軟件開(kāi)發(fā)目的的基礎(chǔ),只有正確的需求分析才能知道什么是要做的,也能明確今后的目標(biāo)是什么,才能去
32、具體的實(shí)現(xiàn),才能決定如何去綜合設(shè)計(jì),以規(guī)劃項(xiàng)目開(kāi)發(fā)進(jìn)度。在項(xiàng)目開(kāi)發(fā)過(guò)程中,需求分析是非常重要的。需求分析的主要任務(wù)是更詳盡的定義系統(tǒng)應(yīng)該完成的每一個(gè)邏輯功能4。隨著科技的發(fā)展以及人們生活質(zhì)量的提高,對(duì)酒店管理的優(yōu)化與研究勢(shì)在必行。酒店管理系統(tǒng)的用戶(hù)可以是用戶(hù),可以是員工也可以是管理員,實(shí)例包括用戶(hù)的預(yù)定,查詢(xún),員工的簽到,管理員的管理,查詢(xún)等主要功能。經(jīng)過(guò)相關(guān)的調(diào)查,要求在實(shí)例中的系統(tǒng)具有以下功能:1管理員對(duì)預(yù)定房間的接收入住,對(duì)現(xiàn)場(chǎng)用戶(hù)的直接入住,對(duì)離開(kāi)用戶(hù)的退房,對(duì)用戶(hù)的信息查詢(xún)和刪除,對(duì)員工的信息的查詢(xún)和刪除,對(duì)留言的查看和刪除,對(duì)歷史記錄的查看,對(duì)員工簽到的查看,對(duì)入賬資金的查看等一系
33、列功能。通過(guò)需求分析調(diào)查以后,考慮到酒店在處理每天遇到的大量數(shù)據(jù),比如查看人員、房間、資金、員工時(shí)的狀況,每天花費(fèi)大量的人力來(lái)進(jìn)行這方面的耗費(fèi),而且對(duì)資源的共享,任務(wù)分配,收費(fèi)前瞻方面更是缺乏科學(xué)的管理。所以本系統(tǒng)針對(duì)以上問(wèn)題有針對(duì)地列出了解決方案。房間管理人員管理信息管理管理員-11-圖3-1管理員角色用例圖如圖3-1所示。管理員是系統(tǒng)的高級(jí)使用者,能使用系統(tǒng)的所有功能,可以對(duì)系統(tǒng)的所有信息進(jìn)行瀏覽和修改。3.2可行性分析本次畢業(yè)設(shè)計(jì)的題目是運(yùn)用SSH技術(shù)實(shí)現(xiàn)酒店管理系統(tǒng),可行性分析是以相對(duì)短的時(shí)間和相對(duì)低的成本確定給定的問(wèn)題是否可行。為此,在技術(shù)可行性、經(jīng)濟(jì)可行性、操作可行性、維護(hù)可行性、
34、安全可行性等五個(gè)方面來(lái)進(jìn)行可行性分析。1技術(shù)可行性。計(jì)算機(jī)技術(shù)的飛速發(fā)展,Java技術(shù)的靈活,易用,功能強(qiáng)大,Java語(yǔ)言的方便實(shí)用以及現(xiàn)在流行的各種數(shù)據(jù)庫(kù)訪問(wèn)技術(shù)的廣泛應(yīng)用,給本系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)提供了技術(shù)上的支持。因此,要設(shè)計(jì)酒店管理系統(tǒng)可以用Java語(yǔ)言和Mysql結(jié)合MVC結(jié)構(gòu)進(jìn)行編輯來(lái)設(shè)計(jì)應(yīng)用程序。2經(jīng)濟(jì)可行性。由于有Java等技術(shù)的支持,使得本系統(tǒng)易于實(shí)現(xiàn),從而降低了開(kāi)發(fā)成本;同時(shí),在開(kāi)發(fā)過(guò)程中充分利用Java的MVC,使得數(shù)據(jù)處理和頁(yè)面現(xiàn)實(shí)分離開(kāi)來(lái),易于程序的開(kāi)發(fā)和今后的維護(hù);另外,及時(shí)處理各項(xiàng)費(fèi)用迎合現(xiàn)代酒店機(jī)構(gòu)的需求,有很大的發(fā)展?jié)摿Α?操作可行性。本酒店管理系統(tǒng)在房間預(yù)訂上做
35、了詳細(xì)地分析。滿足了中小型企業(yè)的業(yè)務(wù)要求,同時(shí)提供了查詢(xún)的功能,方便快速查找相關(guān)的信息。本系統(tǒng)的操作界面友好,擁護(hù)可以很快熟悉整個(gè)酒店管理系統(tǒng)的功能,便于操作。此外系統(tǒng)由于軟件技術(shù)先進(jìn),所以穩(wěn)定性強(qiáng),便于維護(hù)。因此,本醫(yī)院收費(fèi)系統(tǒng)滿足操作可行性要求。4維護(hù)可行性。Java技術(shù)的靈活,Java語(yǔ)言的方便實(shí)用以及現(xiàn)在流行的各種數(shù)據(jù)庫(kù)訪問(wèn)技術(shù)的廣泛應(yīng)用,本系統(tǒng)利用利用SSH輕量級(jí)框架將-12-邏輯層,業(yè)務(wù)層,表現(xiàn)層完美的分離,使得單獨(dú)維護(hù)某一部分變得輕松而簡(jiǎn)單,并且可以減少考慮對(duì)其它層的影響。5安全可行性。本酒店管理系統(tǒng)需經(jīng)過(guò)多方位的嚴(yán)格測(cè)試,會(huì)盡可能覆蓋更多的測(cè)試路徑,使其變得更加安全,更加適宜用
36、戶(hù)使用。3.3開(kāi)發(fā)模型軟件開(kāi)發(fā)模型的種類(lèi)繁多,有很多優(yōu)秀的開(kāi)發(fā)模型可供使用,我在開(kāi)發(fā)的過(guò)程中使用的是瀑布模型,瀑布模型核心思想是按工序?qū)?wèn)題化簡(jiǎn),將功能的實(shí)現(xiàn)與設(shè)計(jì)分開(kāi),便于分工協(xié)作,即采用結(jié)構(gòu)化的分析與設(shè)計(jì)方法將邏輯實(shí)現(xiàn)與物理實(shí)現(xiàn)分開(kāi)。將軟件生命周期劃分為制定計(jì)劃、需求分析、軟件設(shè)計(jì)、程序編寫(xiě)、軟件測(cè)試和運(yùn)行維護(hù)等六個(gè)基本活動(dòng),并且規(guī)定了它們自上而下、相互銜接的固定次序,如同瀑布流水,逐級(jí)下落。從本質(zhì)來(lái)講,它是一個(gè)軟件開(kāi)發(fā)架構(gòu),開(kāi)發(fā)過(guò)程是通過(guò)一系列階段順序展開(kāi)的,從系統(tǒng)需求分析開(kāi)始直到產(chǎn)品發(fā)布和維護(hù),每個(gè)階段都會(huì)產(chǎn)生循環(huán)反饋,因此,如果有信息未被覆蓋或者發(fā)現(xiàn)了問(wèn)題,那么最好“返回”上一個(gè)階段
37、并進(jìn)行適當(dāng)?shù)男薷?,開(kāi)發(fā)進(jìn)程從一個(gè)階段“流動(dòng)”到下一個(gè)階段,這也是瀑布開(kāi)發(fā)名稱(chēng)的由來(lái)1。瀑布模型是最早出現(xiàn)的軟件開(kāi)發(fā)模型,在軟件工程中占有重要的地位,它提供了軟件開(kāi)發(fā)的基本框架。其過(guò)程是從上一項(xiàng)活動(dòng)接收該項(xiàng)活動(dòng)的工作對(duì)象作為輸入,利用這一輸入實(shí)施該項(xiàng)活動(dòng)應(yīng)完成的內(nèi)容給出該項(xiàng)活動(dòng)的工作成果,并作為輸出傳給下一項(xiàng)活動(dòng)。同時(shí)評(píng)審該項(xiàng)活動(dòng)的實(shí)施,若確認(rèn),則繼續(xù)下一項(xiàng)活動(dòng)。否則返回前面,甚至更前面的活動(dòng)。3.4本章小結(jié)通過(guò)需求分析后,考慮到客戶(hù)的各種具體要求,制定了系統(tǒng)的基本功能,確定了系統(tǒng)的用戶(hù),及不同用戶(hù)的使用權(quán)限。并使用了原型開(kāi)發(fā)模型-13-進(jìn)行系統(tǒng)開(kāi)發(fā),為以后的開(kāi)發(fā)奠定了堅(jiān)實(shí)的基礎(chǔ)和理論依據(jù)。需求
38、分析在軟件的開(kāi)發(fā)中是非常關(guān)鍵的,一個(gè)軟件開(kāi)發(fā)成功與否需求分析起著很關(guān)鍵的作用。-14-第4章概要設(shè)計(jì)4.1項(xiàng)目規(guī)劃4.1.1系統(tǒng)模塊本次畢業(yè)設(shè)計(jì)的酒店管理系統(tǒng)功能結(jié)構(gòu)圖如下圖4-1所示。酒店管理系統(tǒng)由會(huì)員管理模塊和房間管理模塊組成,按照需求分析,規(guī)劃系統(tǒng)功能模塊如下。-15-圖4-1酒店管理系統(tǒng)功能結(jié)構(gòu)圖1會(huì)員管理模塊,該模塊可以實(shí)現(xiàn)以下功能:(1)會(huì)員管理。(2)會(huì)員信息查看。(3)增加會(huì)員。(4)刪除會(huì)員。2房間管理模塊,該模塊可以實(shí)現(xiàn)以下功能:(1)房間管理。(2)房間入住,并結(jié)賬。(3)房間預(yù)訂。(4)房間退訂。4.1.2系統(tǒng)構(gòu)架酒店管理系統(tǒng)的開(kāi)發(fā)采用的是B/S的體系結(jié)構(gòu),B/S(Br
39、owser/Server)結(jié)構(gòu)即瀏覽器和服務(wù)器結(jié)構(gòu)。它是隨著Internet技術(shù)的興起,對(duì)C/S結(jié)構(gòu)的一種變化或者改進(jìn)的結(jié)構(gòu)。在這種結(jié)構(gòu)下,用戶(hù)工作界面是通過(guò)瀏覽器來(lái)實(shí)現(xiàn),極少部分事務(wù)邏輯在前端實(shí)現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端實(shí)現(xiàn),形成所謂三層結(jié)構(gòu)。相對(duì)于C/S結(jié)構(gòu)屬于“胖”客戶(hù)端,需要在使用者電腦上安裝相應(yīng)的操作軟件來(lái)說(shuō),B/S結(jié)構(gòu)是屬于一種“瘦”客戶(hù)端,大多數(shù)或主要的業(yè)務(wù)邏輯都存在服務(wù)器端,因此,B/S結(jié)構(gòu)的系統(tǒng)不需要安裝客戶(hù)端軟件,它運(yùn)行在客戶(hù)端的瀏覽器之上,系統(tǒng)升級(jí)或維護(hù)時(shí)只需更新服務(wù)器端軟件即可,這樣就大大簡(jiǎn)化了客戶(hù)端電腦載荷,減輕了系統(tǒng)維護(hù)與升級(jí)的成本和工作量,降低了用戶(hù)的總體成本
40、。B/S結(jié)構(gòu)系統(tǒng)的產(chǎn)生為系統(tǒng)面對(duì)無(wú)限未知用戶(hù)提供了可能。當(dāng)然,與C/S結(jié)構(gòu)相比,B/S結(jié)構(gòu)也-16-存在著系統(tǒng)運(yùn)行速度較慢,訪問(wèn)系統(tǒng)的用戶(hù)不可控的弱點(diǎn)。以目前的技術(shù)看,它是一次性到位的開(kāi)發(fā),能實(shí)現(xiàn)不同的人員,從不同的地點(diǎn),以不同的接入方式(比如LAN,WAN,Internet/Intranet等)訪問(wèn)和操作共同的數(shù)據(jù)庫(kù);它能有效地保護(hù)數(shù)據(jù)平臺(tái)和管理訪問(wèn)權(quán)限,服務(wù)器數(shù)據(jù)庫(kù)也很安全。特別是在JAVA這樣的跨平臺(tái)語(yǔ)言出現(xiàn)之后,B/S架構(gòu)管理軟件更是方便、快捷、高效5。目前,軟件系統(tǒng)的改進(jìn)和升級(jí)越來(lái)越頻繁,B/S架構(gòu)的產(chǎn)品明顯體現(xiàn)著更為方便的特性。對(duì)一個(gè)稍微大一點(diǎn)的單位來(lái)說(shuō),系統(tǒng)管理人員如果需要在幾百
41、甚至上千部電腦之間來(lái)回奔跑,效率和工作量是可想而知的,但B/S架構(gòu)的軟件只需要管理服務(wù)器就行了,所有的客戶(hù)端只是瀏覽器,根本不需要做任何的維護(hù)。無(wú)論用戶(hù)的規(guī)模有多大,有多少分支機(jī)構(gòu)都不會(huì)增加任何維護(hù)升級(jí)的工作量,所有的操作只需要針對(duì)服務(wù)器進(jìn)行;如果是異地,只需要把服務(wù)器連接專(zhuān)網(wǎng)即可,實(shí)現(xiàn)遠(yuǎn)程維護(hù)、升級(jí)和共享。所以客戶(hù)機(jī)越來(lái)越“瘦”,而服務(wù)器越來(lái)越“胖”是將來(lái)信息化發(fā)展的主流方向。今后,軟件升級(jí)和維護(hù)會(huì)越來(lái)越容易,而使用起來(lái)會(huì)越來(lái)越簡(jiǎn)單,這對(duì)用戶(hù)人力、物力、時(shí)間、費(fèi)用的節(jié)省是顯而易見(jiàn)的,驚人的。因此,維護(hù)和升級(jí)革命的方式是“瘦”客戶(hù)機(jī),“胖”服務(wù)器。成本降低,選擇更多?,F(xiàn)在的趨勢(shì)是凡使用B/S架
42、構(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)的,這種選擇非常盛行。4.2項(xiàng)目設(shè)計(jì)本系統(tǒng)主要用于對(duì)中小型酒店進(jìn)行管理。具體講,酒店管理系統(tǒng)就是-17-通過(guò)對(duì)用戶(hù),員工,管理員相應(yīng)的實(shí)現(xiàn)一系列的功能來(lái)提高酒店的工作效率,最終達(dá)到發(fā)展目標(biāo)的一種管理行為。并且要求能達(dá)到快速實(shí)現(xiàn)用戶(hù)和管理的需求來(lái)提高效率,減少人力和物理的投入。4.3設(shè)計(jì)目標(biāo)具體實(shí)現(xiàn)目標(biāo)如下:(1
43、)管理員房間管理。(2)管理員人員管理。(3)管理員記錄查看。(4)管理員預(yù)訂管理。4.4開(kāi)發(fā)及運(yùn)行環(huán)境硬件平臺(tái):1CPU:amdx43.2GHz2內(nèi)存:2048MB以上軟件平臺(tái):1操作系統(tǒng):WindowsXP/Windowsvista2數(shù)據(jù)庫(kù):MySQL3開(kāi)發(fā)語(yǔ)言:JAVA4開(kāi)發(fā)框架:STRUTS2SPRINGHIBERNATE4.5本章小結(jié)本章開(kāi)始介紹了系統(tǒng)功能模塊和系統(tǒng)構(gòu)架,規(guī)定了項(xiàng)目的設(shè)計(jì)目標(biāo)及運(yùn)行環(huán)境,初步定義了數(shù)據(jù)庫(kù),制定出具體的數(shù)據(jù)庫(kù)中所包含的表及其保存的主要信息。-18-第5章詳細(xì)設(shè)計(jì)5.1系統(tǒng)總體分析5.1.1系統(tǒng)工作流程分析經(jīng)過(guò)需求分析和概要設(shè)計(jì)后的,認(rèn)真的對(duì)系統(tǒng)進(jìn)行了詳細(xì)
44、的設(shè)計(jì),分析了各個(gè)模塊的流程和步驟,并進(jìn)行了流程的系統(tǒng)分析和測(cè)試,繪出的系統(tǒng)工程流程圖總體工作流程圖,如圖5-1所示。圖5-1酒店管理系統(tǒng)的總體流程圖-19-5.1.2系統(tǒng)總體架構(gòu)系統(tǒng)開(kāi)發(fā)使用了B/S結(jié)構(gòu),即瀏覽器/服務(wù)器結(jié)構(gòu)。用戶(hù)工作界面是通過(guò)瀏覽器來(lái)實(shí)現(xiàn),極少部分事務(wù)邏輯在前端實(shí)現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端實(shí)現(xiàn),形成所謂三層MVC結(jié)構(gòu)。MVC將程序分成視圖層,邏輯層,模型層,這樣就大大簡(jiǎn)化了客戶(hù)端電腦載荷,減輕了系統(tǒng)維護(hù)與升級(jí)1的成本和工作量,降低了用戶(hù)的總體成本。綜上,本系統(tǒng)的具體架構(gòu)圖如下圖5-2所示。ControllerMODELVIEWSQLUSER圖5-2系統(tǒng)架構(gòu)圖1管理員操作
45、主要包括:管理房間,管理用戶(hù),管理員工,管理信息,管理資金,管理留言,管理記錄。5.2系統(tǒng)模塊劃分酒店管理系統(tǒng)是根據(jù)現(xiàn)代酒店和賓館的實(shí)際需求開(kāi)發(fā)而成,通過(guò)系統(tǒng)把將人員,資金,房屋,員工,顧客統(tǒng)一管理,形成了集成的信息源;既使得酒店管理人員的以擺脫繁重的日常工作,又使得酒店決策者集中精力從戰(zhàn)略的角度來(lái)考慮當(dāng)前和未來(lái)的經(jīng)費(fèi)規(guī)劃和管理政策。酒店管理系統(tǒng)主要為管理員模塊。5.2.1管理員模塊-20-管理員模塊主要應(yīng)能實(shí)現(xiàn):接收預(yù)定入住、立即入住、預(yù)定退訂、用戶(hù)退房、用戶(hù)信息管理、員工信息管理、簽到管理、資金查看、歷史記錄查看、系統(tǒng)留言管理等相應(yīng)管理,完善了酒店管理相應(yīng)職能,并且最大限度的優(yōu)化了人力和物
46、力。此模塊分為10個(gè)部分設(shè)計(jì):1預(yù)定入?。侯櫭剂x,該設(shè)計(jì)會(huì)顯示所有預(yù)定的用戶(hù),用回前來(lái)的時(shí)候查找相應(yīng)用戶(hù),收完房費(fèi)后,點(diǎn)擊“入住”即完成入住相關(guān)操作,并且資金自動(dòng)走賬到資金賬目,可以后期查看。2立即入住:立即入住就是對(duì)沒(méi)有經(jīng)過(guò)預(yù)定的用戶(hù)入住的功能,收取房費(fèi)后點(diǎn)擊“入住”,完成入住。3用戶(hù)信息管理:用戶(hù)信息管理實(shí)現(xiàn)了可以查詢(xún)用戶(hù)的信息,并且可以進(jìn)行刪除操作。4員工信息管理:?jiǎn)T工信息管理實(shí)現(xiàn)了可以查詢(xún)員工的信息,并且可以進(jìn)行刪除操作。5歷史記錄:該功能可以查看房間入住的歷史記錄。5.3數(shù)據(jù)庫(kù)設(shè)計(jì)本系統(tǒng)采用MySQL數(shù)據(jù)庫(kù)。數(shù)據(jù)的保存和保護(hù)是數(shù)據(jù)庫(kù)的工作,所以底層的引擎以一種保持?jǐn)?shù)據(jù)的完整性和有效
47、性的方式運(yùn)作是非常重要的,這意味著關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)必須檢查并拒絕任何無(wú)效數(shù)據(jù)進(jìn)入無(wú)保3護(hù)的實(shí)際數(shù)據(jù)庫(kù),所以在數(shù)據(jù)庫(kù)端強(qiáng)制執(zhí)行數(shù)據(jù)完整性是非常必要的。本系統(tǒng)使用的數(shù)據(jù)庫(kù)有很有效的數(shù)據(jù)保護(hù)功能,對(duì)數(shù)據(jù)安全有了基礎(chǔ)的保證。系統(tǒng)數(shù)據(jù)庫(kù)名為hotelmanagemen,t數(shù)據(jù)庫(kù)ycdb中包括8個(gè)數(shù)據(jù)表。數(shù)據(jù)表分別為:1用戶(hù)信息表(user),用來(lái)保存會(huì)員和管理員信息。2角色表(role),用來(lái)記錄用戶(hù)擔(dān)任角色和權(quán)限,例如管理員,員工,會(huì)-21-員。3房間信息表(room),用來(lái)保存房間狀態(tài),編號(hào),樓層,類(lèi)型等。4房間預(yù)訂表(orderroom),用來(lái)保存房間的預(yù)訂信息,預(yù)訂人XX等。5住房記錄表(li
48、verecord),用來(lái)保存住房記錄。若住房人為會(huì)員,將保存他的id.6房間類(lèi)型(roomtype),保存房間價(jià)格,相應(yīng)名稱(chēng)等信息。具體的數(shù)據(jù)庫(kù)中的數(shù)據(jù)表的信息如下。管理員信息表(user),用來(lái)保存用戶(hù)登陸的賬號(hào),密碼。表的結(jié)構(gòu)如表5-3所示。表5-3user表的結(jié)構(gòu)字段名稱(chēng)數(shù)據(jù)類(lèi)型長(zhǎng)度是否主鍵描述idint是編號(hào)usernameVarchar50否記錄賬號(hào)passwrodVarchar50否記錄密碼sexint1否性別ageint3否年齡nameVarchar20否真實(shí)XXidcardVarchar20否XXroleidint2否角色idregtimedate否注冊(cè)時(shí)間角色表(role),
49、用來(lái)保存角色信息。表的結(jié)構(gòu)如表5-4所示。表5-4role表的結(jié)構(gòu)-22-字段名稱(chēng)數(shù)據(jù)類(lèi)型長(zhǎng)度是否主鍵描述idInt11是編號(hào)nameVarchar20否角色名稱(chēng)quanxianint3否權(quán)限房間表(room),用來(lái)保存房間相關(guān)相關(guān)信息。表的結(jié)構(gòu)如表5-5所示。表5-5room表的結(jié)構(gòu)字段名稱(chēng)數(shù)據(jù)類(lèi)型長(zhǎng)度是否主鍵描述idInt11是idnumberint4否房間編號(hào)typeInt11否房間類(lèi)型idloucengint2否房間樓層idzhuangtaiint2否房間狀態(tài)房間預(yù)訂表(orderroom),用來(lái)保存房間預(yù)訂信息。結(jié)構(gòu)如表5-6所示。表5-6orderroom表的結(jié)構(gòu)字段名稱(chēng)數(shù)據(jù)類(lèi)型長(zhǎng)
50、度是否主鍵描述idInt11是編號(hào)uidint3否記錄會(huì)員用戶(hù)idroidint3否房間idnameVarchar20否訂房人名稱(chēng)-23-telint13否訂房人cometimedate否預(yù)訂入住時(shí)間regtimedate否預(yù)訂時(shí)間ifendint1否記錄是否不生效住房記錄表(liverecord),用來(lái)保存房間入住信息。表的結(jié)構(gòu)如表5-7所示。表5-7liverecord表的結(jié)構(gòu)字段名稱(chēng)數(shù)據(jù)類(lèi)型長(zhǎng)度是否主鍵描述idInt11是編號(hào)roidDatatime3否入住房間iduidSmallint3否會(huì)員用戶(hù)idnameVarchar20否入住名稱(chēng)ageint3否年齡sexint1否性別idcar
51、dVarchar20否XXsfTypeint3否收費(fèi)類(lèi)型pricefloat否價(jià)格regtimedate否入住時(shí)間房間類(lèi)型表(roomtype),用來(lái)保存房間類(lèi)型和相關(guān)價(jià)格。如:?jiǎn)稳似胀ǚ俊稳撕廊A房、雙人豪華房等。表的結(jié)構(gòu)如表5-8所示。-24-表5-8Users表的結(jié)構(gòu)字段名稱(chēng)數(shù)據(jù)類(lèi)型長(zhǎng)度是否主鍵描述idInt11是編號(hào)nameVarchar10否名稱(chēng)hourpriceSmallint6否每小時(shí)價(jià)格daypriceTinyint1否每天價(jià)格sppriceVarchar30否特價(jià)5.4本章小結(jié)本章詳細(xì)介紹了本系統(tǒng)使用的體系結(jié)構(gòu),在此之上具體分析每個(gè)用到的工具核技術(shù)之間的關(guān)系,使系統(tǒng)的整體體系
52、構(gòu)架清晰明了。然后劃詳細(xì)分了用戶(hù)操作框架,細(xì)分了系統(tǒng)的各個(gè)功能模塊,并且對(duì)每個(gè)功能模塊的功能細(xì)分到底層,用來(lái)與后臺(tái)數(shù)據(jù)庫(kù)進(jìn)行連接,為下面的系統(tǒng)實(shí)現(xiàn)打下了堅(jiān)實(shí)基礎(chǔ)。-25-第6章系統(tǒng)實(shí)現(xiàn)本次課程設(shè)計(jì)開(kāi)發(fā)工具選用的是JAVA,數(shù)據(jù)庫(kù)是使用的是MySQL數(shù)據(jù)庫(kù)。該程序是建立在MVC三層結(jié)構(gòu)基礎(chǔ)之上的。本系統(tǒng)基于B/S結(jié)構(gòu),采用結(jié)合了JAVA、SSH、J2EE等技術(shù)模式進(jìn)行開(kāi)發(fā),在底層使用SQL數(shù)據(jù)庫(kù)管理系統(tǒng)實(shí)現(xiàn)。6.1系統(tǒng)結(jié)構(gòu)實(shí)現(xiàn)本系統(tǒng)采用MVC三層結(jié)構(gòu)進(jìn)行設(shè)計(jì),這三層分別是表示層,業(yè)務(wù)層和持久層。表示層中所執(zhí)行的內(nèi)容主要有:利用JSP實(shí)現(xiàn)頁(yè)面間的交互,Service用來(lái)接收用戶(hù)提交的表單等信息,然
53、后Struts-confing.xml將接收到的信息交給Action處理。在業(yè)務(wù)層中,Spring向Action提供數(shù)據(jù)處理DAO完成業(yè)務(wù)邏輯,并提供事務(wù)處理,在持久層中,Hibernate對(duì)象化映射和數(shù)據(jù),交互處理Dao請(qǐng)求的數(shù)據(jù)并返回結(jié)果。設(shè)計(jì)中涉及到了幾個(gè)主要的Java文件,包括Action,Vo,Dao,Service,下面對(duì)這些文件做簡(jiǎn)單介紹。Action:提交表單后通過(guò)xml文件交給Action處理,先倒入U(xiǎn)ser等一系列的類(lèi)所在的包,其后實(shí)例化一個(gè)對(duì)象,數(shù)據(jù)從頁(yè)面獲取來(lái)之后執(zhí)行set方法設(shè)置這個(gè)對(duì)象,然后執(zhí)行save方法,執(zhí)行save操作必須注入相應(yīng)的Service才能調(diào)用相應(yīng)的
54、save方法。Service:該文件在需要用到的時(shí)候調(diào)用Dao接口實(shí)現(xiàn)增,刪,改,查的相應(yīng)操作,完成與數(shù)據(jù)庫(kù)的聯(lián)動(dòng)操作。Vo:該文件是做出的Java文件,定義了各個(gè)類(lèi)的實(shí)例,并寫(xiě)入了相應(yīng)的get和set方法。Dao:Dao是一個(gè)interface接口,該接口定義了增,刪,改,查的方法,以及接口的實(shí)現(xiàn)。-26-從系統(tǒng)目的出發(fā)按照一定規(guī)律組織起來(lái)的、相互關(guān)聯(lián)的系統(tǒng)元素的集合。從最基本的意義來(lái)說(shuō),系統(tǒng)是由相互關(guān)聯(lián)的元素構(gòu)成的。在與數(shù)據(jù)庫(kù)的聯(lián)系過(guò)程中主要用到的是Service,它通過(guò)調(diào)用Dao實(shí)現(xiàn)了與數(shù)據(jù)庫(kù)的聯(lián)動(dòng),在Service中,寫(xiě)了相應(yīng)的類(lèi)以及成員函數(shù)等。通常狀況下,類(lèi)的成員變量與對(duì)應(yīng)的表中的列
55、名相同。絕大多數(shù)成員函數(shù)所實(shí)現(xiàn)的功能各不相同,但是他們的編碼格式很多都是非常相似的,所以在這里只介紹部分類(lèi)中成員函數(shù)的基本功能,并不對(duì)所有成員函數(shù)進(jìn)行具體的代碼分析,下面介紹包括user類(lèi),worker類(lèi)在內(nèi)的部分類(lèi)和類(lèi)的成員函數(shù)及函數(shù)的功能。1UserDao類(lèi)UserDao類(lèi)用進(jìn)行與表user表,room表,advice表等的數(shù)據(jù)庫(kù)操作,它的成員函數(shù)如表6-1所示。表6-1UserDao類(lèi)的成員函數(shù)函數(shù)名具體說(shuō)明saveUser該函數(shù)主要用于用戶(hù)注冊(cè)功能,用戶(hù)填寫(xiě)個(gè)人資料后,進(jìn)行相應(yīng)的保存。removeUser該函數(shù)主要用于查詢(xún)用戶(hù)信息,在用戶(hù)登錄的時(shí)候用來(lái)判斷賬號(hào)密碼是否正確。findUs
56、erById該函數(shù)根據(jù)id獲取用戶(hù)指定信息。findAllUser該函數(shù)主獲取是所有用戶(hù)信息列表updateUser該函數(shù)主要用于更新用戶(hù)信息。checkUser該函數(shù)主要用于檢測(cè)用戶(hù)賬號(hào)密碼2RoomDao類(lèi)-27-RoomDao類(lèi)用對(duì)room表進(jìn)行操作表6-3AdminDao類(lèi)的成員函數(shù)函數(shù)名具體說(shuō)明saveRoom該函數(shù)主要用于新增房間removeRoom該函數(shù)主要用于刪除房間findRoomById該函數(shù)根據(jù)id獲取房間指定信息。findAllRoom該函數(shù)主獲取是所有房間信息列表updateRoom該函數(shù)主要用于更新房間信息。findsearchRoom該函數(shù)主要用于刷選房間信息。6
57、.2管理員模塊實(shí)現(xiàn)管理員模塊是該系統(tǒng)中比較主要的一個(gè)模塊,大部分關(guān)于用戶(hù)和員工的實(shí)現(xiàn)功能都與管理員模塊密切相關(guān),例如用戶(hù)的注冊(cè)信息和員工的注冊(cè)信息都通過(guò)管理員模塊來(lái)查看和控制,用戶(hù)的系統(tǒng)留言也通過(guò)管理員模塊來(lái)進(jìn)行留言的查看和管理,員工的簽到紀(jì)律等相關(guān)信息也都是通過(guò)管理員模塊來(lái)查看,房間的各種記錄更是通過(guò)該模塊來(lái)進(jìn)行相應(yīng)的控制的,所以說(shuō)本模塊起著主導(dǎo)作用,本模塊要實(shí)現(xiàn)立即入住,預(yù)定入住,用戶(hù)退房,用戶(hù)和員工的信息管理,歷史記錄,資金記錄,查看留言,查看簽到,房間管理等。6.2.1房間刷選實(shí)現(xiàn)房間刷選功能實(shí)現(xiàn),如圖6-13所示。1選擇房間類(lèi)型,例如雙人豪華套房2選擇樓層。3點(diǎn)擊相應(yīng)狀態(tài)刷選房間-2
58、8-圖6-13房間刷選界面6.2.2立即入住實(shí)現(xiàn)房間列表界面上點(diǎn)擊空置房間圖標(biāo),轉(zhuǎn)入立即入住界面。立即入住功能實(shí)現(xiàn)了對(duì)直接來(lái)到酒店入住的客戶(hù)的管理功能,輸入登記人XX,身份證相關(guān)信息,點(diǎn)擊登記。即可記錄入住信息,相應(yīng)房間將改為已入住狀態(tài),如圖6-13所示。-29-圖6-13立即入住界面6.2.3預(yù)定入住實(shí)現(xiàn)預(yù)定入住功能實(shí)現(xiàn)了輸入相應(yīng)信息預(yù)訂,如圖6-14所示。-30-圖6-14預(yù)定入住界面6.2.4用戶(hù)退房實(shí)現(xiàn)用戶(hù)退房功能實(shí)現(xiàn)了入住酒店的客戶(hù)離開(kāi)時(shí)的管理功能,并且當(dāng)入并且同時(shí)將歷史記錄寫(xiě)入,點(diǎn)擊右圖結(jié)賬按鈕進(jìn)入相關(guān)結(jié)賬界面,如圖6-15所示。圖6-15用戶(hù)退房界面6.3本章小結(jié)本章對(duì)整個(gè)系統(tǒng)進(jìn)
59、行全面的開(kāi)發(fā)和編碼,根據(jù)之前的準(zhǔn)備對(duì)各個(gè)模塊進(jìn)行了編碼,實(shí)現(xiàn)了各模塊的功能,并建立了數(shù)據(jù)庫(kù)的數(shù)據(jù)表,對(duì)數(shù)據(jù)庫(kù)進(jìn)行了連接。-31-第7章系統(tǒng)測(cè)試軟件測(cè)試是軟件質(zhì)量管理中最實(shí)際的行動(dòng)。軟件測(cè)試是有組織性、步驟性和計(jì)劃性的。軟件測(cè)試的種類(lèi)可以根據(jù)測(cè)試形態(tài)、測(cè)試技術(shù)及測(cè)試模式來(lái)進(jìn)行劃分。就測(cè)試模式而言,測(cè)試方法可分為兩種:白盒測(cè)試和黑盒測(cè)試。這兩種方法的測(cè)試方向是不同的,白盒測(cè)試以測(cè)試的深度為主,而黑盒測(cè)試則是以測(cè)試的廣度為主。白盒測(cè)試:又稱(chēng)結(jié)構(gòu)測(cè)試,透明盒測(cè)試、邏輯驅(qū)動(dòng)測(cè)試或基于代碼的測(cè)試。白盒測(cè)試是一種測(cè)試用例設(shè)計(jì)方法,盒子指的是被測(cè)試的軟件,白盒指的是盒子是可視的,你清楚盒子內(nèi)部的東西以及里面是
60、如何運(yùn)作的。嚴(yán)格來(lái)說(shuō)白盒測(cè)試有兩大方面:數(shù)據(jù)流面和控制流面。數(shù)據(jù)流面就是測(cè)試資料進(jìn)出系統(tǒng)的程序所經(jīng)過(guò)的流程,控制流程面就是測(cè)試程序在執(zhí)行過(guò)程中每個(gè)階段的流程??刂屏鞒堂嬗幸韵滤狞c(diǎn):1語(yǔ)句覆蓋:每一個(gè)程序句述都被執(zhí)行到。2分支覆蓋:每一個(gè)程序的進(jìn)出點(diǎn)都至少被執(zhí)行過(guò)一次。3條件覆蓋:分支覆蓋再加上所有判斷情況都至少被執(zhí)行過(guò)一次。4條件組合覆蓋:不同的組合的判斷情況都至少被執(zhí)行過(guò)一次。黑盒測(cè)試:又稱(chēng)為功能測(cè)試或數(shù)據(jù)驅(qū)動(dòng)測(cè)試,是把測(cè)試對(duì)象看作一個(gè)黑盒子。測(cè)試人員并不需要對(duì)軟件的結(jié)構(gòu)有深層的了解,所進(jìn)行測(cè)試著重與軟件的功能。為了控制黑盒測(cè)試的執(zhí)行,測(cè)試人員必須按照測(cè)試用例逐一進(jìn)行,所以測(cè)試用例設(shè)計(jì)的好壞
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 課題申報(bào)參考:教育公平與合作學(xué)習(xí)研究
- 二零二五年度鐵路旅客運(yùn)輸合同修訂版2篇
- 2025版圖書(shū)電子文檔txt下載代理授權(quán)合同3篇
- 二零二五年高校創(chuàng)新創(chuàng)業(yè)基地入駐服務(wù)合同3篇
- 2025年度個(gè)人小產(chǎn)權(quán)房屋買(mǎi)賣(mài)合同范本與稅務(wù)籌劃要點(diǎn)4篇
- 二零二五年度4S店汽車(chē)銷(xiāo)售區(qū)域代理合同范本3篇
- 二零二五版智慧交通管理系統(tǒng)建設(shè)與運(yùn)營(yíng)協(xié)議3篇
- 二零二五年度馬鈴薯深加工廢棄物資源化利用合同4篇
- 二零二五年度創(chuàng)新型企業(yè)房屋租賃合同書(shū)
- 2025年度平房出租與城市可持續(xù)發(fā)展合作協(xié)議4篇
- 第1課 隋朝統(tǒng)一與滅亡 課件(26張)2024-2025學(xué)年部編版七年級(jí)歷史下冊(cè)
- 2025-2030年中國(guó)糖醇市場(chǎng)運(yùn)行狀況及投資前景趨勢(shì)分析報(bào)告
- 冬日暖陽(yáng)健康守護(hù)
- 水處理藥劑采購(gòu)項(xiàng)目技術(shù)方案(技術(shù)方案)
- 2024級(jí)高一上期期中測(cè)試數(shù)學(xué)試題含答案
- 盾構(gòu)標(biāo)準(zhǔn)化施工手冊(cè)
- 山東省2024-2025學(xué)年高三上學(xué)期新高考聯(lián)合質(zhì)量測(cè)評(píng)10月聯(lián)考英語(yǔ)試題
- 不間斷電源UPS知識(shí)培訓(xùn)
- 三年級(jí)除法豎式300道題及答案
- 人教版八級(jí)物理下冊(cè)知識(shí)點(diǎn)結(jié)
- 2024年江蘇省徐州市中考一模數(shù)學(xué)試題(含答案)
評(píng)論
0/150
提交評(píng)論