酒店客房管理系统_第1页
酒店客房管理系统_第2页
酒店客房管理系统_第3页
酒店客房管理系统_第4页
酒店客房管理系统_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

酒店客房管理系统摘要随着信息需求的增长,传统的信息交流方式早已不能满足企业对传递和处理大量信息的需要,因而亟需把网络技术渗透到日常生活中。在当代快速发展的社会里,无处不见酒店,酒店客房管理系统的开发势在必行。随着计算机的普及和计算机科学技术的飞速发展,人们开始越来越多地利用计算机解决实际问题。酒店面对大量的预定,入住以及人员管理和历史记录的查询等问题,采用原始方式处理既浪费时间、又浪费人力和物力,并且数据的准确性低,所以酒店管理系统的出现起到了很重要的作用。因此,总结前人的经验,开发交互性好,易于操作的酒店管理系统进行自动化处理变得十分重要。此系统实现了用户对客房的预定、用户自身信息的查询、管理员对预定的处理、管理员对入住的接收,管理员对信息的查询,管理员对历史记录的查询,以及管理员对人员的管理等功能,实现了易安装性、易维护性和易操作性,并且系统运行稳定、安全。酒店管理系统的应用对酒店起到了重要的作用。此系统是对酒店前台的业务进行管理,对某些环节进行了优化,提高了工作效率,使酒店管理者能够及时了解收费状况等许多必要的信息,提高酒店的工作效率和竞争力。本毕业设计的内容是设计并且实现一个基于WEB技术的酒店客房管理系统,该系统主要以J2EE作为开发基础,主要使用了STRUTS2SPRINGHIBERNATE等多种框架的结合使用,用MYECLIPSE作为开发工具,以MYSQL作为数据库,以MACROMEDIA公司的DREAMWEAVER作为界面美化工具,使用JAVA语言开发,页面采取JSP动态页面开发技术。该系统界面简单、操作方便,易于维护。关键词酒店客房管理系统;SSH框架;MYSQL数据库;JAVA语言;JSPHOTELMANAGEMENTSYSTEMABSTRACTWITHTHEGROWTHINDEMANDFORINFORMATION,THETRADITIONALWAYOFINFORMATIONEXCHANGECANNOTMEETTHEENTERPRISENEEDTOTRANSMITANDPROCESSALOTOFINFORMATION,HENCETHENEEDTOPUTTHENETWORKTECHNOLOGYINTODAILYLIFEINTODAYSBUSYSOCIETY,INFORMATIONHASBECOMEMOREANDMOREPOPULARWITHTHEPOPULARITYOFCOMPUTERANDRAPIDDEVELOPMENTOFCOMPUTERSCIENCEANDTECHNOLOGY,MOREANDMOREPEOPLEAREUSINGCOMPUTERSTOSOLVEPRACTICALPROBLEMSTHEAPPLICATIONOFHOTELMANAGEMENTPLAYSAVERYIMPORTANTROLEINTHEFACEOFALARGENUMBEROFRESERVATIONSANDOCCUPANCY,ASWELLASPERSONNELMANAGEMENT,ANDHISTORICALRECORDSQUERY,HUMANPROCESSINGCANABSOLUTELYWASTETIME,ALONGWITHHUMANANDMATERIALRESOURCES,WHERETHEACCURACYOFTHEDATAISLOWTHEREFORE,DEVELOPINGAFRIENDLYINTERFACE,EASYOPERATIONOFTHEHOTELMANAGEMENTSYSTEMFORAUTOMATEDPROCESSINGBECOMESVERYIMPORTANT,WHICHISTHEPURPOSEANDSIGNIFICANCEOFTHISSYSTEMDEVELOPMENTTHISSYSTEMENABLESCUSTOMERSTOBOOKHOTELROOMS,ASKFORINFORMATION,LEAVEMESSAGEFORSYSTEMITALSOENABLESTHEADMINISTRATORTOTREATRESERVATIONS,RECEIVETHECHECKIN,LOOKFORINFORMATIONANDHISTORICRECORDS,ANDMANAGESTAFF,WHICHALSOINCLUDESTHEFUNCTIONSLIKESTAFFATTENDANCEITREALIZESTHEGOALOFEASYINSTALLATION,EASYMAINTENANCEANDEASYTOOPERATE,ANDTHESYSTEMISSTABLEANDSAFETHECONTENTSOFTHISGRADUATIONPROJECTISTODESIGNANDIMPLEMENTAWEBBASEDTECHNOLOGYSHARINGNETWORK,THISSYSTEMMAINLYUSESJ2EEASTHEBASISOFDEVELOPMENT,THEMAINUSEOFTHECOMBINEDUSEOFSTRUTS2SPRINGHIBERNATEANDOTHERFRAMEWORKS,MYECLIPSEASADEVELOPMENTTOOL,MYSQLASTHEDATABASE,USINGMACROMEDIASDREAMWEAVERASTHEINTERFACELANDSCAPINGTOOLS,THEUSEOFJAVALANGUAGEDEVELOPMENT,PAGETAKETHEDEVELOPMENTTECHNOLOGYOFJSPDYNAMICPAGESTHESYSTEMHASASIMPLEINTERFACE,EASYOPERATION,EASYMAINTENANCEKEYWORDSHOTELMANAGEMENTSYSTEMSSHFRAMEMYSQLDATABASEJAVALANGUAGEJSP目录摘要IABSTRACTII1绪论111课题研究的背景及意义112课题研究现状22系统的开发环境及技术简介321系统开发环境3211MYECLIPSE3212数据库简介3213TOMCAT322系统开发的思想和技术4221JAVA简介4222JSP技术与MVC模式以及系统的基本框架5223SSH框架523本章小结83系统概要设计931总体功能模块1032系统管理员的功能模块1033用户功能模块1134系统业务描述1135程序流程图1236本章小结124系统详细设计1341系统和数据库的配置1342概念模型设计1343数据库的逻辑模型1344数据库表结构1545平台数据表的设计1646本章小结195系统功能实现2051系统的类图20511客房分类FENLEI类图20512开房信息KAIFANG类图20513客房信息KEFANG类图21514用户USER类图21515预定YUDING类图2152程序的时序图22521房间分类模块时序图22522开房信息模块时序图23523客房信息模块时序图24524用户模块时序图24525预定模块时序图2553系统功能实现的主要框架26531SSH框架26532HIBERNATE配置文件26533STRUTS配置文件26534SPRING配置文件2754系统功能实现的主要模块28541系统登录页面28542普通用户注册页面29543系统管理员登录页面30544普通用户登录页面30545客房信息管理页面30546用户管理页面32547客房分类管理页面32548开房管理页面32549普通用户客房预定页面3355本章小结336系统测试3461软件测试的目的3462软件测试的任务3563测试环境3564测试环境的配置35641创建安装项目35642添加项目输出36643运行项目3765本章小结37结论38参考文献39致谢40外文原文41中文翻译481绪论11课题研究的背景及意义如今酒店管理系统已经成为一个酒店不可缺少的部分,它的功能对于企业的用户和管理者来说都是至关重要的,因此,酒店管理系统应该能够为用户提供方便的服务,充足的信息和快捷的查询手段,以往人们一直使用传统的人工方式管理,这种管理方式存在着许多缺点,诸如效率低,保密性差等,而且时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。随着科学技术的不断提高,计算机科学不断发展,其强大的功能已经被人们深刻认识,它已经进入了人类社会的各个领域并发挥着越来越重要的作用。基于SSH的酒店管理系统实现了信息及人员的全过程追踪和动态管理,从而做到简化预定客房过程,优化入住客房速度,改变以往排队多、等候时间长、秩序混乱的局面。同时酒店管理系统的实施也强化了酒店内部管理,降低了员工的工作强度和时间,人为因素造成的漏现象可以解决,也加速了处理速度,减少用户流程。酒店管理系统为管理者提供了收费状况和历史记录等许多有用的信息,也由于许多因素的影响如提供的信息是否充足,数据的处理是否快捷等,使得繁琐的管理在酒店运营中的地位越发重要,越来越多的人都在关心酒店管理的重要性问题。本系统作为一个管理信息平台,在一定程度上便是适应这样的发展的需求。在信息高速发展的今天,使用快速有效的工具和设备是所有行业保持领先优势的必须手段,为了更好的对酒店业务进行管理和协调,所以使用酒店管理系统是对酒店和宾馆有很多益处的,为了使系统能够很好的适应业务变化系统具有了良好的业务扩展和业务定制能力,解决了用户需求经常变化软件系统长期难以定型的问题,我对此进行了一些相关调查并开发实现了一个适用于中小型酒店和宾馆的管理系统。信息化的今天,酒店管理系统的应用,使高效率的酒店管理模式成为可能。通过本酒店客房管理系统,酒店的相关工作人员可以提高自身的工作效率,并且通过历史记录和收费纪录能够做好金钱的查询和协调工作;通过本酒店客房管理系统,酒店的决策者可以直接管理和运营相关的业务,有效地发现和挖掘前景,及时与自己的上级、下属、同行业单位进行的沟通与交流,同心协作,积极为酒店事业的发展与决策贡献力量。使酒店管理适应时代的发展要求,大大提高了在大量服务机构中的核心竟争力。使用酒店管理系统的意义1减少工作量,增加回头率。很多使用电子锁的宾馆,如果没有使用酒店客房管理系统,全部手写记账,那么老板每天都需要花大量时间进行对账查账,每次前台交接班也需要花费大量时间进行对账交账,如果使用了酒店客房管理系统,那么所有账目一目了然,每天总账,交接班账目,收支账目,甚至每月的详细账目和总账都清清楚楚。大大节约了时间,解放了老板,提高了效率。如果有酒店客房管理系统,但是没有和门锁软件进行连接,那么每次客人入住和离店都需要使用两个软件同时进行操作,增加了客人等待时间,降低了服务质量,不利于在客人心中留下好印象,也就不能增加客人回头率。两个软件进行操作,误操作概率大大增加,一不小心就在门锁软件上制一个房间的房卡,在管理软件上收银入账到另一房间上。2增加财务安全,减少管理漏洞。由于酒店客房管理系统和门锁软件用接口进行了连接,在实际使用中,不使用门锁软件,只使用酒店客房管理系统进行入住登记,收银,制卡,客房商品入账,前台商品入账,电话费自动入账,赔偿入账,退房,结账,客房和前台商品的进销存管理,会员卡管理,协议单位管理,预订房管理,远程账目管理等等。在酒店客房管理系统中,实行的是先进行收银入账,再进行房卡制作的工作流程,并且如果不进行收银入账,就不能进行房卡制作,所有在软件上的账目和操作记录都不能人工删除,这样的管理流程,做到了避免前台人员私自截留房费的可能,大大增加了老板的财务安全,减少了财务管理漏洞。在使用了酒店客房管理系统后,门锁软件的进入密码由老板保存,前台人员不再使用门锁软件。12课题研究现状国外的酒店管理系统最早是于70年代初发展起来的,到了80年代,国外的酒店管理系统,如EECO(ELECTRONICENGINEERINGCO)、HISHOTELINFORMATIONSYSTEM、CLS、LODGISTIX等,整个模式已基本定型,技术较成熟,功能也较齐全。现在,国外酒店正向个性化方向发展,酒店按其经营方式可分为商务型酒店、长住型酒店、度假型酒店等等;按其经营形式可分为独立经营酒店、集团经营酒店等。而且产生了一大批国际级的连锁酒店,如希尔顿(HILTONHOTELSCORP)、谢拉顿(SHERATONCORP)、假日(HOLIDAYCORP)、凯悦(HYATTHOTELCORP)等集团公司的连锁酒店。国内的酒店计算机管理系统最早是在80年代初开始的,从事该方面工作的有清华大学自动化系的金国芬教授、西安交大和浙江省计算机技术研究所。到了80年代中后期,随着国外酒店计算机系统和先进管理技术的大规模引进,进一步促进了我国酒店管理技术的发展。国内酒店管理系统正是在充分吸收国外管理系统的精华,结合国内实际的情况下逐步发展成熟,到90年代初期形成了几个较成熟的软件系统,同时产生了许多专职从事酒店计算机管理系统的公司。其中比较有影响的有杭州西欧FOXHIS饭店管理系统、北京中软好泰CSHIS管理系统、北京华仪饭店管理系统和广州万迅千里马饭店管理系统。到了21世纪,随着计算机在饭店中的普及应用,以及计算机技术的不断发展,酒店计算机系统的发展到了一个新的时期,新的系统平台、新的软件功能、新的系统特点及发展方向不断涌现。2系统的开发环境及技术简介21系统开发环境211MYECLIPSE在开发本平台中所用到的开发工具就是知名的JAVA项目开发工具MYECLIPSE。MYECLIPSE企业级工作平台(MYECLIPSEENTERPRISEWORKBENCH,简称MYECLIPSE)是对ECLIPSEIDE的一种扩展,利用MYECLIPSE,我们可以进行数据库和J2EE项目的开发、发布,以及在应用程序服务器的整合中极大地提高系统的工作效率。MYECLIPSE是一个功能非常丰富的J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,STRUTS,JSP,CSS,JAVASCRIPT,SQL,HIBERNATE。在结构上,MYECLIPSE的特征可以被分为7类J2EE模型,WEB开发工具,EJB开发工具,应用程序服务器的连接器,J2EE项目部署服务,数据库服务,MYECLIPSE整合帮助。对于以上每一种功能上的类别,在ECLIPSE中都有相应的功能部件,并通过一系列的插件来实现它们。MYECLIPSE结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。简单而言,MYECLIPSE是ECLIPSE的插件,也是一款功能强大的J2EE集成开发环境,支持代码编写、配置、测试以及除错。212数据库简介数据库使用的是MYSQL开源数据库。MYSQL的特性使用C和C编写,并使用了多种编译器进行测试,保证源代码的可移植性。支持AIX、FREEBSD、HPUX、MACOS、OPENBSD、OS/2WRAP、SOLARIS、WINDOWS等多种操作系统。为多种编程语言提供API。这些编程语言包括C、C、EIFFEL、JAVA、PERL、PHP、PYTHON、RUBY和TCL等。支持多线程充分利用CPU资源。优化的SQL查询算法,有效地提高查询速度。既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB2312、BIG5,日文的SHIFT_JIS等都可以用作数据表名和数据列名。提供TCP/IP、ODBC和JDBC等多种数据库连接途径。提供用于管理、检查、优化数据库操作的管理工具。可以处理拥有上千万条记录的大型数据库。MYSQL的应用与其他的大型数据库例如ORACLE、DB2、SQLSERVER等相比,MYSQL自有它的不足之处,如规模小、功能有限(MYSQLCLUSTER的功能和效率都相对比较差)等,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企业来说,MYSQL提供的功能已经绰绰有余,而且由于MYSQL是开放源码软件,因此可以大大降低总体成本。213TOMCATTOMCAT很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。TOMCAT是一个轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好APACHE服务器,可利用它响应对HTML页面的访问请求。实际上TOMCAT部分是APACHE服务器的扩展,但它是独立运行的,所以当你运行TOMCAT时,它实际上作为一个与APACHE独立的进程单独运行的。当配置正确时,APACHE为HTML页面服务,而TOMCAT实际上运行JSP页面和SERVLET。另外,TOMCAT和IIS、APACHE等WEB服务器一样,具有处理HTML页面的功能,另外它还是一个SERVLET和JSP容器,独立的SERVLET容器是TOMCAT的默认模式。22系统开发的思想和技术221JAVA简介JAVA是由SUNMICROSYSTEMS公司于1995年5月推出的JAVA程序设计语言和JAVA平台的总称,是一种简单的、面向对象的、分布式的、解释型的、健壮安全的、结构中立的、可移植的、性能优异、多线程的动态语言,很多软件就是用这个开发出来的。JAVA分为三个体系JAVASE标准版,JAVAEE企业版,JAVAME微型版。JAVA的诞生是对传统计算机模式的挑战,对计算机软件开发和软件产业都产生了深远的影响,基于构建开发方法的崛起,引出了CORBA国际标准软件体系结构和多层应用体系框架。在此基础上形成了JAVA平台和NET平台两大派系,推动了整个IT业的发展。对软件产业和工业企业都产生了深远的影响,软件从以开发为中心转到了以服务为中心。中间提供商,构件提供商,服务器软件以及咨询服务商出现。企业必须重塑自我,B2B的电子商务将带动整个新经济市场,使企业获得新的价值,新的增长,新的商机,新的管理。对软件开发带来了新的革命,重视使用第三方构件集成,利用平台的基础设施服务,实现开发各个阶段的重要技术,重视开发团队的组织和文化理念,协作,创作,责任,诚信是人才的基本素质。总之,目前以看到了JAVA对信息时代的重要性,未来还会不断发展,JAVA在应用方面将会有更广阔的前景。JAVA语言的特点语言简单JAVA丢弃了C中很少使用的、很难理解的、令人迷惑的那些特性,并提供了自动的废料收集,使得程序员不必为内存管理而担忧;面向对象JAVA语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制;分布式语言它提供了用于网络应用编程的类库,包括URL、URLCONNECTION、SOCKET、SERVERSOCKET等。JAVA的RMI远程方法激活机制也是开发分布式应用的重要手段;语言是可移植的JAVA系统本身也具有很强的可移植性,JAVA编译器是用JAVA实现的,JAVA的运行环境是用ANSIC实现的;语言是多线程的在JAVA语言中,线程是一种特殊的对象THREAD类已经实现了RUNNABLE接口,因此,任何一个线程均有它的RUN方法,而RUN方法中包含了线程所要运行的代码;异常处理机制为了使JAVA程式更稳定、更安全,JAVA引入了异常处理机制。能够在程序中产生异常情况的地方,执行相对应的处理,不至于因突发或意外的错误造成执行中断或是死机。JAVA编程是面向对象的,使用它编程,可以帮助我们了解需求,定制功能更为强大的软件更好地为客户服务。并且拥有语言动态,语言可移植语言可拓展、通用性强和易于扩充等优势。JAVA主要针对企业级用户,适合一些企业级的开发,可以开发优秀的企业级平台的的程序、高效灵活的文件操作程序、高效灵活的数据库操作程序。总之,WEB应用、移动设备、嵌入式设备、LINUX客户端管理工具等应用方面,JAVA有不可比拟的功能。222JSP技术与MVC模式以及系统的基本框架本系统采用JSP技术,基于MVC模式开发,使用SSH框架(STRUTS2、SPRING、HIBERNATE)来加快系统的开发速度。所谓的MVC模式是“MODELVIEWCONTROLLER“的缩写,中文翻译为“模式视图控制器“。程序就是用STRUTS2和HIBERNATE这两个框架来实现模型层和控制器这两层,JSP实现视图这一层。一般来说程序就是在数据库和页面之间起桥梁作用的,JSP页面请求先到ACTION,再到DAO,再回到ACTION,回到JSP页面,ACTION主要处理来自页面的请求,DAO主要是和数据库的交互,STRUTS2主要用在ACTION,处理来自页面的请求,处理完请求后跳转回页面。HIBERNATE主要用在DAO,包括对数据库的增、删、改、查的操作,SPRING控制程序的流程。223SSH框架SSH框架是J2EE应用中STRUTS2SPRINGHIBERNATE三大免费开源框架的结合使用,它可以看成工具,也是中间件。它是用来提高我们的开发效率,提高我们软件产品的可维护性、可扩展性乃至敏捷性的。它们里面有很多优秀的设计理念及模式应用。比如,STRUTS属于MVC框架,关键是要了解MVC的概念及大致原理;而HIBERNATE属于ORM系统,属于持久层的解决方案,同样需要对ORM的概念及原理有一个总体的了解。而SPRING属于应用程序框架,其核心是IOC容器以及AOP,SPRING中还集成了很多实用的东西,比如对JDBC的封装、自己的MVC、对动态语言的简捷访问等。如图21所示。图21SSH框架它由以下3个框架构成1STRUTS2框架STRUTS2是APACHE组织的一个开放源码项目。STRUTS2是一个比较好的MVC框架,提供了对开发MVC系统的底层支持,它采用的主要技术是SERVLET,JSP和CUSTOMTAGLIBRARY。其基本构成如图22所示。图22STRUTS框架工作流程2SPRING框架SPRING的核心是个轻量级(LIGHTWEIGHT)的容器(CONTAINER),它是实现IOC(INVERSIONOFCONTROL)容器、非侵入性(NOINTRUSIVE)的框架,并提供AOP(ASPECTORIENTEDPROGRAMMING)概念的实现方式,提供对持久层(PERSISTENCE)、事务(TRANSACTION)的支持,提供MVCWEB框架的实现,并对一些常用的企业服务API(APPLICATIONINTERFACE)提供一致的模型封装,是一个全方位的应用程序框架(APPLICATIONFRAMEWORK),除此之外,对于现存的各种框架(STRUTS、JSF、HIBERNATE等),SPRING也提供了与它们相整合的方案。SPRING框架由以下7个部分组成,如图23所示。浏览器WEB服务器STRUTSCONFIGXMLACTIONSERVLET控制器JSP视图SERVLET/JSP容器ACTIONACTIONJAVABEANEJB模型图23SPRING框架构成3HIBERNATE框架HIBERNATE是一个开放源码的ORM持久层框架。作为优秀的持久层框架实现,HIBERNATE框架提供了强大、高性能的对象到关系型数据库的持久化服务,开发人员可以使用面向对象的设计进行持久层开发。简单的说,HIBERNATE只是一个将持久化类与数据库表相映射的工具,每个持久化类实例均对应于数据库表中的一个数据行而已。用户只需直接使用面向对象的方法操作此持久化类实例,即可完成对数据库表数据的插入、删除、修改、读取等操作,如图24所示。图24HIBERNATE框架SSH框架的特点典型的J2EE三层结构,分为表现层、中间层(业务逻辑层)和数据服务层。三层体系将业务规则、数据访问及合法性校验等工作放在中间层处理。客户端不直接与数据库交互,而是通过组件与中间层建立连接,再由中间层与数据库交互。表现层是传统的JSP技术,自1999年问世以来,经过多年的发展,其广泛的应用和稳定的表现,为其作为表现层技术打下了坚实的基础。中间层采用的是流行的SPRINGHIBERNATE,为了将控制层与业务逻辑层分离,又细分为以下几种。WEB层,就是MVC模式里面的CONTROLLER,负责控制业务逻辑层与表现层的交互,调用业务逻辑层,并将业务数据返回给表现层作组织表现,该系统的MVC框架采用STRUTS。SERVICE层(就是业务逻辑层),负责实现业务逻辑。业务逻辑层以DAO层为基础,通过对DAO组件的正面模式包装,完成系统所要求的业务逻辑。DAO层,负责与持久化对象的交互。该层封装了数据的增、删、查、改的操作。PO,持久化对象。通过实体关系映射工具将关系型数据库的数据映射成对象,很方便地实现以面向对象方式操作数据库,该系统采用HIBERNATE作为ORM框架。SPRING的作用贯穿了整个中间层,将WEB层、SERVICE层、DAO层及PO无缝整合,其数据服务层用来存放数据。SSH的工作流程初始化COM库,引入ADO库定义文件,用CONNECTION对象连接数据库;利用建立好的连接,通过CONNECTION,COMMAND对象执行SQL命令或利用RECORDSET对象取得结果记录集进行查询处理,使用完毕后关闭连接释放对象。ADO编程模型被设计成你只需集中完成两项简单的任务,即可完成对数据的绝大部分的操作初始化COM库,引入ADO库定义文件;用CONNECTION对象连接数据库;利用建立好的连接,通过CONNECTION、COMMAND对象执行命令;利用RECORDSET对象取得结果记录集进行查询、处理;使用完毕后关闭连接释放对象。23本章小结本章开始介绍了系统开发所涉及到的开发工具,框架和数据库,并详细介绍了相关信息,并根据这些深入研究,为程序实现奠定了基础;对开发这套管理系统的技术相关框架及主要开发工具进行了概要的介绍,通过需求分析后,考虑到客户的各种具体要求,制定了系统的基本功能,确定了系统的用户,及不同用户的使用权限。方便管理员对相关环境的搭建及维护。3系统概要设计概要设计的主要任务是把系统扩展用例图转换为软件结构和数据结构。设计软件结构的具体任务是将一个复杂系统按功能进行模块划分、建立模块的层次结构及调用关系、确定模块间的接口及人机界面等。数据结构设计包括数据特征的描述、确定数据的结构特性、以及数据库的设计。显然,概要设计建立的是目标系统的逻辑模型,与计算机无关。酒店客房管理系统的开发采用的是B/S的体系结构,B/S(BROWSER/SERVER)结构即浏览器和服务器结构。它是随着INTERNET技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过浏览器来实现,极少部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所谓三层结构。相对于C/S结构属于“胖”客户端,需要在使用者电脑上安装相应的操作软件来说,B/S结构是属于一种“瘦”客户端,大多数或主要的业务逻辑都存在服务器端,因此,B/S结构的系统不需要安装客户端软件,它运行在客户端的浏览器之上,系统升级或维护时只需更新服务器端软件即可,这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本。B/S结构系统的产生为系统面对无限未知用户提供了可能。当然,与C/S结构相比,B/S结构也存在着系统运行速度较慢,访问系统的用户不可控的弱点。以目前的技术看,它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN,WAN,INTERNET/INTRANET等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。特别是在JAVA这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效。目前,软件系统的改进和升级越来越频繁,B/S架构的产品明显体现着更为方便的特性。对一个稍微大一点的单位来说,系统管理人员如果需要在几百甚至上千部电脑之间来回奔跑,效率和工作量是可想而知的,但B/S架构的软件只需要管理服务器就行了,所有的客户端只是浏览器,根本不需要做任何的维护。无论用户的规模有多大,有多少分支机构都不会增加任何维护升级的工作量,所有的操作只需要针对服务器进行;如果是异地,只需要把服务器连接专网即可,实现远程维护、升级和共享。所以客户机越来越“瘦”,而服务器越来越“胖”是将来信息化发展的主流方向。今后,软件升级和维护会越来越容易,而使用起来会越来越简单,这对用户人力、物力、时间、费用的节省是显而易见的,惊人的。因此,维护和升级革命的方式是“瘦”客户机,“胖”服务器。成本降低,选择更多。现在的趋势是凡使用B/S架构的应用管理软件,只需安装在LINUX服务器上即可,而且安全性高。所以服务器操作系统的选择是很多的,不管选用那种操作系统都可以让大部分人使用WINDOWS作为桌面操作系统电脑不受影响,这就使的最流行免费的LINUX操作系统快速发展起来,LINUX除了操作系统是免费的以外,连数据库也是免费的,这种选择非常盛行。31总体功能模块本系统分系统管理员和用户2个用户角色。总功能图如图31所示。图31系统功能需求分析32系统管理员的功能模块系统管理员的主要功能有用户管理、客房分类管理、客房信息管理、开房管理、退房管理、开房记录查询、预订记录查询。系统管理员的功能图如图32所示。图32系统管理员的功能图33用户功能模块用户主要功能有注册登录功能、客房预订、预订记录查询。用户的功能图如图33所示。图33用户的功能图34系统业务描述本系统分系统管理员和普通用户2个用户角色。系统管理员的主要功能有用户管理、客房分类管理、客房信息管理、开房管理、退房管理、开房记录查询、预订记录查询;用户主要功能有注册登录功能、客房预订、预订记录查询。用例图如图34所示。图34系统用例图35程序流程图用户注册流程图如图35所示。图35用户注册流程图用户登录流程图如图36所示。图36用户登录流程图36本章小结考虑到客户的各种具体要求,制定了系统的基本功能,确定了系统的用户,及不同用户的使用权限。为以后的系统开发奠定了坚实的基础和理论依据。4系统详细设计41系统和数据库的配置系统按通用的B/S(浏览器、服务器)模式进行设计。数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率,以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。42概念模型设计概念模型设计的典型方法是用ER图方法,即用实体联系模型表示。ER方法是用ER图来描述显示世界,ER图包含三个基本成分实体、联系、属性。它直观易懂,能够比较准确地反映现实世界的信息联系,从概念上表示一个数据库的信息组织情况。本系统ER图如图41所示。图41系统ER图43数据库的逻辑模型房间分类表(主键、添加时间、房间状态、房间价格、房间类型)如图42所示。主键添加时间房间价格房间类型房间状态房间分类图42房间分类逻辑图开房信息表(主键、备注、身份证号、结账状态、客户姓名、入住时间、入住天数、退房时间、消费金额、押金、关联客房的ID)如图43所示。主键备注押金关联客房的ID开房信息图43开房信息逻辑图客房信息表(主键、房间信息状态、房间号、房间状态、房间描述、关联分类的ID)如图44所示。主键房间信息状态房间描述关联分类的ID客房信息图44客房信息逻辑图用户表(主键、添加时间、联系方式、密码、1表示管理员、真实姓名、用户状态、用户名、性别)如图45所示。主键添加时间用户名性别用户图45用户逻辑图预定表(主键、备注、添加时间、联系方式、真实姓名、性别、预定客户身份证号码、预定状态、预定入住时间、关联KEFANG的ID、关联USER的ID)如图46所示。主键备注关联KEFANG的ID关联USER的ID预定图46预定逻辑图44数据库表结构房间分类表用来保存系统所有客房类型的基本信息。房间分类表如表41所示表41房间分类表名称类型空默认值备注IDINT11NOAUTO_INCREMENT主键CREATETIMEDATETIMEYES空添加时间DELETESTATUSINT11NO0房间状态JIAGEDOUBLEYES空房间价格LEIXINGVARCHAR255YES空房间类型开房信息表用来保存系统所有已入住客房的客户的基本信息及该客户的入住时间、入住天数退房时间和消费金额,还有押金。开房信息表如表42所示表42开房信息表名称类型空默认值备注IDINT11NOAUTO_INCREMENT主键BEIZHUVARCHAR255YES空备注IDCARDVARCHAR255YES空身份证号JIEZHANGSTATUSVARCHAR255YES空结账状态KEHUNAMEVARCHAR255YES空客户姓名RUZHUTIMEDATETIMEYES空入住时间TIANSHUINT11YES空入住天数TUIFANGTIMEDATETIMEYES空退房时间XIAOFEIDOUBLEYES空消费金额YAJINDOUBLEYES空押金KEFANGIDINT11YES空关联客房的ID客房信息表用来保存系统所有空房和已入住的客房的基本信息。客房信息表如表43所示表43客房信息表名称类型空默认值备注IDINT11NOAUTO_INCREMENT主键DELETESTATUSINT11NO0房间信息状态FANGJIANHAOVARCHAR255YES空房间号FANGJIANSTATUSVARCHAR255YES空房间状态MIAOSHUVARCHAR255YES空房间描述FENLEIIDINT11YES空关联分类的ID用户表用来保存系统管理员添加的,或者普通用户注册的普通用户的基本信息,以及系统管理员添加的管理员的基本信息。用户表如表44所示表44用户表名称类型空默认值备注IDINT11NOAUTO_INCREMENT主键CREATETIMEDATETIMEYES空添加时间LIANXIFANGSHIVARCHAR255YES空联系方式PASSWORDVARCHAR255YES空密码ROLEINT11NO01表示管理员TRUENAMEVARCHAR255YES空真实姓名USERLOCKINT11NO0用户状态USERNAMEVARCHAR255YES空用户名XINGBIEVARCHAR255YES空性别预定表如表45所示表45预定表名称类型空默认值备注IDINT11NOAUTO_INCREMENT主键BEIZHUVARCHAR255YES空备注CREATETIMEDATETIMEYES空添加时间LIANXIFANGSHIVARCHAR255YES空联系方式TRUENAMEVARCHAR255YES空真实姓名XINGBIEVARCHAR255YES空性别YUDINGIDCARDVARCHAR255YES空预定客户身份证号码YUDINGSTATUSINT11NO0预定状态YUDINGTIMEVARCHAR255YES空预定入住时间KEFANGIDINT11YES空关联KEFANG的IDUSERIDINT11YES空关联USER的ID45平台数据表的设计根据平台的需求分析和功能模块的划分,所涉及的实体有房间分类、开房信息、客房信息、用户、预定。因此系统的定义数据库主要包含5张表房间分类表T_FENLEI,开房信息表T_KAIFANG,客房信息表T_KEFANG,用户表T_USER,预定表T_YUDING。房间分类表T_FENLEI如图47所示。图47房间分类表建表的SQL语句为CREATETABLET_FENLEIIDINT11NOTNULLAUTO_INCREMENTCOMMENT主键,CREATETIMEDATETIMEDEFAULTNULLCOMMENT添加时间,DELETESTATUSINT11NOTNULLDEFAULT0COMMENT房间状态0表示正常状态1表示删除状态,JIAGEDOUBLEDEFAULTNULLCOMMENT房间价格,LEIXINGVARCHAR255DEFAULTNULLCOMMENT房间类型,PRIMARYKEYIDENGINEINNODBDEFAULTCHARSETUTF8开房信息表T_KAIFANG如图48所示。图48开房信息表建表语句为CREATETABLET_KAIFANGIDINT11NOTNULLAUTO_INCREMENTCOMMENT主键,BEIZHUVARCHAR255DEFAULTNULLCOMMENT备注,IDCARDVARCHAR255DEFAULTNULLCOMMENT身份证号,JIEZHANGSTATUSVARCHAR255DEFAULTNULLCOMMENT结账状态已结账未结账,KEHUNAMEVARCHAR255DEFAULTNULLCOMMENT客户姓名,RUZHUTIMEDATETIMEDEFAULTNULLCOMMENT入住时间,TIANSHUINT11NOTNULLDEFAULT0COMMENT入住天数,TUIFANGTIMEDATETIMEDEFAULTNULLCOMMENT退房时间,XIAOFEIDOUBLEDEFAULTNULLCOMMENT消费金额,YAJINDOUBLEDEFAULTNULLCOMMENT押金,KEFANGIDINT11DEFAULTNULLCOMMENT关联客房的ID,外键,PRIMARYKEYID,KEYFKE682DF1CAFDBF4E2KEFANGID,CONSTRAINTFKE682DF1CAFDBF4E2FOREIGNKEYKEFANGIDREFERENCEST_KEFANGIDENGINEINNODBDEFAULTCHARSETUTF8客房信息表T_KEFANG如图49所示。图49客房信息表建表语句为CREATETABLET_KEFANGIDINT11NOTNULLAUTO_INCREMENTCOMMENT主键,DELETESTATUSINT11NOTNULLDEFAULT0COMMENT房间信息状态0表示未删除1表示删除,FANGJIANHAOVARCHAR255DEFAULTNULLCOMMENT房间号,FANGJIANSTATUSVARCHAR255DEFAULTNULLCOMMENT房间状态空房开房预订,MIAOSHUVARCHAR255DEFAULTNULLCOMMENT房间描述,FENLEIIDINT11DEFAULTNULLCOMMENT关联分类的ID,外键,PRIMARYKEYID,KEYFK3932E659AE2F5C48FENLEIID,CONSTRAINTFK3932E659AE2F5C48FOREIGNKEYFENLEIIDREFERENCEST_FENLEIIDENGINEINNODBDEFAULTCHARSETUTF8用户表T_USER如图410所示。图410用户表建表语句为CREATETABLET_USERIDINT11NOTNULLAUTO_INCREMENTCOMMENT主键,CREATETIMEDATETIMEDEFAULTNULLCOMMENT添加时间,LIANXIFANGSHIVARCHAR255DEFAULTNULLCOMMENT联系方式,PASSWORDVARCHAR255DEFAULTNULLCOMMENT密码,ROLEINT11NOTNULLDEFAULT0COMMENT1表示管理员,TRUENAMEVARCHAR255DEFAULTNULLCOMMENT真实姓名,USERLOCKINT11NOTNULLDEFAULT0COMMENT用户状态0表示正常1表示删除,USERNAMEVARCHAR255DEFAULTNULLCOMMENT用户名,XINGBIEVARCHAR255DEFAULTNULLCOMMENT性别男女,PRIMARYKEYIDENGINEINNODBAUTO_INCREMENT2DEFAULTCHARSETUTF8预定表T_YUDING如图411所示。图411预定表建表语句为CREATETABLET_YUDINGIDINT11NOTNULLAUTO_INCREMENTCOMMENT主键,BEIZHUVARCHAR255DEFAULTNULLCOMMENT备注,CREATETIMEDATETIMEDEFAULTNULLCOMMENT添加时间,LIANXIFANGSHIVARCHAR255DEFAULTNULLCOMMENT联系方式,TRUENAMEVARCHAR255DEFAULTNULLCOMMENT真实姓名,XINGBIEVARCHAR255DEFAULTNULLCOMMENT性别,YUDINGIDCARDVARCHAR255DEFAULTNULLCOMMENT预定客户身份证号码,YUDINGSTATUSINT11NOTNULLDEFAULT0COMMENT预定状态0表示预定1表示取消预定,YUDINGTIMEVARCHAR255DEFAULTNULLCOMMENT预定入住时间,KEFANGIDINT11DEFAULTNULLCOMMENT关联KEFANG的ID,外键,USERIDINT11DEFAULTNULLCOMMENT关联USER的ID,外键,PRIMARYKEYID,KEYFK51F76C65AFDBF4E2KEFANGID,KEYFK51F76C657614FDCUSERID,CONSTRAINTFK51F76C657614FDCFOREIGNKEYUSERIDREFERENCEST_USERID,CONSTRAINTFK51F76C65AFDBF4E2FOREIGNKEYKEFANGIDREFERENCEST_KEFANGIDENGINEINNODBDEFAULTCHARSETUTF846本章小结本章详细介绍了本系统使用的体系结构,使系统的体系架构清晰明了。详细划分了用户操作框架,细分了系统的各个功能模块,并且对每个功能模块的功能细分到底层,用来与后台数据库进行连接,为下面的系统实现打下了坚实基础。5系统功能实现51系统的类图类图CLASSDIAGRAM是显示了模型的静态结构,特别是模型中存在的类、类的内部结构以及它们与其他类的关系等。类图不显示暂时性信息。类图由许多(静态)说明性的模型元素(例如类、包和它们之间的关系,这些元素和它们的内容互相连接)组成。类图可以组织在(并且属于)包中,仅显示特定包中的相关内容。类图是最常用的UML图,显示出类、接口以及它们之间的静态结构和关系;它用于描述系统的结构化设计。类图最基本的元素是类或者接口。同其他的图一样,类图也可以包含注解和限制。类图中也可以包含包和子系统,这两者用来将元素的分组。有时候也可以将类

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论