当前位置:首页 > 论文帮手>>文章详情

酒店管理系统的设计与实现

来源:论文帮手 作者: 发布日期:2018-04-13 11:42:52

  

酒店管理系统的设计与实现
摘  要
随着全球信息化的高速发展,酒店业对于信息资源的依赖也就越来越大,一个酒店的信息反复而庞杂,如果单纯依靠人工记录与查找,不仅耗时耗力,而且对于酒店的快速发展来讲,都是存在消极因素的,同国外的酒店对比,正是尤于我国大部分酒店对于信息管理的不重视,造成了我国很少能有一些超大型的跨国连锁酒店,故而应运而生了我们这套酒店管理系统,使之在经济全球化的时代不至于落后挨打的场面,因此我们开发了酒店后台管理系统,本系统采用了Java MVC设计模式,将酒店日常的信息以计算机编程技术为基础通过Java开发语言和MYSQL数据库管理工具设计而成,以供酒店对于信息的维护管理要求。
首先,本文将绪述酒店管理系统的背景和意义,以及其研究性。
其次,本文将阐述系统涉及到的相关技术和其特点。
再次,本文对系统的各种需求进行分析,确定其功能和设计模式。
最后,本文介绍其运行结果并给出代码,并介绍运行环境给出运行界面。
本系统涵盖了管理员登录,住户管理,客房管理,菜品管理等五大模块,拥有简单操作,界面美观,灵活便捷,安全稳定的特点,是酒店管理者的首选。
 
 
关键词:数据库,酒店管理,设计模式    
 
1  绪论
1.1 项目的来源及意义
当今时下生活水平不断提高,人们对服务也有了更高的要求,对生活服务便利、快捷性的要求也越来越高。进而人们对酒店这门传统行业提出了更高的要求。为了促进适应酒店行业的发展,各酒店公司部门开始推出网络客房销售服务,网络化的各种服务,使公司各部门的工作效率得到了很大的提高,对应的让工作人员减轻劳动力,也能缓解顾客因为等待而产生的不耐烦情绪,让广大的顾客享受到的服务更加的优质有序、方便快捷,酒店的服务水平有了质的提升,企业形象也开始逐步树立起了。以往的销售模式相应的就有很大的毛病,交流不及时,运行成本过高等。
酒店行业运营模式已经越来越完善,各种各样的模式也越来越多,随之其管理所需的要求也变高,这时酒店管理系统就变得必不可少。借用酒店管理系统进行管理是以往的管理方式远远无法相比的,因为其优点为酒店行业的管理带来了极大的便利。譬如它保存信息多,变更信息速度快,隐私保护性高等。在这种发展环境下,酒店管理系统对于酒店这个行业必将发挥越来越大的作用。以MYSQL数据库为基础,应用JSP配合JAVA这门最近几年发展较快的编程语言制作而成。本系统为酒店管理系统[1]。
1.2 国内外发展状况
当今,伴着国内经济的快速发展和在全球的地位不断提高,中国大陆上也开始纷纷入驻了国外知名酒店,但弊端也慢慢的出现了,由于酒店过多竞争也就慢慢变多,因此拥有完善的酒店管理系统是一件非常必要的事情,它的高效灵活性会给酒店带来非常大的好处,不仅能提高服务质量,还能提高酒店工作效率。
站在酒店的角度来讲,一个完善的系统能更好的服务客户,还能加大员工的效率,降低成本,酒店这种系统带来了很多的方便,譬如能够让客户不论在何时何地都能来了解酒店的动态,享受酒店带来的便利和服务。
酒店作为一个传统的经纪行业,它在人们的生活中也有着重点的地位,在人们生活质量的提高也有着重要性。人们在入住酒店前进行网上预购的现象也越发普遍,合理的运用当今所拥有的的计算机水平和其他各种资源来提高工作效率,面对不同的请求,操作人员可以马上为其提供所需的功能。这个系统为客户提供了一个便利的平台,也为酒店大大的节省了人力、财力,创造了良好的收益。
1.3 可行性研究
随着互联网的发展,网络平台这一方面也成为一个企业发展不可忽视的一部分,
从销售角度讲,它能够让客户随之随地的了解酒店的动态信息,客房的变化,也能够很好的宣传酒店,不仅能提升知名度,也可以让大家更好的看清楚酒店的客房条件。所谓可行性研究,所需要的就是根据其个体因素,从自身的角度来考虑此研究的可行性,从消耗、技术和复杂度来看其是否值得开发。而此系统作用于服务行业,所需考虑的主要便是经济方面的,用投入和产出做对比;当今的互联网时代,计算机的性价比越来越高。本系统属单机系统,电脑配置要求不高,可以免费使用网上很多系统所需软件。系统研发成功后的方便性带来的收益远大于研发费用。因此,在经济方面它是没有问题的[2]。
计算机技术被广泛应用于各个行业领域中由于信息化快速发展的今天,对于企业管理而言,只需要公司内部计算机网络互联,配以现代化流行的数据管理技术就能实施本系统,因此,在技术方面它是可行的 [3]。
这个系统是一个中小型的酒店管理系统,各方面足以各企业单位进行使用,在操作上是可行的。
1.4 论文的章节安排
第一章  叙述不断发展酒店管理系统的意义,在此基础上介绍了酒店管理系统的发展状况及其可行性研究。
第二章  介绍了B/S、JSP技术简介、特点等以及JDBC的介绍
第三章  本章介绍了系统方面的问题
第四章  本章介绍了系统E-R图以及数据库表的实现
第五章  本章介绍了运行界面和代码
第六章  本章介绍了完成本课题所需的软件安装与调试,测试的内容及其重要性。
第七章  结束语 
2  相关技术介绍
2.1 B/S结构模式
B/S即浏览器/服务器模式,是Browser/Server的缩写,现如今运用最多的应用程序开发结构之一,这种程序中不存在客户端,而是通过浏览器展现给大家,浏览器发出请求,服务器接受并处理,最后将处理结果再传回到Web浏览器的页面。
B/S这种模式所需的条件非常低,后台人员只要处理好后台程序,便能使用,就是由于不许要前台,开发和维护成本很低;也正是由于这种把请求处理都交给服务器的结构模式,让用户无需安装和维护客户端,提高了用户的体验度。
 图2.1    B/S体系结构
