基于JSP的酒店客房管理系统设计的开发与实现.doc_第1页
基于JSP的酒店客房管理系统设计的开发与实现.doc_第2页
基于JSP的酒店客房管理系统设计的开发与实现.doc_第3页
基于JSP的酒店客房管理系统设计的开发与实现.doc_第4页
基于JSP的酒店客房管理系统设计的开发与实现.doc_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

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

文档简介

摘摘 要要 随着社会服务行业的发展,使用管理软件来管理酒店的客房信息也正逐步 成为众多酒店管理者的需求,而许多酒店也陆续采用了相关的酒店客房管理系 统,代替原来的手工记录管理,使效率有明显的提高,出错率显著下降酒 店客房管理系统可以实现对客房的科学化、规范化、查询顾客情况、定房信息、 以及结算信息等。有助于提高管理的效率,客房管理系统是根据某酒店对客房管 理的实际情况进行编写的,主要目的是为了方便酒店对客房的实际情况进行集 中的查询与管理工作,以提高整个酒店的工作。主要有用户信息管理模块、客 房类型管理模块、客房信息管理模块、客户信息查询模块、经营状况统计模块 等。 整个宾馆信息管理系统分为两大部分,即后台的数据管理维护和前台的操 作。后台数据的管理能保证系统各项功能的正常运行,前台操作能提供给宾馆 客户尽可能方便快捷的服务。 本系统使用功能强大的 MyEclipse 8.5 作为开发工具,对整个系统进行设计 与开发。本系统可以根据各应用的具体情况,适当加以修改,以便更好应用。 另外,本系统还设计了详细的查询功能,以供管理人员快速掌握酒店的各项业 务及相关信息。 在数据库设计阶段使用了 Microsoft SQL Server 2005 软件,同时介绍了数据 库的相关知识,对数据库进行数据库需求分析和数据库结构设计。分析在数据 库中要建立多少存储信息的表,又列出各表的结构,分析表中字段之间的。 关键词关键词:JSP 酒店 客房 Microsoft SQL Server 2005 目 录 摘摘 要要I 目目 录录I 第一章第一章 绪论绪论.1 1.1 系统开发的背景.1 1.2 系统开发的意义.1 1.3 系统开发的主要内容.2 第二章第二章 相关技术介绍相关技术介绍.3 2.1 JSP 简介.3 2.1.1 JSP 的优点4 2.1.2 JSP 的工作原理4 2.1.3 JSP 的运行环境4 2.2 C/S 与 B/S 模式.6 2.2.1 C/S 与 B/S 的比较分析6 2.2.2 B/S 模式的优势6 2.3 SQL Server 2005 简介.7 2.3.1 SQL Server 数据库数据体系结构.9 2.3.2 SQL 语言的组成.9 2.3.3 对数据库进行操作9 第三章第三章 系统的分析与设计系统的分析与设计.10 3.1 系统需求分析.10 3.2 开发及运行环境11 3.2.1 网站开发环境11 3.2.2 服务器端11 3.2.3 客户端11 3.3 功能模块的设计11 3.3.1 设计目标11 3.3.2 客房管理系统前台的设计12 3.3.3 客房管理系统后台的设计13 3.4 数据库逻辑结构设计14 第四章第四章 系统各模块的实现系统各模块的实现.17 4.1 客房管理系统首页的实现17 4.1.1 客房管理系统首页概述17 4.1.2 客房管理系统首页实现过程17 4.2 客房管理系统前台的实现19 4.2.1 客房管理系统前台概述19 4.2.2 客房管理系统前台实现过程19 4.2.3 客户信息及客房类型的查询20 4.2. 客房信息操作20 4.3 客房管理系统后台的实现20 4.3.1 客房管理系统后台概述20 4.3.2 客房管理系统后台实现过程21 第五章第五章 系统测试系统测试.24 5.1 功能测试24 5.2 可用性测试24 5.3 安全性试25 第六章第六章 总结与展望总结与展望.27 致致 谢谢.28 参考文献参考文献.29 第一章第一章 绪论绪论 1.1 系统开发的背景系统开发的背景 随着人员流动规模的不断扩大,酒店数量的急剧增加,有关客房管理的各 种信息量也在不断成倍增长。面对庞大的信息量,就需要有酒店客房订购管理 系统来提高客房管理工作的效率。通过这样的系统,我们可以做到信息的规范 管理和快速查询,从而减少了管理方面的工作量。 传统手工的客房信息管理,管理过程繁琐而复杂,执行效率低,并且易于 出错。通过这样的系统,我们可以做到信息的规范管理和快速查询,实现了客 房信息管理的系统化、规范化和自动化,这样不仅减少了管理工作量,还提高 了管理效率,降低了管理成本。 酒店客房系统系统对酒店加强客房信息管理有着极其重要的作用,就一所 客房数量较大的酒店来说,它的设计内容非常复杂而且繁多,比如拥有客房信 息管理、客房类别信息管理、预定信息管理等功能,而且设计的模块也很多, 比如用户信息管理模块、客房类型管理模块、客房信息管理模块、客房经营管 理模块、客户信息查询模块、经营状况统计模块等等。 1.2 系统开发的意义系统开发的意义 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已被人们深刻 认识到,它已进入人类社会的各个领域并发挥着越来越重要的作用。并且深入到 日常工作和生活的方方面面,比如文字处理、信息管理、辅助设计、图形图像 处理、教育培训以及游戏娱乐等。各行各业的人们无须经过特别的训练就能够 使用电脑完成许许多多复杂的工作。然而,虽然现在世界上已经充满了多如牛 毛的各种软件,但它们依然不能满足用户的各种特殊需要,人们还不得不开发 适合自己特殊需求的软件。 今天,计算机已经成为我们学习和工作的得力助手;计算机的价格已经十 分低廉,性能却有了长足的进步。它已经被应用于许多领域,计算机之所以如 此流行的原因主要有以下几个方面: 首先,计算机可以代替人工进行许多繁杂的劳动; 其次,计算机可以节省许多资源; 第三,计算机可以大大的提高人们的工作效率; 第四,计算机可以使敏感信息更加安全,等等。 我作为一个计算机应用的大专生,希望可以在这方面有所贡献。改革的总 设计师邓小平同志说过“科学技术是第一生产力” ,我希望能用我三年的所学编 制出一个实用的程序来帮助学进行更有效的酒店客房预定系统。 归纳起来,好处大约有以下几点: 1可以在计算机上管理酒店客房; 2只需一名录入员即可操作本系统,节省大量人力; 3可以迅速查到所需信息。 现在我国还有许多的酒店客房的管理水平还停留在纸介质的基础上,这样 的机制已经不能适应时代的发展,因为它浪费了许多人力和物力,采用传统的 纸介质的管理模式,还主要依赖于人力手工的操作,并归档编号保存,事后如 需查阅,则要人工从浩瀚的资料中查找,既费时费力又容易出错。作为保存资 料的介质-纸张,又有容易被火烧毁,易被虫蛀,易发霉变质等等缺点。在信 息时代这种传统的管理方法必然被计算机为基础的信息管理所取代。这就急需 有一套全新的高效的管理系统,由计算机来代替手工完成酒店客房预定的管理。 1.3 系统开发的主要内容系统开发的主要内容 本论文主要有六章内容: 第一章主要对开发基于 JSP 的酒店客房管理系统的背景及其意义进行了讲 解,使读者了解开发的目的及重要性。 第二章介绍开发基于 JSP 的酒店客房管理系统用到的相关技术。包括:JSP 的优点、工作原理、运行环境;C/S 与 B/S 模式的比较,使用 B/S 模式的优势; SQL Server 数据库数据体系结构,SQL 语言的组成,对数据库的具体操作等。 第三章说明了开发基于 JSP 的酒店客房管理系统的需求,系统的运行环境 以及各个功能模块的实现等。 第四章主要讲的是系统各模块的实现,主要有:首页的实现,前台的实现, 后台的实现等。 第五章是对系统进行测试。主要对功能,可用性,安全性进行了基本的测 试。这么做主要是为了确保本系统的稳定性和安全性。 第二章第二章 相关技术介绍相关技术介绍 2.1 JSP 简介简介 JSP 技术使用 Java 编程语言编写类 XML 的 tags 和 scriptlets,来封装产生动 态网页的处理逻辑。网页还能通过 tags 和 scriptlets 访问存在于服务端的资源的 应用逻辑。JSP 将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设 计,使基于 Web 的应用程序的开发变得迅速和容易。 Web 服务器在遇到访问 JSP 网页的请求时,首先执行其中的程序段,然后 将执行结果连同 JSP 文件中的 HTML 代码一起返回给客户。插入的 Java 程序段 可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。 JSP 与 Java Servlet 一样,是在服务器端执行的,通常返回该客户端的就是 一个 HTML 文本,因此客户端只要有浏览器就能浏览。 JSP 的 1.0 规范的最后版本是 1999 年 9 月推出的,12 月又推出了 1.1 规范。 目前较新的是 JSP1.2 规范,JSP2.0 规范的征求意见稿也已出台。 JSP 页面由 HTML 代码和嵌入其中的 Java 代码所组成。服务器在页面被客 户端请求以后对这些 Java 代码进行处理,然后将生成的 HTML 页面返回给客户 端的浏览器。Java Servlet 是 JSP 的技术基础,而且大型的 Web 应用程序的开发 需要 Java Servlet 和 JSP 配合才能完成。JSP 具备了 Java 技术的简单易用,完全 的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。 JSP 可用一种简单易懂的等式表示为:HTML+Java=JSP。如图 2-1 所示为 JSP 执行过程。 客户端 JSP 页面页面 3 执行 2 转译 编译 1 Servlet 请求 响应 JSP 执 行过程 图 2-1 JSP 执行过程 2.1.1 JSP 的优点的优点 1一次编写,到处运行。除了系统之外,代码不用做任何更改。 2系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任 意环境中进行系统部署,在任意环境中扩展。相比 ASP/PHP 的局限性是显而易 见的。 3强大的可伸缩性。从只有一个小的 Jar 文件就可以运行 Servlet/JSP,到 由多台服务器进行集群和负载均衡,到多台 Application 进行事务处理,消息处 理,一台服务器到无数台服务器,Java 显示了一个巨大的生命力。 4多样化和功能强大的开发工具支持。这一点与 ASP 很像,Java 已经有了 许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺 利的运行于多种平台之下。 5支持服务器端组件。Web 应用需要强大的服务器端组件来支持,开发人 员需要利用其他工具设计实现复杂功能的组件供 Web 页面调用,以增强系统性 能。JSP 可以使用成熟的 JAVA BEANS 组件来实现复杂商务功能。 2.1.2 JSP 的工作原理的工作原理 在一个 JSP 文件第一次被请求时,JSP 引擎把该 JSP 文件转换成为一个 servlet。而这个引擎本身也是一个 servlet,在 JSWDK 或 WEBLOGIC 中,它就 是 JspServlet。 JSP 引擎先把该 JSP 文件转换成一个 Java 源文件,在转换时如果 发现 JSP 文件有任何语法错误,转换过程将中断,并向服务端和客户端输出出 错信息;如果转换成功, JSP 引擎用 javac 把该 Java 源文件编译成相应的 class 文件。然后创建一个该 SERVLET 的实例,该 SERVLET 的 jspInit()方法被执行, jspInit()方法在 servlet 的生命周期中只被执行一次。然后 jspService()方法被调用 来处理客户端的请求。对每一个请求,JSP 引擎创建一个新的线程来处理该请求。 如果有多个客户端同时请求该 JSP 文件,则 JSP 引擎会创建多个线程。每个客 户端请求对应一个线程。 以多线程方式执行可大大降低对系统的资源需求,提高系统的并发量及响应 时间.但应该注意多线程的编程限制,由于该 servlet 始终驻于内存,所以响应是 非常快的。 如果 JSP 文件被修改了,服务器将根据设置决定是否对该文件重新 编译,如果需要重新编译,则将编译结果取代内存中的 servlet,并继续上述处理 过程。 虽然 JSP 效率很高,但在第一次调用时由于需要转换和编译而有一些轻 微的延迟。 此外,如果在任何时候如果由于系统资源不足的原因,JSP 引擎将 以某种不确定的方式将 servlet 从内存中移去。当这种情况发生时 jspDestroy()方 法首先被调用, 然后 servlet 实例便被标记加入“垃圾收集“处理。 jspInit()及 jspDestory()格式如下:可在 jspInit()中进行一些初始化工作,如建立与数据库的连 接,或建立网络连接,从配置文件中取一些参数等,在 jspDestory()中释放相应 的资源。 2.1.3 JSP 的运行环境的运行环境 JSP 的运行环境主要使用 MyEclipse,JDK,Tomcate 等开发工具。 jdk1.5.0 的安装 1jdk1.5.0 的配置 (假设 jdk 的安装目录是 d:jdk1.5.0) 右键点击我的电脑,选择属性,选择高级选项卡,单击环境变量按钮,在 系统变量找到 path 变量,单击编辑按钮,把 d:jdk1.5.0bin 添加到里面,与已 有的内容用分号隔开. 在系统变量中单击新建按钮,在变量名文本框中输入名称 classpath,在变 量值文本框中输入.;D:jdk1.5lib 2编写 HelloWorld 推荐刚入门时不要使用 IDE,用简单的文本编辑器就可 以了,比较好用的有 Jcreator(可以不用进 dos 直接编译运行 java 程序) Editplus,UltraEdit public class HelloWorld public static void main(String args) System.out.println(“Hello World!“); 保存为 HelloWorld.java,注意文件名必须与声明为 public 类的类名完全相同, 包括大小写。 3编译 HelloWorld 在 dos 下进入 HelloWorld.java 文件所在目录,使用命令 javac HelloWorld.java 编译,注意 HelloWorld.java 大小写一定要正确。 4运行 HelloWorld 使用命令 java HelloWorld,注意 HelloWorld 大小写一定要正确,而且不要写. java 后缀 。 tomcat 的部署: 1tomcat5.5 的安装 也很简单,没什么可说的,只建议修改安装目录名称为 tomcat5.5,安装好后启 动 tomcat,在地址栏中输入 http:/localhost:8080,可以看见“cat“的欢迎界面 2tomcat5.5 的配置 需要配置 classpath 假设 tomcat 的安装目录是 d:tomcat5.5,那么就在 classpath 中添加: d:tomcat5.5commonlibservlet-api.jar;d:tomcat5.5commonlibjsp-api.jar; 3编写 HelloWorld 保存为 HelloWorld.jsp 4编译 HelloWorld 把 HelloWorld.jsp 放到 tomcat 的 WebappsROOT 目录下,启动 tomcat 时服务 器会自动把 jsp 文件翻译成 servlet 文件 5运行 HelloWorld 在地址栏中输入 http:/localhost:8080/HelloWorld.jsp,注意 HelloWorld 的大小 写和后缀名不要写错。 2.2 C/S 与与 B/S 模式模式 2.2.1 C/S 与与 B/S 的比较分析的比较分析 C/S 模式主要由客户应用程序(Client)、服务器管理程序(Server)和中间件 (middleware)三个部件组成。客户应用程序是系统中用户与数据进行交互的部件。 服务器程序负责有效地管理系统资源,如管理一个信息数据库,其主要工作是 当多个客户并发地请求服务器上的相同资源时,对这些资源进行最优化管理。 中间件负责联结客户应用程序与服务器管理程序,协同完成一个作业,以满足 用户查询管理数据的要求。 B/S 模式是一种以 Web 技术为基础的新型的 MIS 系统平台模式。把传统 C/S 模式中的服务器部分分解为一个数据服务器与一个或多个应用服务器(Web 服务器),从而构成一个三层结构的客户服务器体系。 第一层客户机是用户与整个系统的接口。客户的应用程序精简到一个通用 的浏览器软件,如 Netscape Navigator,微软公司的 IE 等。浏览器将 HTML 代码 转化成图文并茂的网页。网页还具备一定的交互功能,允许用户在网页提供的 申请表上输入信息提交给后台,并提出处理请求。这个后台就是第二层的 Web 服务器。 第二层 Web 服务器将启动相应的进程来响应这一请求,并动态生成一串 HTML 代码,其中嵌入处理的结果,返回给客户机的浏览器。如果客户机提交 的请求包括数据的存取,Web 服务器还需与数据库服务器协同完成这一处理工 作。 第三层数据库服务器的任务类似于 C/S 模式,负责协调不同的 Web 服务器 发出的 SQ 请求,管理数据库。 2.2.2 B/S 模式的优势模式的优势 首先它简化了客户端。它无需象 C/S 模式那样在不同的客户机上安装不同 的客户应用程序,而只需安装通用的浏览器软件。这样不但可以节省客户机的 硬盘空间与内存,而且使安装过程更加简便、网络结构更加灵活。假设一个企 业的决策层要开一个讨论库存问题的会议,他们只需从会议室的计算机上直接 通过浏览器查询数据,然后显示给大家看就可以了。甚至与会者还可以把笔记 本电脑联上会议室的网络插口,自己来查询相关的数据。其次,它简化了系统 的开发和维护。系统的开发者无须再为不同级别的用户设计开发不同的客户应 用程序了,只需把所有的功能都实现在 Web 服务器上,并就不同的功能为各个 组别的用户设置权限就可以了。各个用户通过 HTTP 请求在权限范围内调用 Web 服务器上不同处理程序,从而完成对数据的查询或修改。现代企业面临着 日新月异的竞争环境,对企业内部运作机制的更新与调整也变得逐渐频繁。相 对于 C/S,B/S 的维护具有更大的灵活性。当形势变化时,它无须再为每一个现 有的客户应用程序升级,而只需对 Web 服务器上的服务处理程序进行修订。这 样不但可以提高公司的运作效率,还省去了维护时协调工作的不少麻烦。如果 一个公司有上千台客户机,并且分布在不同的地点,那么便于维护将会显得更 加重要。 再次,它使用户的操作变得更简单。对于 C/S 模式,客户应用程序有自己 特定的规格,使用者需要接受专门培训。而采用 B/S 模式时,客户端只是一个 简单易用的浏览器软件。无论是决策层还是操作层的人员都无需培训,就可以 直接使用。B/S 模式的这种特性,还使 MIS 系统维护的限制因素更少。 最后,B/S 特别适用于网上信息发布,使得传统的 MIS 的功能有所扩展。 这是 C/S 所无法实现的。而这种新增的网上信息发布功能恰是现代企业所需的。 这使得企业的大部分书面文件可以被电子文件取代,从而提高了企业的工作效 率,使企业行政手续简化,节省人力物力。 鉴于 B/S 相对于 C/S 的先进性,B/S 逐渐成为一种流行的 MIS 系统平台。 各软件公司纷纷推出自己的 Internet 方案,基于 Web 的财务系统、基于 Web 的 ERP。一些企业已经领先一步开始使用它,并且收到了一定的成效。 B/S 模式的新颖与流行,和在某些方面相对于 C/S 的巨大改进,使 B/S 成了 MIS 系统平台的首选。 2.3 SQL Server 2005 简介简介 Microsoft SQL Server 2005 最早是由关系数据库 Sybase 演变而来的。1988 年由 Sybase,Microsoft,Ashton-Tate 三家公司共同开发了 OS/2 版本,后来又应 用于 Windows NT 操作系统中。1994 年 Microsoft 公司和 Sybase 公司的合作正 式结束,如今 Sybase 公司致力于开发基于 UNIX 下的数据库系统,而 Microsoft 公司继续开发基于 Windows NT 和 SQL server 系列数据库系统。其发展历程如 下: 1995 年发行了 Microsoft SQL Server 6.0 版本 1996 年发行了 Microsoft SQL Server 6.5 版本 1998 年发行了 Microsoft SQL Server 7.0 版本 2000 年正式发行了 Microsoft SQL Server 2005 版本 2005 年正式发行了 Microsoft SQL Server 2005 版本 在 SQL server 的发展历程中,有四个具有里程碑的版本:Microsoft SQL server6.5、Microsoft SQL server7.0 、Microsoft SQL server2000 以及 Microsoft SQL server2005,下面我们重点介绍一下 Microsoft SQL server2005 的新特点: 1简单的图形化管理工具 Microsoft SQL server 企业管理器是一个基于图形用户界面的继承管理工具, 利用它可以配置管理 Microsoft SQL server 服务器,管理数据库和数据库对象, 备份和恢复数据,调度任务和管理警报,实现数据复制和数据转换等。它的界 面如图 2-2 所示: 图 2-2 SQL 企业管理器 2隐含的并发控制能力 Microsoft SQL server 利用动态锁定功能防止用户在查询和更新并发操作时 相互间发生冲突,动态锁定是隐含的,用户不必关心缩定过程。 3丰富的编程接口工具 Microsoft SQL Server 2005 提供了丰富的编程接口工具,为用户进行程序设 计提供了更大的选择余地。此外,它还支持 ODBC 和 OLE DB 规范,可以使用 ODBC 和 OLE DB 接口函数访问 Microsoft SQL Server 2005 数据库。 4多线程体系结构 Microsoft SQL Server 2005 支持多线程操作,在多用户并发访问时,系统在 产生较小额外负担的情况下,能够进行并发处理,从而减小内存需求,提高系 统的吞吐量,在用户数量增加时,SQL Server 2005 的运行速度也不会明显减慢。 5具有很好的伸缩性 Microsoft SQL Server 2005 既能运行在 Windows 2000 操作系统下,又可以 运行在 Windows NT,Workstation,Windows NT Server 等操作系统下,并且利 用了 NT 的许多功能,如发送和接受消息,管理登录安全性等。 基于 Microsoft SQL Server 2005 以上的 5 个特点,我们选择了它为网站搭建 数据库, 使网站能够更快更好的完成数据库操作。 2.3.1 SQL Server 数据库数据体系结构数据库数据体系结构 SQL Server 2005 数据库的数据体系结构基本上是三级结构,但使用术语与 传统关系模型术语不同。在 SQL Server 2005 中,关系模式(模式)称为“基本表” (base table);存储模式(内模式)称为“存储文件”(stored file);子模式(外模式)称 为“视图”(view);元组称为“行”(row);属性称为“列”(column)。 2.3.2 SQL 语言的组成语言的组成 在正式学习 SQL 语言之前,首先让我们对 SQL 语言有一个基本认识,介绍 一下 SQL 语言的组成: 1一个 SQL 数据库是表(Table)的集合,它由一个或多个 SQL 模式定义。 2一个 SQL 表由行集构成,一行是列的序列(集合),每列与行对应一个数 据项。 3一个表或者是一个基本表或者是一个视图。基本表是实际存储在数据库 的表,而视图是由若干基本表或其他视图构成的表的定义。 4一个基本表可以跨一个或多个存储文件,一个存储文件也可存放一个或 多个基本表。每个存储文件与外部存储上一个物理文件对应。 5用户可以用 SQL 语句对视图和基本表进行查询等操作。在用户角度来看, 视图和基本表是一样的,没有区别,都是关系(表格)。 6SQL 用户可以是应用程序,也可以是终端用户。SQL 语句可嵌入在宿主 语言的程序中使用,宿主语言有 FORTRAN,COBOL,PASCAL,PL/I,C 和 Ada 语言等。SQL 用户也能作为独立的用户接口,供交互环境下的终端用户使 用。 2.3.3 对数据库进行操作对数据库进行操作 SQL Server 2005 包括了所有对数据库的操作,主要是由 4 个部分组成: 1数据定义:这一部分又称为“SQL DDL”,定义数据库的逻辑结构,包 括定义数据库、基本表、视图和索引 4 部分。 2数据操纵:这一部分又称为“SQL DML”,其中包括数据查询和数据更 新两大类操作,其中数据更新又包括插入、删除和更新三种操作。 3数据控制:对用户访问数据的控制有基本表和视图的授权、完整性规则 的描述,事务控制语句等。 4嵌入式 SQL 语言的使用规定:规定 SQL 语句在宿主语言的程序中使用 的规则。 第三章第三章 系统的分析与设计系统的分析与设计 3.1 系统需求分析系统需求分析 需求分析阶段是酒店客房管理系统开发最重要的阶段。开发者首先要了解 和澄清用户的需求,然后严格地定义该系统的需求规格说明书。这里我们将需 求分析分为两个过程,一是理解需求,二是分析需求,下面分别讲解。 1理解需求 理解需求是在问题及其最终解决方案之间架设桥梁的第一步。开发者只有 和客户充分理解了需求之后才能开始设计系统,否则,对需求定义的任何改进, 在设计上都必须大量的返工。下面是经过双方调研后得到的需求规格说明。 (1) 系统界面采用 Web 方式,界面应简洁明了,用户可方便浏览和查找客 房信息。该系统的用户有两种类型:一是管理员,二是服务员,两者应具有不 同的权限。 (2) 系统需对用户登录进行管理。使用各功能模块时,系统会验证用户身份 的有效性,否则要求用户重新登录。另外,允许用户对自己的密码进行修改。 (3) 系统应提供客房的分类管理功能,可分类制订客房面积、价格、是否配 备空调等客房类型,对不同标准的客房进行有效管理。系统可实现对客房信息 的查询,添加、删除以及修改。 (4) 在进行离开/住房管理时,系统可以根据客房当前的状态自动提示可用 服务。如果客房客人已离开,则该客房的信息显示为“离开”;否则,该客房的信 息显示为“住”。 (5) 系统的客户端在 Windows 平台下运行,服务器端可在 Windows 平台下 运行。系统还需要有较好的安全性和可扩展性。 2需求分析 (1) 需求分析是从客户的需求中提取出软件系统能够帮助用户解决的业务问 题,通过对用户业务问题的分析,规划出系统的功能模块,即定义用例。这个 步骤是对理解需求的升华,直接关系到该系统的质量。 (2) 经过开发者同客户的需求分析后,确定酒店客房管理系统的功能模块 (用例)包括: 用户信息管理 客房类型管理 客房信息管理 客户信息查询 经营状况统计 酒店客房管理系统采用 Web 方式,由前台和后台管理两个部分组成。前台 作为与用户直接交互的可视化界面,由于使用方便,能将系统的各个功能提供 给用户,以帮助用户进行客房管理。 为了确保客户和酒店的信息具有更好的安全性,前台管理和后台管理是分 离的。前台的各管理模块需要经过权限授权才可以使用,我们为此设计了两个 角色:一是酒店管理员,二是前台服务员。其中: 1酒店管理员享有最高权限,可以使用酒店客房管理系统所提供的所有功 能,包括员工信息管理、客房类型管理、客房信息管理、客房经营管理、客户 信息查询、个人密码修改等功能。 2前台服务员的主要职能是负责订房和退房,以及查询入住的客户信息。 所有该角色只可以使用部分功能,包括客房经营管理、客户信息查询、个人密 码修改以及注销功能。 本系统主要由数据库系统作为支持,后台管理的维护工作主要由系统管理 员进行,包括完成对各个数据表单的维护、数据库的备份及恢复等工作,本实 例我们选用的数据库系统为 Microsoft SQL Server 2005。 3.2 开发及运行环境开发及运行环境 3.2.1 网站开发环境网站开发环境 网站开发环境:MyEclipse 8.5 集成开发环境。 网站开发语言:JSP+JAVA。 网站后台数据库:Microsoft SQL Server 2005。 开发环境运行平台:Windows XP(SP2)/Windows 2000(SP4)/Windows Server 2003(SP1)。 3.2.2 服务器端服务器端 操作系统:Windows XP。 Web 服务器:Internet 信息服务(IIS)管理器。 数据库服务器:Microsoft SQL Server 2005。 浏览器:IE 7.0。 3.2.3 客户端客户端 浏览器:IE 7.0。 分辨率:最佳效果 1024768 像素。 3.3 功能模块的设计功能模块的设计 3.3.1 设计目标设计目标 本系统是根据酒店日常管理的需求进行开发设计的,主要实现以下目标。 1实现管理人员和前台服务员的登录不同界面以及拥有不同权限的功能。 2实现客户信息,客房类型,客房信息,用户信息,业务记录的查询的功 能。 3实现客房信息,用户信息和客房类型的增加的功能。 4实现客房信息,用户信息,客房类型,客房信息的修改的功能。 5实现客房信息,用户信息的删除的功能。 图 3-1 酒店客房管理系统框架流程 3.3.2 客房管理系统前台的设计客房管理系统前台的设计 客房管理系统前台流程图,如图 3-2 所示,该流程系统前台部分,客房信息 页面主要是负责所有客房信息的查询号及维护。如果需要修改客房信息,可以 在列表中点击该客房的“修改”链接,系统会显示客房修改页面;如果需要删 除客房信息,点击“删除”链接即可。同样要增加客房信息,点击对应的“增 加”链接然后填写要增加的信息。客户信息和客房类型页面主要用于前台服务 员对于客户信息和客房类型的查询。 个人信息管理是前台和后台都是有在模块,默认显示在导航栏的右侧个 人信息管理中心。主要用于密码的修改,这样是为了保证用户使用的安全性。 酒店客房管理系统 前台服务员登录酒店管理员登录 客户信息增查 客房类型查询 客房信息的 查询 增加 修改 删除 业务记录查询 用户信息的查询 增加 修改删除 客房类型的 查询 增加 修改 客房信息的 查询 修改 删除 图 3-2 酒店客房管理系统流程图前台 3.3.3 客房管理系统后台的设计客房管理系统后台的设计 客房管理系统后台流程图,如图 3-3 所示,该流程系统后台部分,是由酒店 管理员负责管理的,分为用户信息,客房类型,客房信息,业务记录,个人信 息管理几个模块,其中个人信息模块前后台都是有在 3.3.2 中已给出说明。用户 信息模块主要的操作有:增,删,改,查。客房类型模块的主要操作有:增, 改,查。客房信息模块的主要操作有:删,改,查。而业务记录模块主要用于 管理员对于业务的查询。对于增,删,改的具体链接方法与前台相同。 图 3-3 酒店客房管理系统流程图后台 酒店管理员登录 查询 修改 增加 增加 查询 修改 删除 修改 个人信息管理用户信息客房类型客房信息业务记录 修改查询 查询 删除 前台服务员登录 客户信息客房类型个人信息管理客房信息 增加 查询 修改 增加 删除 修改 查询 查询 3.4 数据库逻辑结构设计数据库逻辑结构设计 本系统数据库采用 Microsoft SQL Server 2005 数据库,系统数据库中包含 6 张数据表。下面分别给出主要数据表的结构。 从读者角度出发,为使读者对本系统后台的数据库中数据表有一个更清晰 的认识,在此特别制作了一个数据类型的表格,其中包含了对系统中所有数据 表的相关描述。 数据库 JdglSys 包含以下 7 个表:用户信息表(UsersInfo)、客户信息表 (CustomerInfo)、客房类型表(RoomCategory)、客房信息表(RoomInfo)、客房状态 表(RoomStatus)、客房业务表(RoomOperation)、业务记录表(History)。 1用户信息表(UserInfo)用来保存使用该系统的酒店员工的基本信息, 如用户编号,用户姓名,用户性别,地址,用户电话,所在部门,用户类型等。 如表 3.1 所示。 表 3.1 用户信息表 UserInfo 列名数据类型及长度允许空 UserIDvarchar(50)no Namevarchar(50)no Passwordvarchar(50)no Gendervarchar(50)yes Emalvarchar(50)yes Addressvarchar(50)yes Telephonevarchar(50)yes Departmentvarchar(50)yes Typevarchar(50)yes 2客户信息表(CustomerInfo)用来保存在酒店订房的客户的基本信息, 如身份证号,客户姓名,联系电话,客房号,客房位置等。如表 3.2 所示。 表 3.2 客户信息表 CustomerInfo 列名数据类型及长度允许空 CIdentityIDvarchar(50)no CNamevarchar(50)yes CPhonevarchar(50)yes RoomIDvarchar(50)no RoomPositonvarchar(50)yes 3客房类型表(RoomType)用来保存酒店所有客房类型的基本信息,如 客房类型编号,类型名,客房面积,配置床位,客房价格,配置空间,电视的 配置等。如表 3.3 所示。 表 3.3 客房类型表 RoomType 列名数据类型及长度允许空 TypeIDvarchar(50)no RoomTypevarchar(50)no TypeNamevarchar(50)no Areavarchar(50)yes BedNumvarchar(50)yes Pricevarchar(50)yes AirConditionvarchar(50)yes TVvarchar(50)yes 4客房信息表(RoomInfo)用来保存酒店所有客房的相关信息,如客房号, 客房类型编号,客房位置,描述,状态等。如表 3.4 所示。 表 3.4 客房信息表 RoomInfo 列名数据类型及长度允许空 RoomIDvarchar(50)no RoomeTypevarchar(50)no RoomPositonvarchar(50)yes RoomDescripvarchar(50)Checked RoomStatusvarchar(10)no 5客房业务表(RoomOperation)用来保存目前酒店正有客户入住的客房 的相关信息,如客房编号,入住时间,客户身份证号,备注等。如表 3.5 所示。 表 3.5 客房业务表 RoomOperation 列名数据类型及长度允许空 RoomIDvarchar(50)no BeginTimevarchar(50)no CIdentityIdvarchar(50)no Remarksvarchar(50)yes 6业务记录表(History)用来保存酒店里所有入住过客户的客房的业务信 息,如编号,客房编号,入住时间,退房时间,金额,客户身份证号,备注等。 如表 3.6 所示。 表 3.6 业务记录表 History 列名数据类型及长度允许空 IDvarchar(50)no RoomIDvarchar(50)no BeginTimevarchar(50)no EndTimevarchar(50)no TotalPricevarchar(50)no CIdentityIdvarchar(50)no Remarksvarchar(50)yes 第四章第四章 系统各模块的实现系统各模块的实现 4.1 客房管理系统首页的实现客房管理系统首页的实现 4.1.1 客房管理系统首页概述客房管理系统首页概述 前面已介绍过系统共分两类用户:酒店管理员和前台服务员。当用户进入 酒店管理系统首页后,首先需要进行密码验证,系统在验证通过后,将使用 Type 变量记录其用户类型,并根据用户类型确定用户的使用权限,以及所要跳 转的页面。以下为酒店管理系统的首页。如图 4-1。 图 4-1 酒店管理系统的首页 4.1.2 客房管理系统首页实现过程客房管理系统首页实现过程 1进入系统首页后,首先需要在主显示区输入用户类型,用户名及密码, 然后单击“登录”按钮,系统验证通过后,会跳到相应的页面。仍停留在本页面, 要求用户再次登录。 以下为用户信息的获取,判断及页面的跳转等。 public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException response.setContentType(“text/html“); request.setCharacterEncoding(“gb2312“); Dao_up db = new Dao_up(); String name=request.getParameter(“Name“); String pass=request.getParameter(“Password“); Integer Type=Integer)request.getParameter(“Type“); Vector user=db.getData(“select * from userinfo where username=“+name+“and userpass=“+pass+“,Type=“+Type+“); if(user.size()=1) request.getSession().setAttribute(“Name“,(Vector)user.elementAt(0).elementAt( 1) ); request.getSession().setAttribute(“Password“,(Vector)user.elementAt(0).element At(2) ); request.getSession().setAttribute(“Type“,(Vector)user.elementAt(0).elementAt(8) ; response.sendRedirect(“/qian/Rfarme.jsp“); else response.sendRedirect(“/qiantai/denglu.jsp“); 2连接数据库:在开发项目中以类的形式来组织,封装一些常用的方法和 事件,不仅可以提高代码的重用率,也大大方便了代码的管理。本系统中创建 了一个公共类 Dao_up 类,主要用来访问 Microsoft SQL Server 2005 数据库,数 据库操作类主要的功能是连接数据库。 我们是在 MyEclipse 开发平台下,使用 JSP+JAVA 语言进行系统开发的。 系统采用对数据库配置进行统一管理的方法,将程序中用到的所有连接字符串 信息统一放于 Web.config 配置文档中,在程序中对该文档的这一配置进行调用, 方便系统移植时对系统数据库的统一配置修改。 对于数据库调用字符串,由于本实例中所使用的数据库是本地数据库,所 以 Data Source(数据源)设置为(local),User ID(用户 ID)赋值为系统默认的 sa,Password(连接密码)赋值为数据库出示安装时设定的 sa,Datebase(数据库名 称)设为我们上一节中创建的 JdglSys 连接数据库的主要代码如下: public class Dao_up public static final int wrong_less = -10; public Connection con=null; public Connection con2=null; public static Statement sta=null; public static PreparedStatement pre=null; public void Connect() try Class.forName(“com.microsoft.sqlserver.jdbc.SQLServerDriver“); String str= “jdbc:sqlserver:/:1433;DatabaseName=pos“; this.con=DriverManager.getConnection(str,“sa“,“123“); catch(Exception e) System.out.print(e.toString(); 4.2 客房管理系统前台的客房管理系统前台的实现实现 4.2.1 客房管理系统前台概述客房管理系统前台概述 客房管理系统前台页面,如图 4-2 所示,当前台服务员正确登录时即要跳转 到该页面。 个人信息管理是前台和后台都是有在模块,默认显示在导航栏的右侧个 人信息管理中心。主要用于密码的修改,这样是为了保证用户使用的安全性。 图 4-2 客房管理系统的前台页面 4.2.2 客房管理系统前台实现过程客房管理系统前台实现过程 点击导航菜单的上的客房信息可跳转到如图 4-3 的客房信息表,点击备注中 的修改也可跳转到相应的修改页面。点击删除时会删除相应的记录,然后再显 示,修改或删除成功时跳转到如图 4-1 的页面。点击导航菜单上的客户信息或客 房类型可查相应的信息。 4.2.3 客户信息及客房类型的查询客户信息及客房类型的查询 点击导航菜单的上的客户信息可跳转到客户信息的查询页面如图 4-3 的客户 信息,由于数据库中的信息较多所以在一张表中不能全显示出来因此要用到 “首页”,“上一页”,“下一页”,“尾页”。而客房类型的查询与客户信 息在查询方法相同。 图 4-3 客户信息的查询结果 4.2. 客房信息操作客房信息操作 客房信息查询的结果,客房信息页面主要是负责所有客房信息的查询号及 维护。如果需要修改客房信息,可以在列表中单击该客房的“修改”链接,系 统会显示客房修改页面;如果需要删除客房信息,单击“删除”链接即可。操 作员可以根据客房号查询或修改客房的信息。客户信息和客房类型页面主要负 责客户信息的客房信息的查询。 4.3 客房管理系统后台的客房管理系统后台的实现实现 4.3.1 客房管理系统后台概述客房管理系统后台

温馨提示

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

评论

0/150

提交评论