毕业论文1

学号:1245350758

河南大学2016届本科毕业论文

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

The design and implementation of hotel management system based on

JAVA

论文作者姓名:王家明

作者学号:1245350758

所在学院:软件学院

所在专业:软件工程

导师姓名职称:赵龑骧(讲师)

论文完成时间:2016年3月30日

2016年3月30日

河南大学本科生毕业论文(设计、创作)承诺书

2条即以备注为准

目录

摘要 ...................................................................................................................................................... I I ABSTRACT ........................................................................................................................................... III 第1章绪论 . (1)

1.1系统开发的背景和现状 (1)

1.2酒店管理系统应用优势 (1)

第2章系统开发的技术及架构 (1)

2.1 B/S系统 (2)

2.2 MVC设计模式 (2)

2.3 JAVA语言 (2)

2.4 JSP介绍 (3)

2.4 数据库技术 (3)

2.5 JDK版本的选择 (3)

第3章系统分析与设计 (3)

3.1 需求分析 (3)

3.2 可行性分析 (4)

3.3流程分析 (4)

3.3.1业务流程分析 (4)

3.3.2 数据流分析 (5)

3.4.系统功能计 (5)

3.4.1.前台模块的功能 (5)

3.4.2.后台模块的功能 (6)

3.5 数据库设计 (7)

3.5.1 表的设计 (7)

3.5.2E-R图 (9)

第4章系统实现 (11)

4.1 用户界面 (11)

4.1.1 用户注册登录 (11)

4.1.2 客房预订 (13)

4.2 管理人员界面说明 (13)

4.2.1 管理人员用户登录及密码设置 (13)

4.2.2 管理员对基础信息管理的操作 (15)

4.2.3 操作员对入/订/退业务操作 (17)

结论 (19)

致谢 (20)

参考文献 (21)

I

摘要

进入新世纪后我国的经济增长迅速,人们的生活质量不断提高,带动旅游业高速发展,与其相对于的酒店服务行业,迫切需要提高档次。而酒店管理系统具有强大的管理功能,完美实现了宾馆各个方面的管理需求。酒店宾馆作为一个服务性行业,从客房的营销即客人的预定开始,到入住登记直到最后退房结账,整个过程应该能够体现以宾客为中心,提供快捷方便服务,给宾客感受一种顾客至上的享受,提高管理水平,简化各种复杂操作,要包含了:查询,结算,统计凭证规范等,在最短时间内完成酒店业务规范操作,这样才能令旅客舒适难忘。

本文论述了酒店管理系统的设计和实现。并基于B/S架构,使用JAVA编程前台,SQLSever2005开发后台的数据库,用前台和后台结合的方式开发下开发了酒店管理系统。系统的主要功能包括散客开单、宾客结帐、客房预订、营业查询、客户管理、网络设置、系统设置等,操作方便快捷实现了可利用住房资源的可视化,可及时查阅 ,记录等功能。提高酒店的管理效率,改善服务水准的手段,满足了顾客和酒店管理员的需求。这样旅客入住的所等待的时间就会减少,而酒店能更好的处理旅客入住的相关手续,为酒店管理提供方便。

关键词:java;B/S架构;SQL server2005;酒店管理

II

ABSTRACT

After entering the new century our country's rapid economic growth, people's quality of life, driving the development of tourism highway, and its relative to the hotel service industry, the urgent need to improve the grade. Hotel management system has powerful function, perfect for various aspects of the hotel management needs.

This paper discusses the design and implementation of the hotel management system. And based on B/S structure, using JA V A programming at the front desk, SQLSever2005 database development background, combined with the front desk and the background of the hotel management system is developed under way to develop. System's main features include individual billing, guests checkout, room reservations, business inquiries, customer management, network Settings, system Settings, etc., should be able to reflect the whole process to the guests as the center, provide quick and convenient services, to the guests feel a kind of the enjoyment of the customer is supreme, improve the level of management, simplifying the complex operation, mainly includes: the query, settlement, statistics, etc., in the shortest possible time to complete specifications, such as the operation of hotel management operation convenient to realize the visualization of housing resources available, can be found in a timely manner, records, and other functions. Improve the efficiency of the hotel management, improve service levels, meet the needs of the customer and the hotel manager. So that passengers in the waiting time would be reduced, and the hotel can better handle the passenger check-in formalities, provide convenience for hotel management.