2.2 JSP技术
Jsp(Java Server Page)是一个多家公司一起所建的一个标准。它建立在Servlet之上,主要用来开发动态网页,应用Jsp可以高效率的创建Web应用,同时可以将网页中的动态的业务代码和静态的HTML代码分离开,使得开发的Web具有易于维护、组件重用等优点。
Jsp技术所应用的也非常广面,其能用大部分的的Java语言,在不同的平台中都能够运用。
运用其开发的系统可以把显示也业务分成两部分,网页显示为一方面,逻辑业务又为一方面,当需要修改代码的时候,两者之间互不影响,使得系统的维护更新更加方便。
Jsp页面的执行过程:
1. 用户借助于浏览器发出请求到web服务器,
2. 服务器处理接收到的请求并加载相对应的Jsp页面,
3. Web服务器中将被加载的Jsp文件转化为Servlet,
4. Jsp引擎将Servlet代码编译成Class文件,
5. 后台运行编译后的文件
6. 最后由浏览器进行显示请求处理的结果。
2.3 Servlet
   Servlet 是一种用于服务器端的Java技术,充当了一个请求控制处理的角色,当用户通过浏览器发送了一个请求时,由Servlet接收并对请求进行相对应的业务处理,最后再由服务器将请求结果转发到Jsp页面进行显示。
实现过程为:
用户借助于浏览器发送请求至服务器端;
服务器把前台信息发过去
Servlet处理发送来的请求;
服务器将处理的结果发送到浏览器显示。
2.2.4 JDBC
JDBC(Java Date Base Connectivity)是Java应用程序与数据库系统进行交互的一种技术,也可以说JDBC是Java应用程序和数据库之间的一座链接桥梁。JDBC是数据库运行的一套标准的API,操作人员通过它能够很方便的和各种数据库进行运用,这样就不用再很麻烦的没换一个数据库,就用从新再刻意的去编写一个访问所需的程序,非常方便。如图2.2所示的就是一个JDBC的交互简易过程。
   
图 2.2  Java程序与数据库交互
 
