1、本科毕业论文(20 届)酒店客房预定管理系统的设计与实现-客房及系统管理所在学院专业班级 计算机科学与技术学生姓名指导教师完成日期2摘要随着人员流动规模的不断扩大,宾馆数量的急剧增加,有关酒店管理的各种信息量也在不断成倍增长。面对庞大的信息量,就需要有酒店客房预定管理系统来提高客房管理工作的效率。通过本系统,可以做到信息的规范管理和快速查询,从而减少了管理方面的工作量。本次酒店客房预定管理系统设计利用 JSP 语言和 myeclipse、mysql 开发工具来开发。该系统具备了酒店客房管理和会员管理的基本功能,可以满足酒店客房系统管理基本要求,包括增加、修改和删除等功能,能根据管理员的需求,快
2、捷方便的进行管理。关键词:酒店,信息,语言3ABSTRACTWith the constant expansion of the movement of persons, the number of hotels increased dramatically, the amount of information about the various hotel management has also been doubled. Given the large amount of information, you need to have hotel room booking management
3、 system to improve management efficiency. Through this system, you can do the standard management information and quick queries, thereby reducing management workload.The hotel room reservation management system designed to take advantage of JSP language and myeclipse, mysql development tools to deve
4、lop. The system has a hotel management and membership management, basic functions, meet the basic requirements for hotel rooms management system, including add, modify and delete functions, according to the administrators needs, fast and convenient to manage.Keyword: hotel, information, language目录1.
5、绪论 .11.1 研究背景 .11.2 设计思想 .11.3 课题意义 .12 项目概述 .32.1 课题简要说明 .32.2 可行性研究 .32.2.1 经济可行性 .32.2.2 技术可行性 .32.2.3 运行可行性 .32.2.4 时间可行性 .42.2.5 法律可行性 .43 编程工具介绍 .53.1MYECLIPSE 技术 .53.2MYSQL 技术 .54 总体设计 .74.1 数据库概念结构设计 .74.2 数据库表结构设计 .94.3 数据库结构的实现 .95 详细设计及实现 .115.1 系统功能分析 .115.2 用户登录模块的实现 .115.3 系统登陆的主界面 .12
6、5.4 客房管理 .135.5 会员管理 .155.6 剩余客房 .165.7 房间占用信息 .186 系统测试 .206.1 功能测试 .206.2 性能测试 .206.3 测试结论 .20总结 .21致谢 .22参考文献 .2311.绪论1.1 研究背景随着人员的流动规模的不断扩大,宾馆数量的急剧增加,有关客房管理的各种信息量也在不断成倍增长。面对庞大的信息量,就需要有酒店客房订购管理系统来提高客房管理工作的效率。通过这样的系统,我们可以做到信息的规范管理和快速查询,从而减少了管理方面的工作量。传统手工的客房信息管理,管理过程繁琐而复杂,执行效率低,并且易于出错。通过这样的系统,我们可以做
7、到信息的规范管理和快速查询,实现了客房信息管理的系统化、规范化和自动化,这样不仅减少了管理工作量,还提高了管理效率,降低了管理成本。酒店客房管理系统对宾馆加强客房信息管理有着极其重要的作用,就一所客房数量较大的宾馆来说,他的设计内容非常复杂而且繁多,比如拥有客房信息管理、客房类别信息管理、预定信息管理等功能,而且设计的模块也很多,比如信息统计模块等等。1.2 设计思想本系统采用自顶向下逐步求精的设计程序过程和方法,对要完成的任务进行分解,先对最高层次中的问题进行定义、设计、编程和测试,而将其中未解决的问题作为一个子任务放到下一层次去解决。这样逐层、逐个地进行定义、设计、编程和测试,指导所有层次
8、上的问题均由实用程序来解决,就能设计出具有层次结构的程序。自顶向下的方法设计时,首先是对所设计的系统要有一个全面的理解,然后从顶层开始,连续的逐层向下分解,起到系统的所有模块都小到便于掌握为止。应用软件的编程工作量极大,而且要经常维护、修改、如果编写程序不遵循真确的规律,就会给系统的开发、维护带来不可逾越的障碍。采用自顶向下的设计能从总体上理解和把握整个系统,而后对于组成系统的各功能模块逐步求精,从而使整个程序保持良好的机构,提高软件开发的效率。1.3 课题意义随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已经进入人类社会的各个领域并发挥着越来越重要的作用。它已经
9、深入到日常工作和生活的方方面面,比如文字处理、信息管理、辅助设计、图形图像处理、教育培训以及游戏娱乐等。各行各业的人们无须经过特别的训练就能够使用电脑完成许许多多复杂的工作。而且,虽然现在世界上已经充满了多如牛毛的各种软件,但它们依然不能满足用户的各种特殊需要,人们还不等不开发适合自己特殊需求的软件。今天,计算机已经成为我们学习和工作的得力助手;计算机的价格已经十分廉价,性能却有了长足的进步。它已经被应用于许多领域,计算机之所以如此流行的原因主要有一下几个方面:首先,计算机可以代替人工进行许多繁杂的劳动;2其次,计算机可以计生许多资源; 第三,计算机可以大大的提高人们的工作效率;第四,计算机可
10、以使敏感信息更加的安全,等等。我作为一个计算机应用的本科生,希望可以在这方面有所贡献。我希望用我四年所学编制出一个实用的程序。32 项目概述2.1 课题简要说明随着酒店的规模不断扩大,有关酒店客房预定各种信息也成倍增长。面对庞大的信息量,有必要开发酒店客房管理系统来提高管理工作的效率。今天我们使用计算机对酒店客房预定于订购信息进行管理,具有手工管理所无法比拟的优点。通过这样的系统,可以做到信息的规范管理、科学统计和快速查询,从而减少管理方面的工作量,有效地提高工作效率。2.2 可行性研究该阶段通过对系统目标的初步调研和分析,提出可行性方案并进行论证。我们在这里主要从技术可行性、经济可行性和操作
11、可行性等方面进行分析。2.2.1 经济可行性开发该系统所需的相关资料可以通过已存在的相关系统进行调查采集,所需的其他应用软件、硬件系统也易于获得因此开发成本较低。而引进使用本系统后,与传统方式相比,具有效率高、成本低、质量高的特点,可以节省不少人力物力及财力。所以,从经济的角度来看,该系统可行。2.2.2 技术可行性技术可行性需要考虑现有的技术条件能否顺利完成开发工作,软硬件配置是否满足开发的需求等。本网站用的是 JSP 开发语言,调试相对简单,当前的计算机硬件配置也完全能够满足开发的需求,因此在技术上是绝对可行的。软件方面:由于目前单机模式相对成熟,故软件的开发平台成熟运行,它们速度快、容量
12、大、可靠性高、价格低,完全能满足系统的需求。2.2.3 运行可行性运行可行性是对组织结构的影响,现有人员和机构环境对系统的适应性及人员培训不从计划的可行性。满足信息化技术已经相当普及,各类操作人员水品都有相当的高度,所以在运行上是可行的。本系统的开发,主要是对数据库的处理,包括数据的收集,数据的变换及数据的各种输出。采用 JSP+MYSQL 技术体系,已无技术上的问题。42.2.4 时间可行性从时间上看,在两个月的时间里学习相关知识,并开发网站,时间上是有点紧,但是不是不可能实现,通过两个多月的努力功能基本实现。 2.2.5 法律可行性所有的技术资料都为合法的,开发过程中不存在知识产权的问题,
13、未抄袭任何网站,不存在侵犯版权的问题等等。 综上所述,本系统的开发在技术上,从经济上,从法律上,从时间上,从运行上都是完全可行的。53 编程工具介绍3.1Myeclipse 技术 Myeclipse 是一个十分优秀的用于开发 java,j2ee 的 eclipse 插件集合,myeclipse 的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持非常不错。Myeclipse 企业级工作平台是对 eclipseide 的拓展,利用它我们可以在数据库和 javaee的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的javaEE 集成开发环境,包括了完备的编码、调试、测
14、试和发布功能,完整支持html,struts,jsp,css,javascript,hibernate.Myeclipse 是一个十分优秀的用于开发 java,j2EE 的 Eclipse 插件集合,myeclipse 的功能非常强大,支持也非常广泛,尤其是对各种开源产品的支持十分不错。Myeclipse 目前支持 java servlet,ajax,jsp,struts,hibernate 等多项功能。可以说 MyEclipse 几乎囊括了目前所有主流开源产品的专属 eclipse 开发工具。根据官方最新消息, MyEclipse 2013 已经正式发布! MyEclipse 2013 支持
15、 HTML5、JQuery 和主流的 javascript 库。随着 myeclipse2013支持 html5,你可以添加音频、视频和 api 元素到你的项目,从而为移动设备创建复杂的web 应用支持。你甚至还可以通过 html5 可视化设计。同时,随着新款软件支持 jquery,你可以通过插件提升性能,并添加动画效果到设计中。对于 myeclipse 的不同版本我们需要了解,myeclipse 5.0 更智能、更快捷更便宜的J2EE 工具的新版本的诞生。他的价格对于个人还是企业开发人员来说都是非常有吸引力。这是 j2EE ide 市场一个重量级的选手。通过添加 uml 双向建模工具。总之,
16、myeclipse 5.0继续为业界提供全面的产品。Myeclipse 7.0 的发布意味着我们不需要再配置 tomcat 以及服务器了,你所需要的仅仅是安装 myeclipse7.0。7.0 发行版包括在 6.6 版本基础上对 bug 的修复和功能的增强。提供的支持很多,包括:Eclipse 3.4.1/Ganymede、RESTweb 服务、新的 myeclipse 操作板、spring 工具集更新、集成 Manven2、open JPA 支持、高级 javascript 工具、专业的 jsdt 实现、报表工具加强、jsf 和 ICEfaces 工具更新。3.2MySQL 技术MySQL
17、是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于Oracle 公司。MySQL 是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL 的SQL 语言是用于访问数据库的最常用标准化语言。 MySQL 软件采用了双授权政策(本词条“授权政策 ”) ,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。由于其社区版的性能卓越,搭配 PHP 和 Apache 可组成良好的开发环境。MySQL 是一个开放源码的
18、小型关联式数据库管理系统,开发者为瑞典 MySQL AB 公司。目前 MySQL 被广泛地应用在 Internet 上的中小型网站中。由于其 体积小、速度快、6总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了 MySQL 作为网站数据库MySQL 最初的开发者的意图是用 mSQL 和他们自己的快速低级例程(ISAM)去连接表格。经过一些测试后,开发者得出结论:mSQL 并没有他们需要的那么快和灵活。这导致了一个使用几乎和 mSQL 一样的 API 接口的用于他们的数据库的新的 SQL 接口的产生,这样,这个1API 被设计成允许为用于 mSQL 而写的第三
19、方代码更容易移植到MySQL。MySQL 这个名字是怎么来的已经不清楚了。基本指南和大量的库和工具带有前缀“my”已经有 10 年以上,MySQL 的海豚标志的名字叫“sakila”,代表速度、力量、精确,它是由 MySQL AB的创始人从用户在“ 海豚命名 ”的竞赛中建议的大量的名字表中选出的。获胜的名字是由来自非洲斯威士兰的开源软件开发者 Ambrose Twebaze 提供。根据 Ambrose 所说,Sakila 来自一种叫 SiSwati 的斯威士兰 方言,也是在 Ambrose 的家乡乌干达附近的坦桑尼亚的 Arusha的一个小镇的名字。2008 年 1 月 16 号 MySQL
20、AB 被 Sun 公司收购。而 2009 年,SUN 又被 Oracle 收购。就这样如同一个轮回,MySQL 成为了 Oracle 公司的另一个数据库项目。与其他的大型数据库例如 Oracle、DB2、 SQL Server 等相比,MySQL 自有它的不足之处,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企业来说,MySQL 提供的功能已经绰绰有余。即使用 Linux 作为操作系统,Apache 和 Nginx 作为 Web 服务器,MySQL 作为数据库,PHP/Perl/Python 作为服务器端脚本解释器。由于这四个软件都是免费或开放源码软件(FLOSS),因此使用这种方式不用花一分钱(除开人工成本)就可以建立起一个稳定、免费的网站系统。