Keywords: Java, B/S architecture, SQL server2005 and hotel management

第1章绪论

1.1系统开发的背景和现状

21世纪,全球网络化,科技在突飞猛进。计算机应经普及到我们社会和经济生活中的各个领域。人们进行信息交流的深度与广度不断增加,这使得我们的服务、管理也相应该跟得上时代的步伐去前进。随着经济的不断发展,人们对服务业的要求也不断提高,如何为客户提供更加准确及时的服务,成为各个酒店竞争关键。所以酒店业务信息化建设就成为了客户衡量酒店提供商服务标准的一个重要准则。

1.2酒店管理系统应用优势

提高酒店经营和工作效率,界面直观,操作使用简捷、明快;数据统一备份,维护工作量最低。支持在线预订,会员管理,酒店网站直销。有明确的信息板块,为相关部门提供详尽、明了的房间信息和酒店营业情况。另外酒店管理系统能提高服务质量使入住登记简便化、客户管理方便化、信息查询快捷化、退房程序的智能化。

第2章系统开发的技术及架构

本章主要讨论了酒店管理系统开发中使用的相关技术,本系统采用了B/S结构。B/S结构分为Web浏览器、中间层和后台数据库服务器三个层次。中间层和数据库层

的通信采用了JDBC技术,并使用了数据库缓冲技术。中间层的开发采用了MVC模式。为了提供统一的认证界面,本系统附加了一个统一用户认证的功能,即单点登录。在单点登录中,各个应用系统之间的通信采用了Web Service。

2.1 B/S系统

目前应用广泛的Web数据库系统是一种基于B/S(Browser/Server)结构的系统。B/S模式结构通常为三层结构,它以Wed数据库为中心,以HTTP为传输协议,客户端通过浏览器访问Web服务器和与其相连的后台数据库。

本系统采用了B/S流行架构开发,数据库服务器采用Windows7系统,利用开发工具Myeclipse以及Tomcat服务器,并且安装Sql Server 2005数据库。

2.2 MVC设计模式

Mvc把系统分为了三个模式,即Model模型、视图、控制器,它是软件工程中的一种框架模式。这三种模式的目的是为了实现一种动态网页的程序设计,使后续对程序的扩展简化和修改,且能够使程序的某一部分得到重复使用。编程人员可以通过自身的专长分组:

? View(视图)–设计界面的人员对图形界面进行整合设计。

? Controller(控制器)- 负责转发请求,对请求进行处理。

? Model(模型) - 程序员编写程序功能,数据库专家进行数据库设计以及数据管理。

2.3 JAVA语言

Java的特点:

(1)J ava是面向对象的编程语言,和其他面向对象编程语言一样,在java的世界里,万物皆对象,面向对象编程的好处就是能够在语言级别模拟现实世界的场景,简化开发。

(2)Java是基于虚拟机运行的程序,它可以实现一处编译多处运行。

(3)Java实现了内置多线程支持。多线程允许同时完成多个任务。

(4)java语言在一定程度上能够称为动态语言,由于反射机制,让java能够在运行时再获取相应类型信息,大大减少开发的代码量的同时,能够提供更通用的程序。

2.4 JSP介绍

JSP是由Sun Microsystems公司倡导,许多公司参与一起建立的一种动态网页技术标准。该技术为构建动态的Web页面提供了一个快速而简洁的方法。JSP技术的设计目的是为了构建基于Web的应用程序更加容易和快捷,使得这些应用程序既能在windows下运行,也能够在其他操作系统上运行。

为了高效率的进行web动态网页的开发,JSP进行了改动,使其成为快速建立跨平台的动态网站的首选方案。

2.4 数据库技术

数据库系统实现了整体数据的结构化,这是数据库的最主要的特征之一。这里所说的“整体”结构化,是指在数据库中的数据不再仅针对某个应用,而是面向全组织;不仅数据内部是结构化,而且整体式结构化,数据之间有联系。