下面是在常用的JDBC类: 
1. DriverManager 负责加载要连接的数据库相关信息。 
2. Connection负责打开数据库的链接。
3. Statement负责调用SQL语句对数据库进行操作。 
4. ResultSet负责接收SQL查询语句得到的结果集。 
 
 
3  系统分析
3.1 系统功能分析
第一步,对现有的系统展开分析,现有的系统是开发者重要的信息来源。通过现在的系统功能所产生的效果再来确定自己所设计系统的各方面需求。第二步,根据自身的条件,来确怎么去考察,大部分都是通过在网上查找,进行了解。第三步,就此系统来说,就是在已有的酒店行业,进行网上订购,来参考其功能来了解。
从管理的角度看:
(1)拥有客房各方面信息的管理功能
(2)拥有已经在酒店的客户各种信息的管理功能
(3)拥有酒店各种菜品的各方面的管理功能
(4)餐饮消费管理。
3.2 需求分析
需求分析此方面的任务就是调查对象,通过调查对象来了解系统的概况。知道人们都需要什么样的功能,其所需什么,再一次为基础明确所需的功能。同时新系统也需要考虑以后可能会出现的功能改变与扩充[7]。
因此我们需要了解用户在系统性能与功能方面有什么样的要求:
(1)客户信息介绍。
(2)客房信息管理。
(3)入住消费管理。
(4)客房入住管理。
(5)特色菜品介绍。
(6)餐饮消费管理。
系统信息的安全性和完整性非常严格。所有的东西只有通过各种验证才能够查看,确保网上支付安全[8]。客房客户信息具备完整性。为了杜绝被修改,下面是其需求:
(1)准确性和可靠性高。
(2)页面友好,功能齐全,且可以使用。
(3)系统便于维护和升级。
(4)数据库访问效率高。
3.3 业务流分析
酒店管理系统工作流程为:系统启动进入登陆界面,不同管理员根据自己的账号密码进行登陆,登陆成功后对想管理的菜单模块进行操作。操作完成后安全退出系统。
本系统按照酒店管理流程,将现代化的技术与现如今的酒店管理模式结合起来进行设计完成的,不仅能够减少工作所需的时间,还能节约成本,从而间接的加大的收入。为了使系统在日常使用中发挥出更大的作用,提高工作效率,对系统开发提出以下几条目标:
具体目标如下:
(1)界面简便、布局清晰:方面操作人员进行操作,类型的选择和日期等只需要轻松动动鼠标就可以完成;另外,操作完成后的提示信息也让管理员更加清楚自己现在的操作情况。
(2)即时可见:对信息进行添加删除等操作后能够在相应窗口即使把最新信息展现出来,以方便后续操作观察。
(3)动态管理:能够实现对系统数据库的动态查询、动态修改和动态录入数据。
3.4系统功能结构图
系统只采用最高级用户这一种模式,以下为各模块和其结构。
图3.1所示。
 
 
图3.1  系统功能结构图
 
4  数据库设计
4.1 系统E-R图
E-R图是也被称为实体图,它介绍了各种框架之间的结构,联系,能够清楚明了的介绍系统的构架。
系统E-R图如图4.1所示。
 
图4.1  系统E-R图
4.2 数据库系统概述
数据库系统如今已经发展的非常人性化了,容易操作和使用,数据库系统经过了长久的发展,其功能也越来越完善,如今数据库大多所采取的是二维表格来整理数据,这种数据库系统已经成为了人们使用的主流。
本系统的前端开发使用的是JSP技术,后台采用的是MYSQL数据库。MYSQL数据库管理系统是一个各方面都比较完善数据库,使用学习起来非常容易,网上和书店可用来借鉴的资料也比较多, MYSQL的应用非常灵活,其可靠性有着非常高的共识,广为大家称赞,而其伸缩性能也非常强大,就是靠着这两方面的优良性能,使其在多种数据库之中脱颖而出,被大众采用。无论从程序开发速度还是从事务处理时运行速度来衡量,MYSQL都是最为方便快捷的数据库系统[10]。
对比MYSQL和其他中小型数据库管理系统还有像ORACLE这种大型数据库,MYSQL具有很多优良的特点,其安全性能非常高,能有效的防治数据外泄,同时他的兼用性能也非常强,能够和其它许多软件进行互通,而其存储数据的功能也非常强大,同时操作就不麻烦,简单易用,此系统的数据库就是采用的MYSQL数据库,其强大的后台支持,也为软件的开发及运行带来了很大的帮助,为系统的成功运行也奠定的良好的基础。
4.3 数据库表设计
管理员信息表,存储系统中的管理员信息,如表4.1所示。
表4.1管理员信息表(t_admin)
列名 数据类型 字段大小 必填字段 默认值 说明
userId 文本 20 管理员帐号(主键)
userName 文本 20 管理员姓名
userPw 文本 20 管理员密码
 
