




免费预览已结束,剩余42页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
I 摘摘 要要 随着酒店规模的不断扩大,客房数量的急剧增加,有关客房的各种信息量也在不断 成倍增长。面对庞大的信息量,就需要有客房信息管理系统来提高客房管理工作的效率。 酒店客房管理系统是以对酒店客房信息管理为核心的信息管理系统,用于实现对酒 店客房信息的管理;系统基于 JAVA 的 Application 模式,使用 Swing 组件作为系统用户 界面和 MYSQL 小型数据库管理系统实现。主要提供用户查询功能、住宿管理等功能, 提供管理员客房、用户、系统信息的管理功能。 该系统遵循软件工程中的开发规则。本文介绍了酒店客房管理系统的开发过程,详尽 论述了需求分析、系统分析、概要设计、详细设计、以及测试与调试的整个开发过程, 总结了开发过程中的经验及本系统今后的改进方向。 关键词关键词:SWING;MYSQL;信息管理;酒店客房管理 II Abstract With the expansion of the scale of hotels and rapaid increment of the amount of the hotel rooms,some information of the hotel rooms are becoming wider and wider.Facing the enormous information,it is necessary for us to develop the hotel rooms management system to enhance the efficiency of management in hotels. The hotel rooms management system is the system that is corelly based on the management of the hotel rooms.The system makes advantage of the pattern of Application in JAVA,it is implemented with the user interface of Swing components and MYSQL.The system provide us for the functions of selecting,management of hotel rooms and so on,certainly it offer the module of management in administrators,customers and the system information. The system accords the rules in software development.The thesis introduce the whole process in developing and it talks about the requirement of system,design of concpetance,test and debug in detail.Finally the system analysis the experiment in developing,at the same time it involvs the way of correcting in the future. Keywords:SWING; MYSQL;Information management;Hotel rooms management III 目目 录录 摘 要I Abstract.II 第一章 引 言.1 1.1 系统开发意义1 1.2 系统研究内容及所达到的目标2 1.2.1 研究内容2 1.2.2 所达到的目标2 1.3 系统环境2 1.3.1 系统开发环境2 1.3.2 系统安装运行环境2 第二章 需求分析.3 2.1 系统可行性研究3 2.1.1 系统可行性研究前提3 2.1.2 可行性研究方法3 2.1.3 决定可行性的主要因素3 2.1.4 技术可行性评价4 2.1.5 用户使用可行性5 2.2 系统需求分析5 2.2.1 系统需求描述5 2.2.2 系统角色分析5 2.2.3 系统用例分析5 2.2.4 系统用例图模型6 第三章 概要设计.7 3.1 系统功能模块设计7 3.1.1 系统功能点7 3.1.2 系统模块划分列表7 3.2 系统总体功能图9 3.3 系统可视化界面设计9 IV 3.3.1 登录界面设计9 3.3.2 系统主界面设计10 3.3.3 内部窗体设计10 第四章 数据库设计.11 4.1 数据库 E-R 设计.11 4.2 数据库表设计12 第五章 详细设计.17 5.1 系统总体描述17 5.2 系统登录模块17 5.3 住宿管理模块18 5.3.1 住宿登记功能18 5.3.2 退宿登记功能18 5.3.3 换房登记功能19 5.3.4 续房登记功能19 5.4 其他功能程序19 5.4.1 身份证合法性验证19 5.4.2 宿费提醒功能20 第六章 系统实现.21 6.1 系统登录模块实现21 6.2 系统主程序实现22 6.3 住宿登记功能实现23 6.4 退宿登记功能实现24 6.5 客房信息查询功能实现25 6.6 顾客信息查询功能实现25 6.7 宿费提醒功能实现26 第七章 系统测试.27 7.1 测试的目的与原则27 7.2 单元测试27 7.2.1 系统入口单元测试27 7.2.2 数据录入测试29 V 7.3 系统测试内容31 7.4 系统测试结果31 第八章 结论.32 8.1 系统的设计情况32 8.2 系统特点32 8.3 系统改进的方向33 8.4 系统今后的发展方向33 结束语.34 谢 辞.35 参考文献.36 基于 Swing 技术下的酒店客房管理系统开发 1 第一章第一章 引引 言言 随着我国改革开放的不断推进,国内人民生活水平的不断提高,旅游出行的人民越 来越多,商务活动也相当的活跃;再加上入境旅游的人也越来越多,入境从事商务活动 的外宾也越来越多。传统的手工已不适应现代酒店管理的需要,及时、准确、全方位的 网络化信息管理成为必需。在酒店的管理及业务日益复杂、要求在不断提高的现状下, 利用高科技、现代化的电脑自动化管理系统来处理日益繁重的酒店业务,对于大型的酒 店是必须具备的管理方式。 酒店客房管理系统是根据酒店对客房管理的实际情况进行编写的,主要目的是为了 方便酒店对客房的实际情况进行集中的查询与管理工作,以提高整个酒店的工作效率。 酒店客房管理的科学化、系统化、信息化成为各个酒店追求的目标。因此,而要实现这 些功能,就要求各个酒店配备一套客房管理系统,以便在酒店内实施良好的完善的管理 且以最快地速度响应客户的需求,及时为他们提供服务,为他们提供一个高效、便捷的 居住环境。 1.11.1 系统开发意义系统开发意义 随着计算机技术的广泛应用,在酒店客房管理中引入计算机管理技术,成为一个值 得深入研究的问题。经济的飞速发展正促使酒店向着大型化、现代化发展,而对于中、 小型酒店来说,客房、顾客等有关信息的管理随之急剧增加。在酒店管理的过程中管理 者开始大量运用电脑自动化管理,使用系统管理的优点在于处理数据速度快,从而提高了酒 店运营过程中的效率,节约了运行和管理成本1。 酒店客房管理系统,实现由计算机来代替人工执行一系列诸如增加新客房、删除客 房、客户管理、领导决策管理等操作,从而使中小型客房信息管理变得简单、快捷、安 全,为社会的发展产生无形的效益:(1)经济效益,该系统虽然无法直接产生经济来源, 却能通过减少劳动力,提高劳动效率,节约劳动成本支出来产生隐形经济效益;(2)社 会效益,该系统对大量信息进行快捷、安全处理,有利于促进酒店行业现代化发展,提 升竞争优势,提高信息的保密性和安全性。 酒店客房管理系统,是一个典型的 MIS(管理信息系统) ,完全顺应了大信息时代的 发展,实现酒店对信息的自动化、规范化处理,推动了 MIS 在社会生活的应用。 咸阳师范学院 2011 届本科毕业论文(设计) 2 1.21.2 系统研究内容及所达到的目标系统研究内容及所达到的目标 1.2.11.2.1 研究内容研究内容 本次毕业设计研究的主要内容是开发一个基于 Java 的 Application 应用系统酒店 客房信息管理系统,采用的主要技术有 Java、Swing、MYSQL,以及面向对象技术,其 中连接数据库使用 JDBC 驱动连接。Swing 框架提供的 GUI 组件,为系统的使用提供了 方便,同时也为开发简化了步骤,它具有跨平台性,不受操作系统任何底层支持,是由 纯 Java 语言开发,适合于开发基于 Java 的 Application 应用系统2。 1.2.21.2.2 所达到的目标所达到的目标 酒店客房信息管理系统,是为了节约劳动成本,提高工作人员效率,保证信息的一 致性和安全性而开发。酒店工作人员利用计算机来代替传统的手工方式来管理越来越多 的数据信息,系统为工作人员利用计算机管理提供了可操作性的界面,使得工作变得更 加简单,工作效率得到更大地提高,工作人员利用系统提供的可视化界面轻松地完成顾 客的住宿、退宿等需求功能,并保证了数据的安全性;管理员利用系统轻松地完成信息 的管理; 1.31.3 系统环境系统环境 1.3.11.3.1 系统开发环境系统开发环境 操作系统:Windows 7 旗舰版 JDK 环境:Java Development KIT Version 1.6 开发工具:Eclipse 数据库管理系统:MYSQL 6.0 1.3.21.3.2 系统安装运行环境系统安装运行环境 基于 Swing 技术下的酒店客房管理系统开发 3 硬件环境:无特殊要求 系统平台:Windows / Linux 各类操作系统版本 第二章第二章 需求分析需求分析 2.12.1 系统可行性研究系统可行性研究 2.1.12.1.1 系统可行性研究前提系统可行性研究前提 要求: (1)功能:对酒店的客房、顾客和用户(酒店工作人员)信息进行有效的管理;其次, 实现对酒店客房的住宿登记、退宿登记、换房登记、续房登记等顾客需求功能;及其实 现系统自动间隔运行宿费提醒功能,方便用户及时了解已经到达预定时间的顾客信息; 对管理员还要实现系统数据库的维护,其中包括备份与恢复; (2)性能:客房、顾客、住宿等信息的检索时间;实现住宿登记的响应时间; (3)安全与保密要求:对用户的密码信息,采用 MD5 加密算法进行加密存储;对顾客 的身份信息,采用身份证自动识别功能; 对用户的信息修改,当前登录用户仅可对自身 信息进行修改,不可查询出其他用户的信息; 2.1.22.1.2 可行性研究方法可行性研究方法 系统使用 Java 语言,采用 Java Swing 技术。Swing 组件属于轻量级组件,在不同平 台的运行界面和效果一致,具有良好的可移植性3;系统采用权限设置,分别设置普通用 户和管理员两种不同权限用户界面可视性,从而简化方法,实现对用户权限的简单控制 和分配。 2.1.32.1.3 决定可行性的主要因素决定可行性的主要因素 涉及到的主要因素有:技术因素、硬件因素、实践因素、经济因素、管理合作精神等。 (1)技术上的可行性 咸阳师范学院 2011 届本科毕业论文(设计) 4 硬件方面:目前企业的办公室和自己的家庭中,基本都已经配备了性能较好的计算机, 完全可以满足所需要的配置。作为 C/S 架构的桌面应用程序系统,在计算机的资源需求 、性能要求、服务器响应时间和处理时间来讲,相对是比较低的4,完全能够适应当前社 会计算机的配置水平。 (2)经济上可行性 酒店客房管理系统,C/S 架构的系统,采用 Java 程序开发语言以及 MYSQL 小型数据 库,均属于开源免费产品使用,对现在的开发成本以及维护成本上来说,是比较低廉的, 都是在酒店或小型宾馆的承受范围之内的,并且,该系统投入使用之后,将会替代传统 式的手工管理模式,将会节省大量的人力、物力,产生潜在的巨大经济效益。 (3)管理上的可行性 传统的信息管理方式为手工管理,主要采用手工纸质记录为主,不方便管理,尤其是 对海量数据的查询;现代的计算机信息管理方式,采用将数据存储,使用用户可视化界 面操作,大大地简化了信息管理的步骤,使得繁琐的事情不再繁琐。 (4)实践上的可行性 新形势、新时代的发展要求,使企业的发展工作朝着规范化,标准化,潮流化方向发 展。大多数酒店、宾馆、甚至是小型招待所,都在逐步地实现计算机管理,这将是一个 市场需求。实践证明,本系统符合实际需要,具有实践价值,具有较强的生命力。 2.1.42.1.4 技术可行性评价技术可行性评价 Java,是由 Sun Microsystems 公司于 1995 年 5 月推出的 Java 程序设计语言和 Java 平 台的总称。Java 平台由 Java 虚拟机(Java Virtual Machine)和 Java 应用编程接口 (Application Programming Interface、简称 API)构成。Java 应用编程接口为 Java 应用提 供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。在硬件或操作系统 平台上安装一个 Java 平台之后,Java 应用程序就可运行。现在 Java 平台已经嵌入了几乎 所有的操作系统。这样 Java 程序可以只编译一次,就可以在各种系统中运行。目前的 Java 分为三个体系 JavaSE(Java2 Platform Standard Edition,java 平台标准版),JavaEE(Java 2 Platform,Enterprise Edition,java 平台企业版),JavaME(Java 2 Platform Micro Edition,java 平台微型版)。系统采用的是 Java 中的 Java 标准体系JavaSE5。 Java SE(Java Platform,Standard Edition) 。Java SE 以前称为 J2SE。它允许开发和部 基于 Swing 技术下的酒店客房管理系统开发 5 署在桌面、服务器、嵌入式环境和实时环境中使用的 Java 应用程序。本系统采用的是其 中的 Swing 组件;Swing 组件是纯 Java 语言实现的轻量级 GUI 组件,无任何平台依赖性, 同时 Swing 模型的目标是遵循模型视图控制器体系结构6,其中,模型封装了数据, 视图显示数据,控制器来控制用户输入。Swing 库定义了大量的事件监听接口7,很好地 简化了程序员的繁琐重复性的工作,提高开发效率。本系统采用技术的优越性如下: (1)系统采用的所有技术为开源技术,对程序中解决问题提供了很好的基础; (2)系统采用的数据库管理系统为 MYSQL 数据库,为开源免费使用,性能也较好8; (3)系统采用 Java 程序语言,具有“一次编译,到处运行”的优点,有很好的可移植性; (4)Java Swing 库有很多 GUI 组件,且定义了很多的监听接口,简化了开发工作。 2.1.52.1.5 用户使用可行性用户使用可行性 该系统为一个信息管理系统,属于 GUI 系统,操作方便,简单,适合用户使用。 2.22.2 系统需求分析系统需求分析 2.2.12.2.1 系统需求描述系统需求描述 酒店客房信息管理系统主要完成的功能:酒店客房信息、用户信息、住宿信息的管理。 当顾客需要住宿时,酒店前台工作人员使用该系统为顾客办好一切住宿手续,即住宿 登记;若顾客在住宿过程中需要换房、续房、退房等需求,用户使用该系统为顾客办好 各项手续;工作人员可以使用该系统修改自身的个人注册信息; 酒店老板或主管领导,除了使用系统可以完成住宿管理功能外,还可以使用该系统对 酒店客房进行管理,同时对酒店工作人员信息进行管理,对系统数据进行定期维护。 2.2.22.2.2 系统角色分析系统角色分析 创建系统用例图的首要工作,即分析出系统的角色。从以上的需求描述来分析,可以 分析出该系统中存在两种系统角色,其分别为: 咸阳师范学院 2011 届本科毕业论文(设计) 6 (1)酒店主管部门或酒店老板 (2)酒店前台工作人员 2.2.32.2.3 系统用例分析系统用例分析 用例的获取需求分析阶段的重要任务之一,针对已经分析出的系统角色,来分别分析 每一种系统角色的需求。 (1)酒店主管部门或酒店老板: 1) 客房管理,即添加、修改、删除、查询客房信息; 2) 工作人员信息管理:即添加、删除、查询工作人员信息; 3) 系统管理:酒店所有数据进行维护。 (2)酒店前台工作人员: 1) 住宿管理:即完成顾客住宿过程中的一切合适的要求; 2) 个人信息管理:即完成工作人员修改自身的注册信息。 基于以上的系统角色以及分析的各个角色的系统需求,可以建立以下几种系统用例: (1)客房管理 (2)用户信息管理 (3)系统管理 (4)住宿管理 2.2.42.2.4 系统用例图模型系统用例图模型 将已经确定并分析出的系统角色和系统用例,使用用例图规范,确定系统用例图模型: 基于 Swing 技术下的酒店客房管理系统开发 7 图 2.1 系统用例图 咸阳师范学院 2011 届本科毕业论文(设计) 8 第三章第三章 概要设计概要设计 3.13.1 系统功能模块设计系统功能模块设计 3.1.13.1.1 系统功能点系统功能点 系统主要的用户分为两类:普通用户、管理员用户;现以不同用户种类列出系统的功 能点设计: 普通用户:登录功能、退出功能、住宿登记、退宿登记、住宿调房、住宿续房、顾客 信息查询、客房信息查询、修改个人密码及其信息、查询宿费提醒、用户重新登录; 管理员用户:登录功能、退出功能、客房信息管理、用户信息的添加与删除、顾客信 息的添加与删除、系统的维护。 3.1.23.1.2 系统模块划分列表系统模块划分列表 (1)系统功能模块:主要实现系统的共有功能,其功能点列表如下: 表 3.1 系统功能模块列表 编号功能点名称功能任务权限 1 系统登录完成登录系统管理员、普通用户 2 系统退出完成退出系统管理员、普通用户 3 用户重新登录实现重登陆功能管理员、普通用户 (2)住宿管理模块:主要实现顾客住宿及其相关功能,其功能点列表如下: 表 3.2 住宿管理模块功能列表 编号功能点名称功能任务权限 1 住宿登记完成整个住宿流程,实现顾客住宿管理员、普通用户 2 退宿登记完成顾客住宿到期后的退宿操作管理员、普通用户 3 住宿调房完成顾客调房需求功能管理员、普通用户 4 续房登记完成顾客追加住房时间需求功能管理员、普通用户 5 预定处理完成对预定客房的处理管理员、普通用户 基于 Swing 技术下的酒店客房管理系统开发 9 (3)查询管理模块:主要实现信息查询功能,其功能点列表如下: 表 3.3 查询管理模块功能列表 编号功能点名称功能任务使用者 1 查询顾客信息实现分类查询顾客信息管理员、普通用户 2 查询客房信息实现分类查询客房信息管理员、普通用户 3 查询宿费提醒实现对预计今日离开的顾客查询管理员、普通用户 (4)系统管理模块:主要实现系统的管理维护功能,其功能点列表如下: 表 3.4 系统管理模块功能列表 编号功能点名称功能任务使用者 1 备份数据库实现对数据库备份管理员 2 还原数据库实现系统故障时可以数据库还原管理员 (5)客户管理模块:主要实现客户信息管理功能,其功能点列表如下: 表 3.5 客户管理模块功能列表 编号功能点名称功能任务使用者 1 添加客户信息实现增加顾客信息 管理员、普通用 户 2 删除客户信息实现删除顾客信息 管理员、普通用 户 (6)客房管理模块:主要实现客房信息的管理功能,其功能点列表如下: 表 3.6 客房管理模块功能列表 编号功能点名称功能任务使用者 1 添加客房信息实现增加客房信息管理员、普通用户 2 删除客房信息实现删除客房信息管理员、普通用户 3 修改客房信息实现修改客房信息管理员、普通用户 (7)用户管理模块:主要实现用户信息的管理功能,其功能点列表如下: 表 3.7 用户管理模块功能列表 编号功能点名称功能任务使用者 1 查询用户信息实现查询用户详细信息管理员 2 修改用户信息实现修改用户信息管理员、普通用户 咸阳师范学院 2011 届本科毕业论文(设计) 10 3 删除用户信息实现删除用户信息管理员 4 添加用户信息实现添加用户功能管理员 3.23.2 系统总体功能图系统总体功能图 系统总体功能图如下图所示: 图 3.1 系统总体功能图 3.33.3 系统可视化界面设计系统可视化界面设计 3.3.13.3.1 登录界面设计登录界面设计 基于 Swing 技术下的酒店客房管理系统开发 11 系统登录 最小化关闭 酒店客房管理系统 图片 用户名: 密 码: 登 录取 消 图 3.2 登录界面设计图 3.3.23.3.2 系统主界面设计系统主界面设计 系统主界面设计图如下所示: 酒店客房管理系统 最小化关闭 当前没有选择任何窗体Spl_good管理员2011-03-11 12:00:00 咸阳师范学院计科 0701 班 菜单 1菜单 2菜单 3菜单 4 工具栏 1工具栏 2 菜单栏 工具栏 工作面板区域 咸阳师范学院 2011 届本科毕业论文(设计) 12 图 3.3 系统主界面设计图 3.3.33.3.3 内部窗体设计内部窗体设计 内部窗体功能不同,窗体设计不同,系统中所有内部窗体主要遵循窗体模型如图所示: 添加用户信息关闭 工作显示区域 图 3.4 内部窗体设计图 基于 Swing 技术下的酒店客房管理系统开发 13 第四章第四章 数据库设计数据库设计 信息管理系统离不开数据库的后台支持,考虑到系统对数据库的存取速度和要求, 以及酒店或宾馆的费用等问题,酒店客房信息管理系统采用 MYSQL 小型数据库管理系 统作为后台数据库,存放各种信息。 数据库设计主要包括两方面的设计:数据库逻辑设计(E-R 设计)、数据库物理设 计(数据库表设计)。 4.14.1 数据库数据库 E-RE-R 设计设计 数据库逻辑设计,即设计数据库的逻辑结构,与具体的 DBMS 无关,主要反映业务 逻辑。数据库逻辑设计是整个设计的前半段,包括所需的实体和关系,实体规范化等工 作9。 数据库逻辑设计 E-R 图如下所示: 客 房 顾 客 性别 电话 客房类型 价格 类型名 编号 配置 顾客类型 编号 类型名 折扣 状态 房号 地址 姓名 编号 证件名 证件号 住 宿 M1 图 4.1 数据库实体关系图 咸阳师范学院 2011 届本科毕业论文(设计) 14 顾 客 用 户 姓名 性别 住宿登记 入住日 房间号 编号 天数 退房登记 编号 房间号 入住日 密码 年龄 注册时间 用户名 用户类型 服 务 MN 退房日 预付款 实付款 预付款 图 4.2 数据库实体关系图 依据酒店客房信息管理系统的处理需求,对应数据库表的设计及功能如下: (1)顾客信息表:存放所有的顾客基本信息。 (2)用户信息表:存放所有用户基本信息。 (3)用户类型信息表:存放各种用户类型基本信息。 (4)顾客类型信息表:存放各种顾客类型基本信息。 (5)客房信息表:存放所有的客房基本信息。 (6)客房类型信息表:存放各个客房类型基本信息。 (7)住宿信息表:存放顾客住宿的基本信息。 (8)退宿信息表:存放顾客退宿的基本信息。 4.24.2 数据数据库表设计库表设计 数据库物理设计,即设计数据库的物理结构,根据数据库的逻辑结构来选 RDBMS(如 Oracle、Sybase 等),并设计和实施数据库的存储结构、存取方式等。考虑到 系统对数据库系统配置要求不高,性能要求不严格,系统采用免费开源的 MYSQL 小型 数据库系统来实现信息存储与访问。 基于数据库逻辑设计出的 E-R 实体关系图,设计出系统数据库关系模型图如下: 基于 Swing 技术下的酒店客房管理系统开发 15 客房信息 r ri i_ _n no o FK1ri_typeno ri_state 客房类型信息 P PK Kr rt t_ _i id d rt_name rt_price rt_descripe 用户类型信息 P PK Ku ut t_ _n no o ut_name 用户信息 P PK Ku ui i_ _n no o ui_name ui_password ui_realname ui_sex ui_age ui_time FK1ui_typeno 顾客类型信息 P PK Kc ct t_ _n no o ct_name ct_discount FK1ci_no 顾客信息 P PK Kc ci i_ _n no o ci_name ci_sex ci_cardstyle ci_cardno ci_address ci_phone FK1ci_typeno ci_state ci_totalmoney 住宿信息 P PK Kb br ri i_ _n no o FK2bri_roomno bri_booktime bri_bookdays bri_endtime bri_type bri_actualvalue bri_shouquvalue bri_discoutvalue bri_valuestate FK1bri_customerno 退宿信息 P PK Ko or ri i_ _n no o FK1ori_roomno ori_booktime ori_outtime ori_days ori_totalvalue ori_state FK2ori_customerid 图 4.3 数据库关系图 系统数据库关系模型图对应于系统中各数据表的基本结构如下: (1)用户类型信息表(t_usertype 表) 在 t_usertype 表(用户类型信息表)中,是用来保存使用该系统的所有用户种类的信息, 在现系统中主要是用户类型名称,该表可以为系统升级设置各种用户种类权限预留和设 计,该表结构如下: 表 4.1 用户类型信息表 序号列名数据类型长度主键允许空值备注 1ut_noint11 是否类型编号 2ut_namevarchar36 是类型名称 (2)用户信息表(t_userinfo 表) 在 t_userinfo 表中,主要存储的为系统用户者的所有注册信息,其中包括登录模块中 使用的用户名和密码,还涵盖了用户的其他基本信息;表中 ui_typeno 字段为外键字段, 与 t_usertype 表中的主键关键字段相关联,从而保证所有的用户都具有存在的用户类型, 该表结构如下: 咸阳师范学院 2011 届本科毕业论文(设计) 16 表 4.2 用户信息表 序号列名数据类型长度主键允许空值备注 1ui_noint11 是否用户编号 2ui_namevarchar36 是用户名 3ui_passwordvarchar36 是用户密码 4ui_realnamevarchar36 是用户姓名 5ui_sexvarchar36 是用户性别 6ui_agevarchar36 是用户年龄 7ui_timedata 是注册时间 8ui_typenoint11 是类型编号 (3)客房类型信息表(t_roomtype 表) 在 t_roomtype 表中,主要存储了所有的客房类型信息,同一种类型,但不同的房间具 有许多相同的字段,将这样的信息进行优化,进行良好的数据库设计,可以更好地满足 范式要求,该表结构如下: 表 4.3 客房类型信息表 序号列名数据类型长度主键允许空值备注 1rt_noint11 是否类型编号 2rt_namevarchar36 是类型名称 3rt_pricevarchar36 是客房价格 4rt_descripevarchar120 是客房配置 (4)客房信息表(t_roominfo 表) 在 t_roominfo 表中,主要存储了所有的客房信息,该表字段比较简单,主要有客房 编号,状态;同时,该表字段 ri_typeno 为外键字段,与表 t_roomtype 表中的主键字段相 关联,从而保证了数据的一致性,该表结构如下: 表 4.4 客房信息表 序号列名数据类型长度主键允许空值备注 1ri_noint11 是否客房编号 2ri_typenoint11 是客房类型 3Ri_statevarchar36 是客房状态 基于 Swing 技术下的酒店客房管理系统开发 17 (5)顾客信息表(t_customerinfo 表) 在 t_customerinfo 表中,主要存储了所有的顾客信息,即包括现住宿顾客信息,也包 括了离开的顾客信息和预定顾客信息。该表字段 ci_typeno 为外键字段,与 t_customertype 表中的主键字段相关联,从而避免了数据的冗余,该表结构如下: 表 4.5 顾客信息表 序号列名数据类型长度主键允许空值备注 1ci_noInt11 是否顾客编号 2ci_namevarchar36 是顾客姓名 3ci_sexvarchar36 是顾客性别 4ci_cardstylevarchar36 是证件类型 5ci_cardnovarchar36 是证件编号 6ci_addressvarchar36 是证件地址 7ci_phonenovarchar36 是联系方式 8ci_typenoint11 是顾客类型 9ci_statevarchar36 是顾客状态 10ci_totalmoneyvarchar36 是总计金额 (6)顾客类型信息表(t_customertype 表) 在 t_customertype 表中,主要存储了所有的各种顾客类型的信息,主要包括类型名、 折扣比例,从而实现系统在对待不同类型顾客时的结果不同,该表结构如下: 表 4.6 顾客类型信息表 序号列名数据类型长度主键允许空值备注 1ct_noint11 是否类型编号 2ct_namevarchar36 是类型名称 3ct_discountint11 是折扣优惠 (7)住宿信息表(t_bookroominfo 表) 在 t_bookroominfo 表中,主要存储了所有顾客的定住、住宿信息,该表中顾客编号字 段关联顾客信息表中的顾客编号字段,客房号字段关联客房信息表中的客房编号字段, 该表结构如下: 咸阳师范学院 2011 届本科毕业论文(设计) 18 表 4.7 住宿信息表 序号列名数据类型长度主键允许空值备注 1bri_noint11 是否编号 2bri_roomnoint11 是客房号 3bri_booktimedate 是住宿时间 4bri_bookdaysint11 是住宿天数 5bri_endtimedate 是退宿时间 6bri_customernoint11 是顾客编号 7bri_typevarchar36 是住宿类型 8bri_actualvaluevarchar36 是总计金额 9bri_shouquvaluevarchar36 是实际金额 10bri_discoutvaluevarchar36 是优惠金额 11bri_valuestatevarchar36 是结算类型 (8)退宿信息表(t_outroominfo 表) 在 t_ouutroominfo 表中,主要存储了所有顾客退宿的实际信息,该表中客房编号字段 关联于客房信息表中的客房编号字段、顾客编号字段关联于顾客信息表中的顾客编号字 段,该表结构如下: 表 4.8 退宿信息表 序号列名数据类型长度主键允许空值备注 1ori_noint11 是否编号 2ori_roomnoint11 是房间号 3ori_booktimedate 是住宿时间 4ori_outtimedate 是退宿时间 5ori_daysint11 是住宿天数 6ori_totalvaluevarchar36 是总计金额 7ori_statevarchar36 是结算状态 8ori_customeridint11 是顾客编号 基于 Swing 技术下的酒店客房管理系统开发 19 第五章第五章 详细设计详细设计 5.15.1 系统总体描述系统总体描述 酒店客房信息管理系统主要采用操作员根据顾客需求操作系统,系统实现检索数据库 相关信息、更新相关信息完成顾客各种需求功能,并将操作结果实时显示,提供给操作 员。酒店客房信息管理系统总体流程图如下所示: 程序启动 酒店客房信息管理系统数据库数据 显示读写信息系统退出 手动操作 图 5.1 系统总体流程图 5.25.2 系统登录模块系统登录模块 系统登录模块为系统启动的先行模块,该模块实现的功能为用户输入用户名和密码, 系统查询数据库来判断输入的用户名或密码是否合法,若不合法,则请求重新输入;若 输入合法,登录页面消失,系统主界面显示,等待用户操作。系统登录模块流程图如下 所示: 开 始 用户名 密码 判 断 用户名 或密码错误 显示系统主界面 用户名 密码正确 咸阳师范学院 2011 届本科毕业论文(设计) 20 图 5.2 系统登录流程图 5.35.3 住宿管理模块住宿管理模块 住宿管理模块为酒店客房信息管理系统的最为重要的模块,用户使用该模块能够完成 顾客的住宿需求,及其住宿需求变化,该模块基础业务流程图描绘如下图所示: 开 始住宿登记入 住 续 住 结 账退 宿 调 房 图 5.3 住宿管理业务流程图 5.3.15.3.1 住宿登记功能住宿登记功能 住宿登记功能实现顾客完成住宿整个过程中所要完成的处理,该功能流程图如下所示: 开 始 信息输入 判断信息合法 查询客房信息选择客房信息 结算、修改 数据库 判断成功与否退 出 不合法 合法 失 败 成功 图 5.4 住宿登记流程图 5.3.25.3.2 退宿登记功能退宿登记功能 退宿登记功能实现住宿顾客根据客房编号,办理退宿手续。其功能流程图如下所示: 基于 Swing 技术下的酒店客房管理系统开发 21 开 始 选择 客房编号 判定 显示 退宿清单 确认退宿操作数据库成功判断结 束 取消 信息不存在 操作不成功 图 5.5 退宿登记流程图 5.3.35.3.3 换房登记功能换房登记功能 换房登记功能是住宿管理模块不可或缺的功能之一,其主要实现的是当顾客提出换房 需求时,操作员利用该功能查询客房信息、顾客信息,且选择新换客房信息,结算,最 后操作数据库更新,若更新成功,换房手续完成。其功能流程图如下所示: 开 始 选择 客房编号 显示信息 查询客房 判定 是否有客房 结 算操作数据库判 断结 束 无客房 操 作 失 败 图 5.6 换房登记流程图 5.3.45.3.4 续房登记功能续房登记功能 续房登记功能也是住宿管理模块不可或缺的功能之一,其主要实现的是顾客需要续住 客房的功能,主要是查询顾客信息及其住宿的客房信息、住宿信息,输入续住的天数, 进行结算,最后操作数据库。其功能流程图如下所示: 开 始 选择 客房编号 显示信息 输入 续房天数 结 算操作数据库成功与否结 束 操作 失败 图 5.7 续房登记流程图 咸阳师范学院 2011 届本科毕业论文(设计) 22 5.45.4 其他功能程序其他功能程序 5.4.15.4.1 身份证合法性验证身份证合法性验证 系统中嵌入了关于中国公民身份证信息合法性验证程序,保证住宿顾客信息的合法性, 流程为:验证顾客信息身份证编号长度,验证顾客身份证编号字符集问题,验证顾客身 份证编号最后一位字符集问题,验证顾客身份证地址合法性问题,其流程图如下所示: 开 始 输入 身份证编号 判定长度 小于18位 N 判定1-17位 字符集合法性 N 判定最后一位 字符合法性 N 验证 地址合法性 读取身份证 合法性文件 N 结 束 Y Y Y Y 图 5.8 身份证验证流程图 5.4.25.4.2 宿费提醒功能宿费提醒功能 宿费提醒功能体现了系统设计的人性化,可以为酒店避免不必要的财务损失,其功能 流程图如下所示: 基于 Swing 技术下的酒店客房管理系统开发 23 开 始 设置变量 Flag=true 查询数据库 今日离开顾客信息 显示在表格组件 宿费提醒停止 判断 控制变量 F Fl la ag g = = t tr ru ue e F Fl la ag g = = f fa al ls se e 图 5.9 宿费提醒流程图 咸阳师范学院 2011 届本科毕业论文(设计) 24 第六章第六章 系统实现系统实现 6.16.1 系统登录模块实现系统登录模块实现 系统登录模块实现界面如下图所示: 图 6.1 系统登录界面 界面包含标签组件、文本框组件、密码框组件,其中文本框、密码框用来接收用户 输入用户名和密码,登录命令按钮添加 MouseListener 监听事件,实现检索数据库信息判 断用户输入的用户名或密码是否合法。取消命令按钮添加 MouseListener 监听事件,实现 系统退出功能。且系统登录密码采用 MD5 加密算法进行加密存储,MD5 加密算法为不可 逆加密算法10,其核心代码如下: public static String md5(String text) try /调用String方法来进行MD5加密设置 return string(MessageDigest.getInstance(MD5) .digest(text=null?BLANK:text.getBytes(); catch(Exception ex) return null; 基于 Swing 技术下的酒店客房管理系统开发 25 6.26.2 系统主程序实现系统主程序实现 不同的用户进入系统,会产生不同的系统主程序,提供不同的功能,以管理员用户身 份进入系统,产生的系统主程序界面如下图所示;以普通用户身份进入系统,产生的系 统主程序界面如下图所示。 图 6.2 系统主界面 系统主界面主要由标题栏、菜单栏、工具栏、状态栏、工作区域五部分组成。 菜单栏和工具栏分别添加相关监听事件,实现相应接口,完成调用系统各个功能模 块功能。 状态栏分为五个区域,分别为当前打开的窗体名称、当前登录用户的用户名、用户 的用户类型、动态显示当前系统时间,系统版权单位。 其中动态显示当前系统时间,采用 JAVA 中定时器,实现 TimeTask 接口11,利用匿 名内部类来完成系统启动后,每隔 1000 毫秒获取一次系统时间,并显示至状态栏。 该功能核心代码如下: t.schedule(new TimerTask() /匿名内部类,重写方法Run(),每隔系统一定时间执行该方法体一次 public void run() nowTimer = DateTime.getTime(); jLabel3.setText(nowTimer); , 0, 1000); 咸阳师范学院 2011 届本科毕业论文(设计) 26 6.36.3 住宿登记功能实现住宿登记功能实现 住宿登记功能实现界面如下图所示: 图 6.3 住宿登记界面 住宿登记窗体采用的是 JInteralIFrame 内部窗体,采用这种窗体的优点可以使得窗体 始终出现在系统主窗体内部12。 窗体主要由三部分组成,顾客信息、顾客所选择的客房信息、所有的客房信息;顾 客信息部分主要是通过各种组件来接收顾客信息的输入;顾客所选择的客房信息部分主 要是用来查看顾客选择客房后的客房详细信息;所有客房信息部分采用面向对象的 Swing 组件方式自定义 TextPane 对象13,该对象中包含了客房信息和相应的监听事件,实现当 鼠标移至某一个对象上时,系统会以提示框的形式显示出该对象所包含客房的所有详细 信息。监听事件如下: public TextP(RoomInfo2Model room) this.addMouseListener(new MouseAdapter() public void mouseEntered(MouseEvent evt) textPMouseEntered(evt); ); 基于 Swing 技术下的酒店客房管理系统开发 27 6.46.4 退宿登记功能实现退宿登记功能实现 退宿登记功能实现界面如下图所示: 图 6.4 退宿登记界面 图 6.5 退宿登记结算界面 退宿登记窗体与住宿登记窗体同样,采用 JInteralIFrame 框架设计。用户通过组合框 选择需要退房的客房编号,先进行查询,可查询出顾客信息、住宿信息,且结合当前系 统时间,结算出退宿该客房需要结算金额,如上图所示。 产生对话框的核心代码为: /str 代表该对话框中需要显示的字符串 JOptionPane.showConfirmDialog(this, str “结算汇总“, JOptionPane.OK_CANCEL_OPTION); 咸阳师范学院 2011 届本科毕业论文(设计) 28 6.56.5 客房信息查询功能实现客房信息查询功能实现 客房信息查询功能实现界面如下图所示: 图 6.6 客房信息查询界面 客房信息查询窗体主要采用的是树组件和表格组件,树组件采用动态读取数据库客 房类型和状态来显示,查询完成后,将查询结果显示在表格控件中。 6.66.6 顾客信息查询功能实现顾客信息查询功能实现 顾客信息查询功能实现界面如下图所示: 图 6.7 顾客信息查询界面 基于 Swing 技术下的酒店客房管理系统开发 29 顾客信息查询功能同客房信息查询功能相同,主要将界面分为三部分:树形组件、表 格组件、条件输入组件。树形组件添加鼠标监听事件,实现鼠标单击后能够以单击内容 为条件查询出所有的信息,并将这些信息输出到表格组件中14。文本框支持以姓名为条 件检索出满足条件的顾客信息。 6.76.7 宿费提醒功能实现宿费提醒功能实现 宿费提醒功能实现界面如下图所示: 图 6.8 宿费提醒界面设计 宿费提醒窗体设计较简单,内含一个表格组件和一个标签组件,其中表格组件用来显 示今日预计离开的顾客的信息,标签组件显示预计今日离开的顾客汇总。该功能主要采 用 Java 定时器任务定时执行,系统启动后,该窗体每隔一段时间执行一次,显示出今日 预计离开的顾客信息,用户可以根据需要关闭或启动该宿费提醒功能。 宿费提醒功能核心代码如下: timer1 = new Timer(); /设置定时器,每隔一定时间执行一个MyTask类中的方法 timer1.schedule(new MyTast(), 6 * 1000, 30*60 * 1000) 咸阳师范学院 2011 届本科毕业论文(设计) 30 第七章第七章 系统测试系统测试 7.17.1 测试的目的与原则测试的目的与原则 软件测试就是利用测试工具按照测试方案和流程对产品进行功能和性能测试,甚至根 据需要编写不同的测试用例,设计和维护测试系统,对测试方案可能出现的问题进行分 析和评估。执行测试用例后,需要跟踪故障,以确保开发的产品适合需求。 7.27
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高校餐饮服务合同模板(3篇)
- 目标练:去括号法则的应用
- qcc知识考试题及答案
- 教育机构劳动合同中教师薪资及补贴发放协议
- 2025公务员温州面试题及答案
- 央美考研专业试题及答案
- 计算机专业线上试题及答案
- 2025至2030中国园林绿化产品行业运营态势与投资前景调查研究报告
- 小班下学期副班工作总结
- 初中现代诗歌教学课件
- 小学生科普课视错觉课件
- 化疗药物的应用及护理
- 安宁疗护个案护理模板
- 质量部长述职报告
- 华为AAU规格标准手册-5G
- 2025年华侨港澳台学生联招考试英语试卷试题(含答案详解)
- 音乐心理学理论-洞察分析
- 上海市闵行区区管国企招聘笔试冲刺题2025
- OptixOSN3500智能光传输设备业务配置手册
- 软件正版化培训
- 工业园区消防维保方案
评论
0/150
提交评论