因为数据是面向整体的,所以数据可以被多个用户、多个应用程序共享使用,可以大大减少数据冗余,节约存储空间,避免数据之间的不相容性与不一致性。

数据与程序是独立的,包括物理独立性和逻辑独立性,把数据的定义从程序中分离出去,加上存取数据的由DBMS负责提供,从而简化了应用程序的编制,大大减少了应用程序的维护和修改。数据独立性包括数据的物理独立性和逻辑独立性。

2.5 JDK版本的选择

Java Development Kit (JDK) 是Sun公司针对Java开发员的软件开发工具包。自从Java出世以来,JDK已经成为使用最遍及的Java SDK(Software development kit)。

本系统采用JDK 6 edition update 7版本。

第3章系统分析与设计

3.1 需求分析

酒店管理信息管理系统是以顾客订房信息为基础建立的管理系统,是管理酒店

客房业务的重要方法、手段、技术和操作过程的集合。作为一个管理信息系统,其服务的对象是双方面的:酒店和顾客。因此,一个好的酒店管理系统,必须让双方在使用时都快捷方便。

顾客通过输入姓名、密码等基本信息,由系统自行生成酒店相应的统计数据及各类统计报表以供用户查询、打印,另外操作人员还可以对这些基本信息进行定期的更新和删除, 酒店管理系统力求给用户方便快捷的途径去管理这些繁琐的数据。为酒店带来方便,也为顾客带来方便,实现信息化。

3.2 可行性分析

(1)技术上的可行性

本管理信息系统将采用技术成熟的MyEclipse作为前台开发工具。后台数据库采用SQL Server 2005数据库,SQL功能强大、简单易学、使用方便,已经成为了数据库操作的基础,并且现在几乎所有的数据库均支持SQL。因此,系统的软件开发平台已成熟可行。硬件方面,科技的飞速发展使硬件的更新速度越来越快,容量越来越大,可靠性越来越高,价格越来越低,其硬件平台完全能满足此系统的需要。本系统使用Java技术进行开发,编程语言使用Java,Java语言是公认的易学易用的语言。

(2)经济上的可行性

本系统由本人自主开发,免费使用。操作人员只需简单培训即可操作。管理和维护比较简单,除了必要的设备投资外,后期只需少量资金就可确保运转。因此对于中小型酒店在经济上是完全可以接受的。

本系统的使用能大大提高员工工作效率,加速资金周转、降低各项成本及改善服务质量,能够取得良好的经济效益综合以上分析,此次毕业设计决定利用Java,JSP 和SQL技术设计网上酒店客房预订管理系统。Java具有跨平台的优势。JSP可以创建和运用动态、交互的WEB服务器应用程序。同时,JSP具有向跨平台跨服务器的优点。SQLServer是一个杰出的数据库平台,具有功能强大,安全可靠等特点,可用于大型联机事务处理、数据仓库及电子商务等。

(3)操作上的可行性

在操作上对开发人员要求不高,Windows操作系统已经非常普及了,Java语言也相对容易上手,数据库构建复杂但并不困难。

3.3流程分析

3.3.1业务流程分析

(1)注册和登录:顾客进入酒店网页首页,进行登录,如果是老顾客,直接输入用户名密码即可,如果是新顾客,进行注册过在进行登录。

(2)浏览酒店客房状态信息:顾客可以通过查寻酒店房间信息,了解空闲房间的剩余。

(3)预订:顾客点击预订,选择日期,房间类型进行预订。

(4)查看预订信息:从预订房间查看,可以看到客户自己当前订单,已入住用户可以查看到自己的入住单。

3.3.2 数据流分析

该系统数据流程比较简单,管理员可以添加酒店客房信息(包括楼信息,楼层信息,房间信息等),然而这些信息顾客是可以浏览的,但是顾客没有权限对这些信息进行修改,这些信息对于顾客而言是单向的。对于预定信息,管理员可以增删改查预定信息。

3.4.系统功能计