客房信息表,记录系统中已有客房客房的信息,如表4.2所示。
表4.2  客房信息表(t_kefang)
列名 数据类型 字段大小 必填字段 默认值 说明
id 自动编号 30 编号(主键)
fangjianhao 数字 30 客房编号
fangjianmianji 文本 30 客房面积
fangjianjianjie 备注 100 客房介绍
fujian 备注 50 附件
kefangleixingId 文本 50 客房类型
del 文本 50 状态值
 
 
3所示。
表4.3  客户信息表(t_kefangruzhu)
列名 数据类型 字段大小 必填字段 默认值 说明
id 自动编号 50 订单详细信息唯一标识
kefang_id 数字 50 订单列表ID
shijian 文本 50 订单创建时间
kehuname 文本 30
客户名
kehutel 文本 50 客户电话
tianshu 文本 50 入住天数
xiaofeijine 文本 50 消费金额
del 数字 50 状态值
  
5  详细设计与实现
(1)主操作界面
主操作界面进行显示本系统所有的功能菜单项,本系统分为七大模块,然后每个大模块子菜单下都有对应的子模块,当管理员进行操作的时候,只要点击想要操作的功能时,在右方的窗口就能够打开相应的模块 [11]。如图5.1所示。 
图5.1  主操作界面
操作界面前台主要实现代码:
 
(2)客房类型管理
当管理员单击【添加】按钮,并输入新的客房类型属性,然后在操作界面点击保存时,会把添加的新客房属性同步到数据库中,当管理员单击【删除】按钮,会进行询问是否删除,取消的话则不进行删除。系统中客房类型管理的界面,如图5.2所示。
 
图5.2客房类型管理界面
客房类型管理前台实现主要代码:
 
当管理员输入完新的客房属性的时候,点击操作界面的保存,会把添加的新属性同步到数据库中。系统中客房信息管理的界面,如图5.3所示。
 
图5.3  客房信息管理界面
客房信息后台实现主要代码:
 在图5.3 中用户能够这样来进行操作:
对客运信息的各种方面进行管理同时其所操作进行的改动也能同步到后台中。在房间展示列表里也同步展现了出来。
(3)客房入住部分
操作人员在进行操作的过程中,如下如果对入住方面进行操作,其信息填写之后,需点击提交按钮才是成功操作,如点击重置按钮,将会清空其所操作内容。具体如下图5.4所示。
 
图5.4  入住界面
房间入住后台主要实现代码:
 
在上图5.4所示的操作人员在界面中对客户信息进行填写:客房入住,客户姓名,联系方式,入住天数等,然后提交,提交后数据会保存到数据库中以便有需要时查询。添加成功后,则会通过alert方法进行弹框提示。
 
6  软件安装与调试
6.1 软件的安装与配置
(1)软件安装
操作系统:最好是Win7系统,也可以是Win8,Win10等版本。
数据库:MYSQL。
JDK安装。
JDK的配置:配置环境变量JAVA_HOME,CLASSPATH,PATH。
(2)安装Tomcat7.0
(3)启动TOMCAT
6.2 软件调试
系统调试时为了来发现系统运行的情况,以此来发现其不足之处,然后进行修改,用手工或编译程序来进行调试,这是为了保证系统正确性必不可少的步骤。
调试系统的测试数据应该还用一些异常的资料,来验证程序的抗压性完善性等:
(1)用正常资料调试。
(2)用异常资料调试。
(3)用错误资料调试。
6.3功能测试
系统测试的目的与系统设计阶段的目的是不同的。功能测试就是对产品的各功能进行验证,根据功能测试用例,逐项测试,测试其的特性和其所操作行为来确定它的功能是否满足设计需求,而在系统测试的时候我们是为了来验证系统是否能成成功的运行,然后看看其所存在的问题,发现其缺陷并且进行修改,如果不能运行或者没有按照设计者的需求进行运行,就要进行修改,而在功能测试方面,其基于系统能够成功的运行,没有存在问题和缺陷,来考证其所有的功能,根据其运行的条件来尽可能的发现更多的功能,也就是能够小投入大回报,当然设计者所设计的必须功能一定存在,在此基础上和不用增加成本的情况下看看是否能够添加功能而其系统更加强大。此系统通过功能测试,能够满足基本的要求,可以为之使用。
 
