本 科 毕 业 设 计 说 明 书( 论 文 ) 第 1 页 共 28 页
1 引言
1.1 背景
随着中国经济的发展与人们生活水平的提高,旅游更加活跃,客户的要求愈发多
样化,酒店行业的竞争也愈发透明和激烈。一个酒店如果想在激烈的竞争中不被淘汰,
既要有好的经济基础,还要有好的客户服务,做到能及时满足顾客的需求,按时分配
房间,及时解决顾客退房等突发情况,这就必须计划出一个最佳方案,使宾馆的入住
率达到最大值。
同时,为了灵活掌握客户的各方面需求,融入整个商业链,必须通过网络来扩展
业务。其中酒店预定是酒店发展的重要环节。酒店预定先后经历了以人工、电话、计
算机为平台的预订时期。利用现有的网络资源,设计并开发酒店预订系统将成为酒店
行业发展新的增长点。在 IT 技术高度发达的今天,酒店预定系统已经为酒店带来在
营销、管理、服务质量、工作效率等方面的好处。国内较为成熟的酒店预定系统已具
备客房管理模块、酒店预定模块、评论模块、后台管理模块等多项功能。
为了提高服务质量,酒店的预定系统会随客人的需求而不断完善。及时地共享酒
店的信息,给客人提供人性化的服务成已成为酒店预定的目标与方向。可以预见的是,
未来酒店的竞争将在智能化、信息化方面展开[1]。
1.2 开发目的与意义
随着人员流动规模的不断扩大,酒店数量的迅速增长,与之相关的订房管理的各
类信息量也成倍增加。面临如此规模庞大的信息量,利用一个现代化的酒店预订系统
来提高订房管理工作的效率是相当必要的。采用这种管理系统,我们可以方便对信息
的规范管理和快速查询,从而减少了管理方面的工作量。传统手工的客房信息管理,
管理过程繁琐而复杂,执行效率低,并且易于出错。通过这样的系统,我们可以做到
信息的规范管理和快速查询,实现了客房信息管理的系统化、规范化和自动化,这样
不仅减少了管理工作量,还提高了管理效率,降低了管理成本。
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认
识,它已进入人类社会的各个领域并发挥着越来越重要的作用。它已经深入到日常工
作和生活的方方面面,比如文字处理、信息管理、辅助设计、图形图像处理、教育培
训以及游戏娱乐等。各行各业的人们无须经过特别的训练就能够使用电脑完成许许多
本 科 毕 业 设 计 说 明 书( 论 文 ) 第 2 页 共 28 页
多复杂的工作。然而,虽然现在世界上已经充满了多如牛毛的各种软件,但它们依然
不能满足用户的各种特殊需要,人们还不得不开发适合自己特殊需求的软件。今天,
计算机已经成为我们学习和工作的得力助手;计算机的价格已经十分低廉,性能却有
了长足的进步。通过计算机网络对宾馆、酒店业进行管理,克服了人为管理中人为因
素给企业管理带来的诸多不便,大大提高了宾馆、酒店的工作效率,为企业创造了更
大的利润。
1.3 运行环境
1.3.1 硬件配置
Windows 系统的计算机。
1.3.2 软件配置
开发环境及工具:Windows 操作系统,eclipse,Tomcat。
开发语言:Java,SQLite。
使用数据库:MySQL。
本 科 毕 业 设 计 说 明 书( 论 文 ) 第 3 页 共 28 页
2 开发工具及技术
此次设计主要采用 Eclipse 加 Tomcat 后台服务器进行,设计过程中页面主要使用
JSP 技术完成,数据库采用的是 MySQL 数据库,下面对 JSP、Servlet、JDBC、Tomcat
和 MySQL 进行简要介绍。
2.1
JSP
JavaServer Page(JSP)是一项将静态 HTML 和动态生成的 HTML 巧妙结合起来的
技术[2]。JSP 技术允许将脚本语言嵌入到 HTML/XML 文档中。在 JSP 文件被传送到客
户端之前,它的语法在服务器被解析,脚本程序被转化为 Servlet 进行处理。所产生的
Servlet 将生成动态的 HTML 数据并将其发送到客户端显示。与 ASP 技术不同,
JavaServer Page 所提供的脚本语言是 Java 语言。另外,JavaServer Page 还能够方便地
存取可重用 JavaBean 组件。JavaServer Page 能够将 Web 页面内容的生成和表现完全
分离开来。这样既可以充分发挥 HTML 的强大功能,又可以避免重复劳动,提高效率
[3]。
JSP 可以实现一次编写,多处运行,这是它的一个很大的优点。正常情况下,要
么就是系统有变更的时候,需要对 JSP 的代码做出一点修改,如更改一些系统配置。
支持 JSP 开发技术的系统平台很多很多。大体上来说,现在市面上流行的那些主流的
操作系统都可以支持该项技术,而且 JSP 还可以任意的扩展到其他系统平台当中[4]。
2.2
Servlet
Servlet(Server Applet),全称 Java Servlet。是用 Java 编写的服务器端程序。其
主要功能在于交互式地浏览和修改数据,生成动态 Web 内容。Servlet 是使用 Java
Servlet API(Java Servlet 应用程序设计接口)及相关类和方法的 Java 程序。Java Servlet
API 定义了一个 Servlet 和支持 Java 的应用服务器之间的一个标准接接口,这使得
Servlet 具有跨服务器平台的特性。当启动 Web 服务器或客户机第一次向 Servlet 请求
服务时,Web 服务器可以自动载入 Servlet。载入后,Servlet 继续运行并响应其它客户
机发出的请求,直至应用服务器上的 Servlet Engine 终止其运行。一个 Servlet 在一个
应用中只存在一个实例,为多个请求服务[5]。
本 科 毕 业 设 计 说 明 书( 论 文 ) 第 4 页 共 28 页
HTTP 请
Web 服务器
Web 浏览
HTTP 响应
静态页面
Servlet 容器
数据库
Servl
JSP
2.3
JDBC
图 2.2.1 Servlet 响应过程
JDBC 是 Java 数据库连接(Java Data Base Connectivity)技术的简称,是一种可
以为各种常用数据库提供无缝连接的技术[6]。JDBC 定义了 Java 语言同 SQL 数据之间
的程序设计接口 JDBC API。该接口是一个标准统一的 SQL 数据存取接口。应用 JDBC
API 接口,程序员在编程时,就可以不关心所要操作的数据库是哪个厂家的产品,从
而提高了软件的通用性[7]。
2.4
Tomcat
Tomcat 是 Apache 软件基金会(Apache Software Foundation)的 Jakarta 项目中的
一个核心项目,由 Apache、Sun 和其他一些公司及个人共同开发而成。Tomcat 服务
器是一个免费的开放源代码的 Web 应用服务器,属于轻量级应用服务器,在中小型
系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试 JSP 程序的首选。
Tomcat 具有处理 HTML 页面的功能,另外它还是一个 Servlet 和 JSP 容器,独立的
Servlet 容器是 Tomcat 的默认模式[8]。
2.5
MySQL
MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于
Oracle 公司[9]。MySQL 是最流行的关系型数据库管理系统,在 Web 应用方面 MySQL
是最好的 RDBMS(Relational Database Management System:关系数据库管理系统)
应用软件之一。MySQL 是一种关联数据库管理系统,关联数据库将数据保存在不同的
本 科 毕 业 设 计 说 明 书( 论 文 ) 第 5 页 共 28 页
表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
MySQL 所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采
用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,
尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库[10]
[11]。
本 科 毕 业 设 计 说 明 书( 论 文 ) 第 6 页 共 28 页
3 系统的可行性研究和需求分析
3.1 可行性研究
开发任何一个系统,都会受到时间和资源上的限制。因此,在每一个项目开发之
前,都要进行可行性分析,可以减少项目的开发风险,避免人力、物力和财力的浪费。
下面就技术、经济、操作和法律四个方面来介绍。
在技术可行性方面,本系统开发工具是 Eclipse 和 MySQL 数据库,开发语言是
Java,主要使用了 J2EE 的技术,Java 是一种面向对象编程语言,简单易学而且灵活
方便。大三时就学习了 Java 课程,大学期间也系统的了解了 J2EE 的知识,酒店预订
系统总体上开发难度不高,数据库的设计和操作是本系统设计的核心。在大学期间学
习过软件工程,软件测试,UML 统一建模语言等课程,每个学期也会完成对应的课
程设计,具备一定的系统分析、设计和测试能力。因此,完成系统实现在技术上完全
具有可行性。
在经济可行性方面,由于选择的开发工 具和服务器几乎全部为免费的开源软件,
并且由于是开发成本较低的基于 Web 的 B/S 模式,而非成本费用相对较高的 C/S 模
式,所以从经济上来讲是可行的。
在操作可行性方面,本系统操作简单,输入信息页面大多数都是下拉框的选择形
式,在某些页面,信息可以自动生成,无需输入,时间的输入也是用的日历控件,操
作简便,对操作人员的要求很低,只需对 Windows 操作熟练,加之对本系统的操作稍
加培训即可工作,而且本系统可视性非常好,所以在操作上不会有很大难度。
在法律可行性方面,本酒店预订系统是自行开发的系统,是很有实际意义的系统,
开发环境软件和使用的数据库都是开源代码,开发这个系统不同于开发普通的系统软
件,不存在侵权等问题,即法律上是可行的。
3.2 需求分析
1.用户需求分析
在确定任务可行后,开发人员需要进一步分析用户的具体需求,通过和用户沟通,
把用户对系统的口头描述,文档化,条理清晰地罗列出每一项具体实现的功能,并且
明确系统对性能方面的需求,具体到对响应速度、安全性等方面的要求[12] [13]。
本 科 毕 业 设 计 说 明 书( 论 文 ) 第 7 页 共 28 页
在高节奏生活的今天,人们整天在各个城市穿梭忙碌着,在过去跑到哪个城市后
才能进行预定客房,现在看来是否显得太麻烦,目前很多酒店都已经开始使用通过互
联网进行客房预定系统。这样进行酒店的管理就显得更加的轻松,能提高工作的效率,
为了方便对酒店和酒店大量资源信息的合理高效的进行组织和管理,同时应酒店的要
求,酒店预定系统的开发十分必要。
“酒店预定系统”主要是针对酒店预定工作而开发的应用软件。通过调查,通常
有系统管理员和酒店客户这两种用户,他们的基本需求如下:
系统管理员:对系统和数据库进行维护、管理酒店的客房信息,可以进行增加,删除
和修改的功能、对酒店的订单进行管理、对会员信息的管理、发布酒店新闻、以及留
言回复等相关功能。管理员用例图如图 3.2.1 所示:
图 3.2.1 管理员户用例图
订票客户:能够在酒店预定系统中注册登录、对该酒店所有的客房信息进行查看,能
够对酒店客房进行预定操作、能够查询自己的订单,查看其中的信息,并且对已经产
生的订单进行取消的操作、以及可以对酒店的客房进行评价并且留言,方便与酒店交
流,也可以让其他的客户浏览。客户用例图如图 3.2.2 所示:
本 科 毕 业 设 计 说 明 书( 论 文 ) 第 8 页 共 28 页
2.对本系统的基本要求
图 3.2.2 客户用例图
该系统主要实现的模块有:客房管理模块、酒店预定模块、评论模块和后台管理
模块。在前台页面,用户可以进行登陆、注册、查看房间、预定,在留言板对该系统
中的客房进行留言,还可以对自己的订单进行取消工作等。信息管理则主要在后台完
成,管理员根据实际情况,及时更新客房信息,包括添加、删除等操作,同时管理员
可以查阅客户留言的内容并进行回复,对订单进行相关的管理。
3.功能模块分析
系统功能模块如图 3.2.1 所示:
酒店预定系统
前台显示模
后台管理模
留
言
登
录
注
册
查
看
客
房
预
定
与
取
消
留
言
管
理
订
单
管
理
客
房
信
息
管
理
会
员
信
息
管
理
图 3.2.1 酒店预定系统功能模块