根据酒店客房信息管理系统基于B/S的特点,可以将其分为前台和后台两个部分进行设计,分别对应客人、操作员和管理员。前台主要用于客人查询客房、预订客房、查询订单,操作员对会员信息的修改,以及预订客房等功能;后台主要用于酒店管理员对酒店入住情况进行管理。

3.4.1.前台模块的功能

客人进入酒店网站的首页,根据客房的类型,查询酒店的客房信息,并在网上完成了客房的预订。客人在预订了客房后可通过客房编号对自己的订单信息进行查询、修改和删除操作。系统功能架构的前台会员功能结构图,如图3.1所示。

图3.1 系统总体结构图-前台会员功能结构图系统功能架构的前台操作员功能结构图,如图3.2所示。

图3.2 系统总体结构图-前台操作员功能结构图

3.4.2.后台模块的功能

(1)客房信息管理

只限于管理员操作。对房间的属性进行增删改查。

(2)订单管理

对会员的预定的账单进行增加、删除、查找。

(3)入住管理

对预订会员进行入住登记。

(4)退房结账管理

对入住会员进行退房结算操作,并计入账单。

(5)系统维护

系统有三种权限的帐号:一种是管理员,一种是会员,还有一种是操作员。管理员有权添加更改或删除会员或是操作员信息。

后台结构图如图3.3所示。

图3.3 系统总体结构图-后台功能模块图

3.5 数据库设计

3.5.1 表的设计

表3.1 房间信息表

表3.2 管理员信息表

表3.3 结算账单信息表

表3.4 操作员信息表

表3.5 新闻信息表

表3.6 会员信息表

表3.7 会员信息表(续表)

3.5.2E-R图

将“管理员”、“房间信息”确定为实体,“管理”作为联系,可以得到管理员、客房信息的局部E-R图,如图3.4所示。

图3.4 客房信息E-R图

以上为部分功能子系统的分E-R图,根据各个分E-R图,现在给出总体E-R图,如图3.5所示。

图3.5 系统总体E-R简图

第4章系统实现

4.1 用户界面

4.1.1 用户注册登录

(1)会员登录界面,整个界面都是用标签table来完成的。左侧的登录界面是一个表单form,通过标签input来做出登录和重置按钮,在登录时input的name是submit,提交方式是post,向数据库提交数据进行匹配;重置是JavaScript里的一个自带的按钮叫reset,来实现用户名密码清空。用户注册做的是一个超链接,跳转到用户注册界面。具体界面如图4.1所示。

图4.1用户登录界面

用户注册界面,也是通过表单form来完成的,用submit向会员信息数据库提交内容,如图4.2所示。

图4.2 用户注册界面

(2)部分代码

用户登录

style="font-size:12px">

用户名
密码

用户注册

普通用户

  

4.1.2 客房预订

客人预订登记和预定房间查看主界面,整个界面是用的一个框架模板,分为3个部分,整个网页是3个jsp结合组成的。上面部分做的是一个欢迎语和时间显示,以及3个超链接进行修改密码,退出系统,返回主页,所作的链接都是跳转到另一个jsp页面。左下方是一个菜单栏,也是一个form表单,点击功能后,右边会跳转到相应表面。具体如图4.3所示。

图4.3 客人预订登记和预定房间查看主界面

客人预订登记具体界面,同样是一个form表单,在入住时间做了个时间控件,它是JavaScript自定义的。具体界面如图4.4所示。

图4.4 客人预订登记具体界面

4.2 管理人员界面说明

4.2.1 管理人员用户登录及密码设置

(1)界面介绍

管理员登录界面,设置了3种权限,分别是操作员,管理员和会员,整个界面也是一个form表单,用submit想数据库提交数据,将数据与数据库中表中的内容进行匹配。具体界面如图4-5所示。

图4.5 管理员登录界面

管理员用户密码设置界面,当原密码为空,或者新密码与在此输入的密码不一致,这里做了个JavaScript的匹配,出跳出提示窗口。具体界面如图4.6所示。

图4.6 管理员用户密码设置界面

(2)部分代码

//密码设置