6.3.1登陆功能测试
操作人员进行登录的时候,如果信心错误,就会有所提示,并清空信息,重新登录。
除此外本系统还有验证码,本次对其进行测试,若验证码输入错误则如图6.1所示。
 
图6.1 登录界面测试
6.3.2 修改密码测试
登录名文本框设置成只读不可进行修改,只能修改密码。输入原密码和新密码后则会弹出图6.2所示界面,若原密码输入错误则提示原密码不正确,修改失败。修改成功后直接自动注销系统回到登陆界面。
 
图6.2 修改密码测试
6.3.3 客房添加测试
管理员进行客房信息输入,房间简介框此处用textarea标签,方便多数据的输入,此处测试在刚添加客房类型成功后此处可选择的客房类型是否会及时显现出来。
 
图6.3 客房添加测试
 
6.3.4抗压测试
抗压测试就是对一个系统进行其所能承受的上限来进行测试吗,就本系统而言就是测试数据库能够承受的最大同时数据流动是多少,不同的酒店就对此的要求也不一样。本系统通过后台循环往数据库添加数万条信息来测试系统能力最高承受限度,此限度足够应用于个中小型酒店。
通过以上过程对本系统进行测试后,效果满足开发需求,宣告测试结束。
 
7  结论
几个月来,把大学几年所学到的专业知识充分的利用了起来,但是来完成这个系统的话还是远远不够的,所以不会的地方通过大量阅读和百度与本次设计相关的知识,再不理解的地方就请教指导老师,最终完成了本次毕业设计,实现了该系统各模块功能需求。
由于本次毕业设计采用了MYSQL数据库,所以几个月下来对该数据库服务器也有了很大的了解,数据库客户端方面用的是Navicat Premium,简洁方便。JAVA语言作为大学里主修的课程,这次的毕业设计让我加深理解了以前课本上半知半解的一些知识,感觉在编程技术上有了很大的提升。特别是以前几乎未接触到过的JSP技术,一个项目下来,对其不说多通彻,熟知还是能做到的。
由于时间,自身能力等原因,本系统的缺陷还是比较多的,譬如功能不够完全,安全性,效率问题等都未加校验,待进一步完善。出现的这些问题也让我意识到了项目研发的困难。
 
 
参考文献
[1] 王菁.酒店管理系统设计[J].办公自动化,2010,04:23-27.
[2] 王婷,魏彤.酒店管理系统的建模与设计[J]. 黑龙江科技信息,2010,35:131-132.
[3] 王建设,张金娜.酒店管理系统设计与实现[J].计算机与现代化,2011,01:91-93.
[4] 赵晓彤.酒店管理系统设计[J].电子制作,2014,06:102-103.
[5] 计磊,李里,周伟.J2EE整合应用案例[M].北京:人民邮电出版社,2007.
[6] Daniel Liang,李娜.Java语言程序设计(基础篇)(原书第8版)[M] .北京,机械工业出版社,2011.
[7] Paul Simith,Database Appliction [J].北京:电子工业出版社,2011,33-65.
[8] 甘朝松.酒店管理系统的设计与实现[J].电脑知识与技术,2007,19:23-25.
[9] Stephen Wnkoop.MYSQL开发指南[J].北京:电子工业出版社,1999:88-90.
[10] 焦利宝.基于JSP的酒店管理系统设计与实现[J].中国西部科技,2007:36-38.
[11] 牛钰鑫.酒店管理系统的设计与实现分析[J].电子制作,2013.
[12] Jay Salzman著.软件调试的艺术[J].人民邮电出版社,2009.
[13] 布朗著.软件测试:原理与实践(英文版) [J].机械工业出版社,2012.