软件工程毕业设计基于JSP的酒店客房管理系统的设计与实现.docx
《软件工程毕业设计基于JSP的酒店客房管理系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《软件工程毕业设计基于JSP的酒店客房管理系统的设计与实现.docx(63页珍藏版)》请在冰豆网上搜索。
软件工程毕业设计基于JSP的酒店客房管理系统的设计与实现
基于JSP的酒店客房管理系统的设计与实现
摘 要
随着电子信息的发展,酒店管理渐渐采用电脑管理的方式,在最近几年里,酒店管理系统已经广泛地被应用到各个大中小型酒店餐饮中。
随着网络在国内的逐步成熟及普遍,酒店管理系统的形式已经不再拘泥于单一的文件管理,方便快捷的用户界面成为各酒店的首选。
各个软件公司间的竞争也成为酒店管理系统快速成熟的主要原因。
本系统用JSP语言来编写酒店客房预定系统,数据库用MySQL来连接系统,即JSP+MySQL模式完成整个设计工作。
本系统全部基于Internet网络,以JSP语言对网站进行开发,注重用户与网站的交互性。
因此在这样的背景下,针对当前Internet网络发展趋势来计酒店客房预定系统就成为了当今应用软件的首选体系结构。
关键词:
JSPMySQL酒店管理系统
DesignandImplementationoftheJSPbasedHotelManagementSystem
Abstract
Withthedevelopmentofelectronicinformation,hotelmanagementgraduallycomputerizedmanagementsystems,inrecentyears,hotelmanagementsystemhasbeenwidelyappliedtovarioussizesinthehotelrestaurant.Withthenetworkinthecountrygraduallymatureandwidespreadformofhotelmanagementsystemsarenolongerrigidlyadheretoasingledocumentmanagement,convenientuserinterfacetobecomethehotelofchoice.Competitionbetweenthevarioussoftwarecompanieshotelmanagementsystemhasalsobecomethemainreasonforrapidmaturation.
ThissystemcompilesthehotelguestroompredeterminedsystemwiththeJSPlanguage,thedatabasewiththeMySQLconnectedsystem,namelyJSP+theMySQLpatterncompletestheentireprojectwork.ThissystembasedontheInternetnetwork,carriesonthedevelopmentcompletelybytheJSPlanguagetothewebsite,paysgreatattentiontheuserandthewebsiteinteractive.Thereforeundersuchbackground,countsthehotelguestroompredeterminedsysteminviewofthecurrentInternetnetworktrendofdevelopmenttobecomenowapplicationsoftware'sfirstchoicearchitecture.
Keywords:
JSPMySQLHotelManagementSystem
目 录
前 言
随着电子信息的发展,酒店客房管理渐渐采用电脑管理的方式,在最近几年里,酒店客房管理系统已经广泛地被应用到各个大中小型酒店餐饮中。
随着网络在国内的逐步成熟及普遍,酒店管理系统的形式已经不再拘泥于单一的文件管理,方便快捷的用户界面成为各酒店的首选。
各个软件公司间的竞争也成为酒店管理系统快速成熟的主要原因。
而随着酒店管理系统的成熟,各行各业都已意识到系统而快捷方便的体系管理已成为一个公司不可或缺的重要前提之一,要谋求发展,势必要有一个完善管理系统,在某种程度上信息化的程度决定了公司发展的稳固性和健康性。
信息技术的应用已经普遍应用于企业之间的业务往来以及企业内部的管理,采用酒店管理系统开销低效率高,酒店行业可以通过简便直接的方法快捷方便地管理商务信息,大幅提高了酒店管理的效率。
酒店业是统一的体系,从客源角度讲,市场也要求酒店业是个整体。
酒店行业管理体制被分离,尽管有以前的客观原因,但走向一体是必然的。
而酒店业采用信息技术无疑是对这一必然结果的强力推动,因此,采用对酒店管理采用信息技术已经成为一种必然的趋势。
第1章 课题研究价值
第1.1节酒店管理系统的基本内容及关键问题
1.1.1酒店管理系统的基本内容
基本内容是一个基于JSP的酒店管理系统,分为以下几个方面的内容是客房管理、查询管理、系统管理。
所有模块的进入都必须对系统进行登录后才能进入。
1.1.2酒店管理系统关键问题
关键问题是:
(1)用户管理,对不同用户分配不同的模块权限。
(2)预定客房,对预订客房的入住及取消问题。
(3)报表的显示,对相关报表的显示。
对不同的房间的描述,根据客人的要求查询相关的房间。
(4)查询管理,对不同的问题进行查询,并提供修改。
(5)各数据库的实现与连接。
第1.2节 酒店客房管理系统调研综述
据了解,入住率和宾客实际消费决定了酒店收入,一般酒店会在开拓新客源和留住老客户两方面下功夫,而于已经进入稳定发展的酒店来说,除了要继续拓展客源外,由于存在老客户的流失,所以更注重如何留住老客户,提高客户粘度。
业内人士普遍认为:
老客户带来的收益要远远高于新客户。
为了跟上现代化的节奏,满足旅游业的需求,酒店管理的信息化势在必行,尤其是在客房管理上,一个酒店,面对日益增加的旅游者,为他们提供一个舒适、温馨的住宿环境,以此来宣传酒店,提升酒店的知名度,就是酒店管理者要实施的战略目标。
而酒店管理采用手工方式修改不仅易出错,而且,对信息的查找及整合也需要大量的时间。
信息化的酒店业管理完全克服了这些问题,简单方便的用户界面,准确迅速地查找修改信息,不仅减轻了酒店工作人员的工作量,也让客户对酒店的服务留有好印象。
第2章 系统的开发技术与工具
第2.1节 系统使用的开发技术和工具
2.1.1开发工具与环境
(1)JDK1.6;
(2)Tomcat6.0和MyEclipse8.6;
(3)MySQL数据库;
(4)运行环境是PⅢ以上,256MB,windowsXP、win7操作系统。
2.1.2开发技术
本系统使用的开发技术:
在J2EE5.0的环境下使用JSP。
[1]
第2.2节 系统开发的技术与语言
2.2.1JSP
JSP(JavaServerPages)是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。
JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。
[2]用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。
2.2.2EL
EL(ExpressionLanguage)
表达式语言的灵感来自于ECMAScript和XPath表达式语言,它提供了在JSP中简化表达式的方法。
它是一种简单的语言,基于可用的命名空间(PageContext属性)、嵌套属性和对集合、操作符(算术型、关系型和逻辑型)的访问符、映射到Java类中静态方法的可扩展函数以及一组隐式对象。
EL提供了在JSP脚本编制元素范围外使用运行时表达式的功能。
脚本编制元素是指页面中能够用于在JSP文件中嵌入Java代码的元素。
它们通常用于对象操作以及执行那些影响所生成内容的计算。
JSP2.0将EL表达式添加为一种脚本编制元素。
2.2.3JSTL
JSTL(JSPStandard Tag Library,JSP标准标签库)是一个不断完善的开放源代码的JSP标签库,是由apache的jakarta小组来维护的。
JSTL只能运行在支持JSP1.2和Servlet2.3规范的容器上,如tomcat4.x。
在JSP2.0中也是作为标准支持的。
[3]
2.2.4Struts
Struts是Apache基金会Jakarta项目组的一个OpenSource项目,它采用MVC模式,能够很好地帮助java开发者利用J2EE开发Web应用。
和其他的java架构一样,Struts也是面向对象设计,将MVC模式"分离显示逻辑和业务逻辑"的能力发挥得淋漓尽致。
Struts框架的核心是一个弹性的控制层,基于如JavaServlets,JavaBeans,ResourceBundles与XML等标准技术,以及JakartaCommons的一些类库。
Struts有一组相互协作的类(组件)、Servlet以及jsptaglib组成。
基于struts构架的web应用程序基本上符合JSPModel2的设计标准,可以说是一个传统MVC设计模式的一种变化类型。
[4]
Struts的目的是为了减少在运用MVC设计模型来开发Web应用的时间。
Struts跟Tomcat、Turbine等诸多Apache项目一样,是开源软件,这是它的一大优点,使开发者能更深入的了解其内部实现机制。
除此之外,Struts的优点主要集中体现在两个方面。
Taglib和页面导航。
Taglib是Struts的标记库,灵活运用,能大大提高开发效率。
另外,就目前国内的JSP开发者而言,除了使用JSP自带的常用标记外,很少开发自己的标记,或许Struts是一个很好的起点。
第3章 系统需求分析
第3.1节 编写目的
随着电子信息的发展,酒店管理渐渐采用电脑管理的方式,在最近几年里,酒店客房管理系统已经广泛地被应用到各个大中小型酒店、旅馆中。
随着网络在国内的逐步成熟及普遍,酒店客房管理系统的形式已经不再拘泥于单一的文件管理,方便快捷的用户界面成为各酒店的首选。
信息技术的应用已经普遍应用于企业之间的业务往来以及企业内部的管理,采用酒店管理系统开销低效率高,酒店行业可以通过简便直接的方法快捷方便地管理商务信息,大幅提高了酒店管理的效率。
酒店业是统一的体系,从客源角度讲,市场也要求酒店业是个整体。
酒店行业管理体制被分离,尽管有以前的客观原因,但走向一体是必然的。
而酒店业采用信息技术无疑是对这一必然结果的强力推动,因此,采用对酒店管理采用信息技术已经成为一种必然的趋势。
第3.2节 背景
本系统是基于B/S模式下研究开发,实现了酒店客房管理系统的服务模块部分,具有客房管理、查询管理、报表管理、系统管理等功能模块,减轻了酒店前台服务人员和酒店管理人员的工作负担。
[5]
第3.3节 定义
用例图(UserCase)是被称为参与者的外部用户所能观察到的系统功能的模型图,呈现了一些参与者和一些用例,以及它们之间的关系,主要用于对系统、子系统或类的功能行为进行建模。
活动图(activitydiagram,动态图)是阐明了业务用例实现的工作流程。
时序图(SequenceDiagram)用来显示对象之间的关系,并强调对象之间消息的时间顺序,同时显示了对象之间的交互。
类图(Classdiagram)是显示了模型的静态结构,特别是模型中存在的类、类的内部结构以及它们与其他类的关系等。
类图不显示暂时性信息。
数据流图仅以数据流的形态来反映一个组织中整个管理业务的过程。
[7]
层次方框图,它是用树形结构的一系列多层次的矩形框描述数据的层次结构。
如某个产品的数据结构。
第3.4节 任务概述
3.4.1目标
需求分析的目的在于与开发人员与用户之间达成系统开发的共识,使开发人员所考虑的系统在功能(系统能做什么)、简单操作,良好界面,个人信息保密性,系统安全与稳定,良好账户管理,友好信息返回模式(如报表功能)。
3.4.2用户特点
仅供酒店前台工作人员(服务员)和酒店管理人员(经理)使用。
3.4.3假定和约束
(1)在毕业答辩前完成该系统。
(2)必须使用或避免使用的特定技术、工具、编程语言和数据库。
(3)所要求的开发规范或标准。
第3.5节 需求规定
3.5.1需求规定
(1)系统总体模块的描述如图3.1所示。
图3.1系统总体框架图
(2)用户登录功能模块
运行系统的首页login.jsp,将会出现系统的首页,可以从系统的首页进入到系统的登录页面。
点击用户登录,将会出现登录页面,该窗口中主要实现用户名和密码的输入、对数据库的查找操作,如果输入的用户名和密码正确,则将相应于该用户权限的功能项设置为可用,并登录系统;否则,提示错误信息,按确定按钮后,返回登录窗口。
登录模块层次图如图3.2所示。
图3.2层次图
(3)房客管理模块功能
房客管理模块部分的操作由酒店前台工作人员来完成。
房客管理模块的功能
①来宾预定;
②来宾入住;
③会员信息添加;
④房间查询;
⑤消费信息管理;
房客管理模块功能描述如图3.3所示。
图3.3房客管理模块功能描述图
(4)查询管理模块功能
在查询管理这个模块里,可以查询客房的信息、入住信息、预定信息、会员信息,不同权限的人不能越权进行操作。
实现的功能如下
①来宾预定情况查询;
②来宾入住情况查询;
③会员信息查询;
④房间查询;
⑤用户登录系统情况查询;
⑥来宾结账历史查询;
查询管理模块功能描述如图3.4所示。
图3.4查询管理模块功能描述图
(5)报表管理模块功能
根据用户的不同需求可以查询不同的报表。
①客房入住报表;
②旅客结账报表;
报表管理模块功能描述如图3.5所示。
图3.5报表管理模块功能描述图
(6)系统管理模块功能
本模块仅供酒店管理人员使用,可以对系统用户和房间等信息进行查询和维护。
①添加系统操作用户;
②查询系统操作用户;
③修改系统操作用户信息;
④删除系统操作用户信息;
⑤添加房间信息;
⑥查询房间信息;
⑦修改房间信息;
⑧删除房间信息;
系统管理模块功能描述如图3.6所示。
图3.6报表管理模块功能描述图
(7)系统维护
用户在第一次使用系统时,在服务器端需要用户做系统初始化的处理,包括
①设置系统使用用户及口令、权限的级别,不同要求的用户授不同权限,可限制一次性访问数据库用户数量。
②对每个访问数据库的登陆用户有日志记录。
由系统管理员维护。
在系统运行过程中,数据库管理员在系统运行过程中,还可以及时地进行系统数据的更改,如:
对系统用户的更改,对房间信息的更改,定期做好系统数据的备份操作、还原、清理等。
3.5.2对性能的规定
(1)时间特性要求
在时间特性上,当用户发出命令请求时的服务器的响应时间、对数据更新处理、数据转换与传输时间,运行时间等上,本模块均不涉及。
[8]
(2)灵活性
系统支持多种操作系统的运行环境,多不同操作系统,不同文件格式的磁盘上的数据均能实现信息的互通,及共享。
如:
在Linux平台下时,同样能和其他的系统一样进行数据存取同步,不会出现系统之间互不兼容的情况,系统支持多系统之间的互连互通,系统有巨大的强健性。
(3)输人输出要求
系统开发基于B/S的开发模式,界面直观、简洁,人机交互性强。
基于表单的数据录入方式,框架的录入方式操作。
用户使用时,只要是按照格式和要求填入信息,系统在后台响应用户操作过程。
让用户在最短时间里,不需要经过专门培训,就可以轻松上手使用。
[9]
3.5.3数据管理能力要求
(1)静态数据
E-R图如3.7所示。
图3.7来宾-房间E-R
(2)动态数据
来宾入住信息添加,来宾预订信息添加,酒店会员信息添加,系统用户添加,房间信息添加,来宾入住信息变更,来宾预订信息变更,酒店会员信息变更,系统用户变更,房间信息变更。
(3)数据库描述
数据库名称:
design
①数据表字典
数据字典,如表3.1所示。
表3.1数据字典
表的编号
表名
代码
内容
01
房间类型表
roomtype
记录房间类型的基本信息
主要字段:
房间类型编号,房间类型,床位数,单价,押金,删除标记
02
入住信息表
live
记录来宾入住的基本信息
主要字段:
入住单号,房间号,房间类型编号,客户类型编号,客户编号,客户名称,性别,证件类型,证件编号,人数,入住天数,消费数量,操作员,状态标志
03
房间表
Room
记录来宾预定的基本信息
主要字段:
客户名称,客户点哈,房间类型编号,房间号,预抵时间,保留时间,预定时间,删除标志
04
结算表
Countcost
记录结账的基本信息
主要字段:
结账单号,入住单号,实住天数,金额,结算时间,删除标记
05
日志表
Custom
记录用户登录系统的基本信息
主要字段:
操作时间,操作员,删除标记
06
操作员信息表
Users
记录操作员的基本信息
主要字段:
用户登录ID,登录密码,用户权限,删除标记,保留1,保留2
08
消费表
Extrathing
记录房间占用的基本信息
主要字段:
消费信息
房间类型表数据字段字典,如表3.2所示。
表3.2房间类型表
属于的表
字段名
允许为空
类型
说明
房间类型表
Pk
×
Int
主键
房间类型表
id
×
Varchar
房间类型编号
房间类型表
R_type
×
Varchar
房间类型
房间类型表
Bed
×
Int
床位数
房间类型表
Price
×
Float
单价
房间类型表
Foregift
×
Float
押金
房间类型表
Cl_room
×
Varchar
是否钟点房
房间类型表
Remark
√
Varchar
备注
房间类型表
Sysmark
×
Int
系统级标志
房间类型表
Delmark
×
Int
删除标记
房间类型表
Other1
√
Varchar
保留1
房间类型表
Other2
√
Varchar
保留2
入住信息表数据字段字段,如表3.3所示。
表3.3入住信息表
属于的表
字段名
允许为空
类型
说明
入住信息表
Pk
×
Int
主键
入住信息表
In_no
×
Varchar
入住单号
入住信息表
R_no
×
Varchar
房间号
入住信息表
R_type_id
×
Varchar
房间类型编号
入住信息表
Main_room
×
Varchar
主房间号
入住信息表
Main_pk
×
Int
主pk
入住信息表
C_type_id
×
Varchar
客户类型编号
入住信息表
M_id
×
Varchar
客户编号
入住信息表
C_name
×
Varchar
客户名称
入住信息表
C_jp
√
Varchar
客户名称简拼
入住信息表
Sex
×
Varchar
性别
入住信息表
Zj_type
×
Varchar
证件类型
入住信息表
Zj_no
×
Varchar
证件编号
入住信息表
Address
×
Varchar
地址
入住信息表
Renshu
×
Int
人数
入住信息表
In_time
×
Varchar
入住时间
入住信息表
Days
×
Int
预主天数
入住信息表
Account
×
Float
消费数量
入住信息表
Foregift
×
Float
押金
入住信息表
Chk_no
×
Varchar
结账单号
入住信息表
Chk_time
×
Varchar
结算时间
入住信息表
Remark
√
Varchar
备注
入住信息表
Userid
×
Varchar
操作员
入住信息表
Statemark
×
Varchar
提醒标志
入住信息表
Delmark
×
Int
状态标志
入住信息表
Other1
√
Varchar
保留1
入住信息表
Other2
√
Varchar
保留2
预订信息表数据字段字典,如表3.4所示。
表3.4预订信息表
属于的表
字段名
允许为空
类型
说明
预订信息表
Pk
×
Int
主键
预订信息表
C_name
×
Varchar
客户名称
预订信息表
C_jp
×
Varchar
客户名称简称
预订信息表
C_tel
×
Varchar
客户电话
预订信息表
R_type_id
×
Varchar
房间类型编号
预订信息表
R_no
×
Varchar
房间号
预订信息表
Pa_time
×
Varchar
预抵时间
预订信息表
Keep_time
×
Int
保留时间
预订信息表
Eng_time
×
Varchar
预定时间
预订信息表
Remark
√
Varchar
备注
预订信息表
Engagemark
×
Int
预定状态标志
预订信息表
Cluemark
×
Int
提醒标志
预订信息表
Delmark
×
Int
删除标志
预订信息表
Other1
√
Varchar
保留1
预订信息表
Other2
√
Varchar
保留2
结算表数据字段字典,如表3.5所示。
表3.5结算表
属于的表
字段名
允许为空
类型
说明
结算表
Pk
×
Int
主键
结算表
Chk_no
×
Varchar
结账单号
结算表
In_no
×
Varchar
入住单号
结算表
Days
×
Int
实住天数
结算表
Money
×
Float
金额
结算表
Chk_time
×
Varchar
结算时间
结算表
Remark
√
Varchar
备注
结算表
Delmark
×
Int
删除标记
结算表
Other1
√
Varchar
保留1
结算表
Other2
√
Varchar
保留2
日志表数据字段字典,如表3.6所示。
表3.6日志表
属于的表
字段名
允许为空
类型
说明
日志表
Pk
×
Int
主键
日志表
Time
×
Datetime
操作时间
日志表
Operator
×
Varchar
操作员
日志表