基于Ajax和JDBC的中小型酒店管理系统--论文--JAVA2班王晨霖.doc_第1页
基于Ajax和JDBC的中小型酒店管理系统--论文--JAVA2班王晨霖.doc_第2页
基于Ajax和JDBC的中小型酒店管理系统--论文--JAVA2班王晨霖.doc_第3页
基于Ajax和JDBC的中小型酒店管理系统--论文--JAVA2班王晨霖.doc_第4页
基于Ajax和JDBC的中小型酒店管理系统--论文--JAVA2班王晨霖.doc_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

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

文档简介

郑州大学毕业设计(论文) 题题 目:目: 基于基于 Ajax 和和 JDBC 的中小型酒店管理系的中小型酒店管理系统统 指导教师:指导教师: 李学相李学相 职称:职称: 副教授副教授 学生姓名学生姓名: 王晨霖 学号学号: 20077710834 专专 业业: 计算机科学与技术(软件开发 java) 院院(系系): 软件学院 完成时间完成时间: 2011 年 4 月 30 日 2011 年 4 月 30 日 I 目录目录 摘摘 要要.I ABSTRACTII 1 引引 言言1 1.1 课题背景1 1.2 开发目的2 1.3 开发工具2 1.4 运行环境2 2 需求分析需求分析4 2.1 需求概述.4 2.2 模块划分.4 3 系统总体设计系统总体设计5 3.1 关键技术.5 3.1.1 JSP 技术.5 3.1.2 JDBC 技术5 3.1.3 Ajax 技术: .5 3.1.4 MySQL 数据库技术.6 3.1.5 TOMCAT 简介6 3.2 系统流程图.6 3.3 数据库设计.8 3.3.1 数据库需求分析 .10 4 系统的完整性设计与开发系统的完整性设计与开发10 4.1 系统加载前的准备.10 4.1.1 数据库的基本数据输入 10 4.2 登陆模块设计与实现.12 4.3 客房管理模块设计与实现15 4.3.1 预定房间功能模块的设计与开发 .15 4.3.2 退房结账功能模块的设计与开发 .17 4.4 信息管理模块的设计与实现.18 4.4.1 客户信息模块功能模块开发 .18 4.4.2 客房信息管理功能模块开发 .19 4.5 客户评价模块的设计与实现.21 5 设计总结设计总结23 致致 谢谢 24 参考文献参考文献 25 I 摘摘 要要 随着社会的的不断进步,宾馆酒店业的竞争也愈来愈激烈,要想在竞争中取得优势, 必须在经营管理、产品服务等方面提高管理意识。如何利用先进的管理手段,提高客房 的管理水平,是每一个宾馆管理者所面临的重大问题。 传统手工的客房管理,管理过程繁琐而复杂,并且易于出错。通过这样的系统,我 们可以做到信息的规范管理和快速查询,实现了客房信息管理的系统化、规范化和自动 化,这样不仅减少了管理工作量,还提高了管理效率,降低了管理成本。随着信息化建 设的发展,酒店服务业与国际市场接轨已成为大势所趋,酒店业要迎接这场挑战,就必 须提高整体竞争能力,变革酒店的管理模式,提高管理水平。实施信息化建设无疑是实 现这一目的的必由之路和明智之举。特别是近年来计算机在我国突飞猛进的发展,越来 越多的行业都涉足到这个新兴的领域,而酒店管理由于自身应该和顾客及时快捷紧密联 系的特点,更应该乘着这股春风打开酒店管理新的一页,更为酒店管理与国际接轨以及 酒店的长足发展打下良好的软件基础。 本系统使用 Ajax 技术实现了一个简单的酒店管理.在本系统里,主要是对客房的信息, 经营情况以及客户信息的管理.为管理者提供迅速,高效的服务,减免手工处理的繁琐与误 差,及时,准确地反映酒店的工作情况,经营情况。 关键词:酒店;客房管理;Ajax;软件 II ABSTRACT As society progresses, the hotels industry, more and more intense competition, in order to gain advantage in the competition must be in management, products and services and so improve management awareness. How to use advanced management tools to improve the management level rooms, a hotel manager is faced by every major issue. Traditional manual room management, management process cumbersome and complex, and prone to error. Through this system, we can do the standard management of information and quickly find and achieve the rooms systematic information management, standardization and automation, not only to reduce the administrative workload, but also improve management efficiency and reduce management costs. With the development of information construction, hotel services and the international market has become a trend in the hotel industry to meet this challenge, we must improve the overall competitiveness of the hotel management change to improve the management level. Implementation of information technology is undoubtedly the only way to achieve this objective, and wise. Especially in recent years the rapid development of computers in China, more and more industries are involved in to this emerging field, while the hotel management and customers in a timely manner due to its fast and should be closely linked, it is more riding this spring should open a hotel management New page, more hotel management and international standards and the rapid development of the hotel to lay a solid software foundation. The system uses a simple Ajax technology in hotel management. In this system, mainly for room information, operation and management of customer information. for managers to provide prompt, efficient service, reduction of the tedious manual processing and error Timely and accurately reflect the hotels work, operations. Keywords: hotel; room management; Ajax; software 1 1 引引 言言 近年来,随着我国经济的发展,国内的酒店服务业得到了日新月异的发展.而酒店在运 作期间,其管理和服务的水平直接影响到酒店的形象和声誉.这就需要提高服务的质量,尽 可能做到让客户满意.因此,一流的酒店运作需要各个部门之间的相互支持与配合,更需要 酒店加强各个部门之间的信息沟通与传递.本套酒店管理系统正是为了解决部门之间的信 息交流与处理,以提高酒店办公效率而开发的。 酒店计算机管理系统是酒店前后台联网的一个网络系统,追求企业内业务的无纸化 办公,提高工作效率,以增加经济效益。并引入先进的管理模式,以财务为核心,销售 为龙头,完成有计划、有预测的目标管理。 1.1 课题背景课题背景 在 80 年代初发展起来的国内的酒店管理系统,充分吸收了国外管理系统的精华,再 结合国内的实际情况,逐步发展成熟,到 90 年代初期已形成了几个较成熟的软件系统, 同时,产生了几家专职从事宾馆业计算机管理系统的公司。到了 90 年代中后期,随着计 算机在酒店中的普及应用,计算机技术的不断发展,酒店管理系统的发展到了一个新的 时期,新的系统平台、新的系统特点及发展方向不断涌现,主要体现在系统基本转到客 户机/服务器模式下的 Windows 版,功能更加细致完善,系统更加稳定可靠。 总体而言,国内酒店 IT 技术开发的现状是:1、需求不明确,使酒店项目工程性强, 产品化不足,开发商的总体成本居高不下,研发缺乏原动力。2、没有行业统一标准,厂 商各自为政,市场分化导致产品整合难度大。3、产品推广依赖行政手段和关系网,抑制 了新技术的引进和技术的创新,不利于形成自己的产品特色和质量控制。4、国外优秀品 牌的低价进入,垄断了国内高星级市场,开发商利润空间式微。 宾馆在正常的运营中需要对客房资源、顾客信息、结算信息进行管理,利用宾馆管 理信息系统及时了解各个环节中信息的变更,有利于提高管理效率。 开放性的、应用系统可灵活伸缩的、面向最终用户的服务性系统,不断满足饭店业 务需求、市场环境的拓展和管理模式的变化。系统开发具有超前意识,强调系统的标准 化、系列化,模块化设计,有明确的功能模块结构和技术支持模块结构,按饭店不同的 星级、规模和资金条件,分若干档次,充分利用当前性价比最佳的技术产品组成模块, 灵活组合集成。便于系统维护、修改和升级,便于各饭店根据自己情况,分批分期实施 技术改造,便于系统动态的跟随世界先进技术的发展。 本系统是一套适用于中、小型星级宾馆使用的优秀系统,操作简单,灵活性好、系统 安全性高,运行稳定。 1.2 开发目的开发目的 酒店管理系统是一款针对宾馆酒店业的管理软件。该系统管理模块包括:客房 管理(预定房间:对现有房间查询并预定;退房结账:计算从入住到结账的时间,为客 户办理结账手续);信息查询(客户信息管理:对现有入住的客户信息,以及 VIP 客户 2 的信息进行集中管理,提供查询修改等功能;客房);客户评价(客户可以对入住的情 况发布留言信息)。本系统提供了很强的实用性,并且还有预订客房,打印旅客报表,方 便管理客房, 管理旅客消费新闻发布,消息管理和留言管理等功能。 本管理系统目的在于 提高服务质量,酒店客房的网上预订,不仅大大方便了宾客, 也提高了宾馆的经营管理水平; 快速的预订处理系统,减少客人进店离店等待时间; 清晰准确的账单、数据表格,使客人感到高档次的享受。提高工作效率, 严格的数据检 查可避免手工操作的疏忽而造成的错误,减轻职工的工作压力,从而提高工作效率。全 面了解营业情况,完备的报表功能和查询功能使管理者可及时了解饭店各部门的营业情 况。 本管理系统是一个面向宾馆酒店提供服务的综合管理系统。管理人员通过本系统完 成所有的服务管理工作。从客户网上预订到消费入住再到退房离开,其在酒店内的所有 消费相关的数据都通过系统进行管理。快速,方便管理酒店业务,根据酒店业务的实际 情况进行统筹 分析与规划,按照业务的流程而设计,因而,提高了酒店运作的效率和客 户的及时服务。 1.3 开发工具开发工具 本系统是在 windows XP 操作系统下,使用 MyEclipse 6.5 作为开发工具进行开发的, 使用 Tomcat 作为 web 发布工具,数据库使用的是 MySQL。 MyEclipse 企业级工作平台( MyEclipse Enterprise Workbench ,简称 MyEclipse)是对 Eclipse IDE 的扩展,利用它我们可以在数据库和JavaEE 的开发、 发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的 JavaEE 集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持 HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate。 Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很 多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可 以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对 HTML 页面 的访问请求。实际上 Tomcat 部分是 Apache 服务器的扩展,但它是独立运行的,所 以当你运行 tomcat 时,它实际上作为一个与 Apache 独立的进程单独运行的。 1.4 运行环境运行环境 在服务器端运行系统所需的环境如表 1-1 所示: 表 1-1 服务器端配置 软件环境: jre1.5 及以上 tomcat5.5 及以上 read5 硬件环境: 1GB DDR2 寄存器 SDRAM 内存推荐 2G 英特尔(R) Core(TM)2 及以上处理器 2GB 以上 SCSI Hard Drive 3 windows Server,linux 在客户端运行系统所需的环境如表 1-2 所示: 表 1-2 客户端端配置 软件环境:可选软件平台: 中文 Windows95 及以上 IE 浏览器 5 以上 硬件环境: 1GB DDR2 寄存器 SDRAM 内存 100MB SCSI Hard Drive 4 2 需求分析需求分析 2.1 需求概述需求概述 本酒店管理系统以模块化定义,可满足小型宾馆酒店本系统具有以下特点: (1) 通过合理而先进的网络设计及软、硬件的优化选型,足可保证系统的可靠性与 容错性。系统以用户需求为目标,以方便用户为原则,同时融入先进的管理经验,根据 用户的实际需求功能情况,为用户进行二次开发,度身订造一套先进的酒店管理系统。 (2) 采用浏览器直接操作界面,每一步骤的操作都经过精心的设计,将复杂的统计 运算过程隐藏于简单的操作之下,支持纯键盘操作,实时详尽的在线帮助系统更免除使 用者的烦恼。系统的设计能降低使用前的培训、实施和使用中的维护时间。 (3) 经过仔细调查该酒店的实际状况后,并同酒店的相关人员进行沟通后,确定了 系统的具体需求,研制开发了“酒店管理系统” ,系统的主要功能设计需要包括基础信息 管理(客房信息、客房信息) ;客房前台信息管理(客房预定、住宿登记、退房结账) ; 查询信息管理(客房查询、住宿查询) ;结账查询管理(客房结账、客户评价)等功能。 2.2 模块划分模块划分 本程序为酒店系统自动化管理平台,JAVA 编写,使用 MySQL 数据库。根据酒店的 实际需求进行功能划分,本系统一共分为六大功能模块,六大模块分别是:登陆模块、 预定房间、退房结账、客户信息管理、客房信息管理、客户评价。 各模块功能如下: (1)登陆模块是系统必备的模块,指定的系统使用人可以持有用户名及密码登陆系统 进行相应操作。 (2)预定房间模块提供酒店房间的预定功能,分别提供了个人预定以及团队预定功能, 个人预定默认预定房间数为一间,团队预定可根据要求预定房间数分配房间。 (3)退房结账模块提供了最基本的结账功能,可直接输入用户名,系统自动查找用户 入住信息 ,生成应付得款额。 (4)客户信息管理模块是针对客户信息管理开发的模块,提供了客户的基本信息管理, 可直接输入客户名称,查询客户的相应信息。 (5)客房信息管理模块是便于前台人员查询客房入住情况而开发的模块,前台人员只 需要输入简单的房间编号,就可以查询到是否已入住。 (6)客户评价模块是为了方便的记录客户入住期间的意见以及建议而开发,客户可直 接出入自己的名字后,留言给酒店管理人员。 5 3 系统总体设计系统总体设计 3.1 关键技术关键技术 3.1.1 JSP 技术 JSP(Java Server Pages)技术是由 Sun 公司发布的用于开发动态 Web 应用的一项技 术。它以其简单易学、跨平台的特性,在众多动态 Web 应用程序设计语言中异军突起, 在短短几年中已经形成了一套完整的规范,并广泛地应用于电子商务等各个领域中。 JSP 通常在整个 Java EE 体系结构中充当展示层,将 Java 代码按指定的语法格式插入 到 HTML 页面汇总,然后以.jsp 为后缀保存即可得到所需的 JSP 页面。其实,JSP 是基 于 Servlet 实现的,JSP 页面在服务器上执行之前首先要转化成 Servlet,然后才能执行。 由于 JSP 比 Servlet 更容易被理解和使用,迅速被广大 Java Web 程序员所接受,因此, JSP 也就成了 JSP 加 Servlet 开发技术的代名词。 3.1.2 JDBC 技术 JDBC 是一种可用于执行 SQL 语句的 JavaAPI(Application Programming Interface, 应用程序设计接口) 。它由一些 Java 语言编写的类和界面组成。JDBC 为数据库应用开发 人员和数据库前台工具开发人员提供了一种标准的应用程序设计接口,使开发人员可以 用纯 Java 语言编写完整的数据库应用程序。 通过使用 JDBC,开发人员可以很方便地将 SQL 语句传送给几乎任何一种数据库。 也就是说,开发人员可以不必写一个程序访问 Oracle,写另一个程序访问 MySQL,再写 一个程序访问 SQL Server。用 JDBC 写的程序能够自动地将 SQL 语句传送给相应的数据 库管理系统(DBMS) 。不但如此,使用 Java 编写的应用程序可以在任何支持 Java 的平 台上运行,不必在不同的平台上编写不同的应用。Java 和 JDBC 的结合可以让开发人员 在开发数据库应用时真正实现“一次编写,处处运行”。 Java 具有健壮、安全、易用等特性,而且支持自动网上下载,本质上是一种很好的 数据库应用的编程语言。它所需要的是 Java 应用如何同各种各样的数据库连接,JDBC 正是实现这种连接的关键。 3.1.3 Ajax 技术: AJAX 是“Asynchronous JavaScript and XML”(异步 JavaScript 和 XML)的缩写, 是一种运用于 JavaScript 和可扩展标记语言(XML),在网络浏览器和服务器之间传送 或接收数据的技术。 这两年因特网上比较火的话题当属 Web2.0 的应用,其中 AJAX 是 Web2.0 的核心之 一。AJAX 技术运用于浏览器中,使向服务器索取网页的部分信息成为可能。从此 Java Web 程序员不必再为整个页面的刷新而苦苦等待,应为已经可以实现刷新页面局部内容 的要求。AJAX 不是一项全新的技术,它只不过是一道包括 JavaScript、XHTML 和 CSS、DOM、XML 和 XSTL、XMLHttpRequest 在内的大杂烩。它是使用 XHTML 和 6 CSS 标准化呈现,使用 DOM 实现动态显示和交互,使用 XML 个 XSLT 进行数据交换与 处理,使用 XMLHttpRequest 进行异步数据读取,最后用 JavaScript 绑定和处理所有数据。 AJAX 的工作原理相当于在用户和服务器之间加了一个中间层,使用户请求与服务器 响应异步化。这样把以前的一些服务器负担的工作转交给客户端,利用客户端闲置的处 理能力来处理,减轻服务器和宽带的负担。如果你认为网络浏览器与服务器之间的异步 通信是个好东西的话,就没有理由不接受 AJAX。 恰当地将 AJAX 技术运用到 Java Web 应用中,可以使 Java Web 应用如虎添翼,给客 户一种全新的体验。 3.1.4 MySQL 数据库技术 MySQL 是目前最为流行的开放源代码的数据库,是完全网络化的跨平台的关系型数 据库系统。目前 MySQL 被广泛地应用在 Internet 上的中小型网站中。由于其体积小、速 度快、总体拥有成本低,尤其是开放源码这一特点,很多公司向开放源代码的数据库系 统迁移,从而降底花费成本。 MySQL 可以称得上是目前运行速度最快的 SQL 语言数据库。除了具有许多其它数据 库所不具备的功能和选择外,MySQL 数据库是一种完全免费的产品,用户可以直接从网 上下载数据库,用于个人或商业用途,而不必支付任何费用。 MySQL 具有功能强大、支持跨平台、运行速度快、支持面向对象、安全性高、成本 低、支持各种开发语言、数据存储量大、支持强大的内置函数等特点。 3.1.5 Tomcat 简介 Tomcat 是一种免费的、开发源代码的 Web 容器。它是 Apache 软件基金会的 jakarta 项目中的一个核心项目,由 Apache、Sun 和其他一些公司及个人共同开放而成。由于有 了 Sun 的参与和支持,JSP 和 Servlet 的最新规范都可以在 Tomcat 的新版本中得到实现。 Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合 下被普遍使用,开发和调试 JSP 程序的首选。 Tomcat 作为一个自由软件,由于其先进的技术和稳定的性能,并且是免费的,因而 深受 Java 爱好者得喜爱并得到了部分软件开发商的认可,成为目前比较流行的 Web 应用 服务器。 3.2 系统数据流图系统数据流图 在客户预订入住流程中,系统用户对客房信息进行查询,输入,修改以及客户信息 的输入。了解客户的住宿日期,房间编号,房间类型,房间状态,房间价格以及输入顾 客的姓名,联系方式等信息。数据流图如图 3-1 所示: 7 图 3-1 车辆申请流程图 在客房流程图中,管理员对客房信息进行查询,输入,修改。查询是否有房间空闲, 顾客的房间类型,房间价格等。流程图如图 3-2 所示: 图 3-2 客房信息相关操作流程图 在客户信息流程图中,系统用户对客户的信息进行查询,修改,更新。包括客户姓 名,联系方式等信息。流程图如图 3-3 所示: 8 图 3-3 客户信息相关操作流程图 在退房流程图中,系统用户对入住信息进行查询和核实,对入住天数及每天的房间 价格进行计算,得到最终客户需要结账支付的金额。流程图如图 3-4 所示: 图 3-4 退房信息相关操作流程图 3.3 数据库设计数据库设计 (1)表 admin 是系统使用者及管理员得用户名及密码信息表 admin 字段名称数据类型字段大小是否主键是否为空说明 account varchar20 否默认为空用户名 password varchar20 否默认为空密码 9 (2)表 user_info 记录了客户的有关信息 user_info 字段名称数据类型字段大小是否主键是否为空说明 Name varchar20 否默认为空客户姓名 Sex varchar10 否默认为空客户性别 Address varchar30 否默认为空客户地址 Tel varchar20 否默认为空客户电话 (3)表 order_master 为记录实际客户订单详情表 order_master 字段名称数据类型字段大小是否主键是否为空说明 orderId varchar20 否默认为空订单 ID Name varchar20 否默认为空姓名 Num int 否默认为空房间号 alance int 否默认为空详情 (4)表 order_detail 为记录实际订单房间数目的信息 order_detail 字段名称数据类型字段大小是否主键是否为空说明 orderId varchar20 否默认为空订单号 RoomNum varchar20 否默认为空房间数 (5)表 Room 为系统中的客房信息表 room 字段名称数据类型字段大小是否主键是否为空说明 Zone varchar20 否默认为空区域 RoomNum varchar20 否默认为空房间号 Floor int 否默认为空楼层 Remark int 否默认为空是否入住 Price int 否默认为空价格 (6)表 message 为记录客户留言信息表 Message 字段名称数据类型字段大小是否主键是否为空说明 msgid int 否默认为空留言 ID username varchar20 否默认为空留言用户名 message varchar2000 否默认为空留言内容 date varchar30 否默认为空留言日期 10 3.3.1 数据库需求分析 数据库设计是本系统的关键内容,其设计过程完全按照数据库设计理论进行。 系统数据库设计需要用户表 admin(用户名、密码)来记录系统操作用户用来登录 管理系统的用户名及密码。 系统数据库设计需要客户表 user_info(客户姓名、客户性别、客户地址、客户电话) 对客户的基本信息进行记录。 系统数据库设计需要客房信息表 room(区域、房间号、楼层、是否入住、价格)来记录 客房的基本信息以及使用信息。 系统数据库设计需要订单详情表 order_master(订单 ID、姓名、房间号、订单详情)及 订单房间数目信息表 order_detail(订单 ID、预定房间数量)两个表来记录客户的房间预 定入住详细信息。 系统数据库设计需要留言信息表 message(留言 ID、留言用户名、留言内容、留言日期) 来记录客户的所有留言信息。 4 系统的完整型设计与开发系统的完整型设计与开发 4.1 系统加载前的准备系统加载前的准备 4.1.1 数据库的基本数据输入 与数据库进行连接, MySQL 数据用户名为“root” 密码为“root” private String Driver=“com.mysql.jdbc.Driver“; private String url=“jdbc:mysql:/localhost:3306/hotel“; private static Connection conn; private String user=“root“; private String password=“root“; private static Connectionfactory ref=new Connectionfactory(); private Connectionfactory() try Class.forName(Driver); try conn=DriverManager.getConnection(url,user,password); catch (SQLException e) e.printStackTrace(); 11 catch (ClassNotFoundException e) e.printStackTrace(); public static Connection getConnection() return conn; 创建表的 SQL 语句 create database hotel; use hotel; create table admin ( account varchar(20), password varchar(20) ); Create table user_info ( Name varchar(20), Sex varchar(10), Address varchar(30), Tel varchar(20) ); Create table order_master ( orderId varchar(20), Name varchar(20), Num int, alance int ); Create table order_detail ( orderId varchar(20), RoomNum varchar(20) ); create table room 12 ( Zone varchar(20), RoomNum varchar(20), Floor int, Remark int, Price int ); create table message ( msgid int, username varchar(20), message varchar(2000), date varchar(30) ); 4.1.3 录入相应数据 此处录入为开发测试数据。 insert into admin values(admin,admin); insert into admin values(wcl,123); insert into room values(A,A001,1,0,120); insert into room values(A,A002,1,0,120); insert into room values(A,A0010,2,0,120); insert into room values(B,B001,1,0,120); insert into room values(B,B002,1,0,120); insert into room values(B,B0010,2,0,120); 4.2 登陆模块的设计与实现登陆模块的设计与实现 一个系统的登陆界面由如一个门户,设计好它是一个好的基础,页面的美观及验证 用户名密码响应将直接影响到最终用户的使用。为此,登陆界面显得尤为重要。 13 功能介绍:本窗口主要是检查用户输入的用户名及密码是否正确,如果正确,则登 录。如果错误,提示密码不正确,并且重置该页面登陆。 操作方法:填写“用户名”与“密码”后,并且按照验证码图片输入相应验证码,进行 登陆。如管理员用户名或密码为空时,系统会自动弹出提示框提示用户输入用户名及密 码。该系统验证码字母大小写均可通过验证,如不清楚可点击验证码图片,重新更换另 一张验证码。 登录时从数据库中取出相应数据,如果相符则登陆成功,如果不符则提示没有登陆 权限 ,代码如下: String username=URLDecoder.decode(req.getParameter(“username“), “UTF-8“); String password=URLDecoder.decode(req.getParameter(“password“), “UTF-8“); String code=req.getParameter(“code“).toLowerCase(); PrintWriter out=resp.getWriter(); HttpSession session=req.getSession(); session.setAttribute(“username“,username); String code1=(String) session.getAttribute(“rand“).toLowerCase(); 14 Admin admin=new Admin(); admin.setUsername(username); admin.setPassword(password); Admindao dao=new Admindao(); String msg=“; if(!dao.isExit(admin) msg=“对不起!您没有登陆的权限!“; else if(!code.equals(code1) msg=“对不起!您输入的验证码错误!“; else msg=“true“; out.print(msg); out.flush(); out.close(); 如果登录者输入的用户名及密码是正确的,则直接进入“酒店管理系统”的主界面, 如下图: 15 4.3 客房管理模块的设计与实现客房管理模块的设计与实现 4.3.1 预定房间功能模块开发 进入系统后,客房管理项中的预定房间就可以进入预定房间的页面,如下图: 功能介绍: 该模块提供了个人预定房间以及团队预定房间两种预定方案,可方便个 人预定以及多人团队的房间快速预定。 操作方法: 可根据不同需求点击个人预定或团队预定。 个人预定如下图所示,默认预定房间数量为一间,客户需要填写姓名,性别,联系 方式及联系地址等个人信息方可完成个人房间预定入住。 16 个人预定成功后,系统会自动提示入住的房间号码及楼层,如下图所示: 团队预定如下图所示,可以根据人数填写需要预定的房间数量,并且输入预定人的 基本联系信息便可以完成预定入住。 个人预定与团队预定在后台使用了同样的代码处理方式,不同之处只是在预定房间 数量做了简单修改。代码如下: public void insert_User(User_info user) Connection conn=Connectionfactory.getConnection(); String sql=“insert into user_info values(?,?,?,?)“; try 17 PreparedStatement pr=conn.prepareStatement(sql); pr.setString(1, user.getName(); pr.setString(2, user.getSex(); pr.setString(3, user.getAddress(); pr.setString(4, user.getTel(); pr.execute(); catch (SQLException e) / TODO Auto-generated catch block e.printStackTrace(); 4.3.2 退房结账功能模块开发 退房结账功能模块完成了酒店管理系统最基本的结账功能,点击客房管理中的退房 结账便可进入该模块,如下图: 功能介绍: 该模块提供了退房结账的功能,系统会自动根据选择入住的房间类型, 显示出相应的需要支付的金额。并将该房间的状态修改为未出租状态。 操作方法: 只需要在用户名一栏中填写预定入住时填写的用户名,系统会自动查找 相应的入住信息,提示需要支付的金额。 该功能模块的代码如下: public ArrayList getMaster(String user) Connection conn=Connectionfactory.getConnection(); String sql=“select * from order_master where name=?“; ArrayList list=new ArrayList(); 18 try PreparedStatement pr=conn.prepareStatement(sql); pr.setString(1, user); ResultSet rs=pr.executeQuery(); while(rs.next() Order_master master=new Order_master(); master.setOrderID(rs.getString(1); master.setNum(rs.getInt(2); master.setBalance(rs.getInt(3); list.add(master); catch (SQLException e) / TODO Auto-generated catch block e.printStackTrace(); return list; 4.4 信息管理模块的设计与实现信息管理模块的设计与实现 4.4.1 客户信息模块功能模块开发 进入系统后点击信息管理中的客户信息管理便可以进入客户信息的查询功能模块, 在系统中只需要输入客户的姓名或者用户名,系统会自动查询并在前台显示客户的信息, 如下图所示: 功能介绍: 该模块提供了对客户的信息查询的基础功能,只需要客户的姓名或用户 19 名即可查询客户的所有信息。 操作方法: 只需要在客户姓名一栏中填入客户的姓名,系统会自动根据客户的姓名 查询所有客户信息,自己将检索出的结果显示在前台。 该功能模块的代码如下: public ArrayList getUser(String user) Connection conn=Connectionfactory.getConnection(); String sql=“select * from user_info where name=?“; ArrayList list=new ArrayList(); try PreparedStatement pr=conn.prepareStatement(sql); pr.setString(1, user); ResultSet rs=pr.executeQuery(); while(rs.next() User_info us=new User_info(); us.setName(rs.getString(1); us.setSex(rs.getString(2); us.setAddress(rs.getString(3); us.setTel(rs.getString(4); list.add(us); catch (SQLException e) / TODO Auto-generated catch block e.printStackTrace(); return list; 4.4.2 客房信息管理功能模块开发 进入系统后点击信息管理中的客房信息管理便可以进入客房信息的查询功能模块, 在系统中只需要输入客房的编号或者楼层,系统会自动查询并在前台显示客房的入住信 息,如下图所示: 20 功能介绍: 该模块提供了对客房信息的查询功能,系统用户只需要在门牌号即可查 询出相近似的房间的是否出租和租金等信息。 操作方法: 只需要在们牌号一栏中输入要查询的客房房间号信息或者楼层的编号, 系统将自动根据输入信息进行检索,查询出相应房间信息显示在前台。 该功能模块的代码如下: public ArrayList getList1(String roomnum) String str=roomnum+“%“; Connection conn=Connectionfactory.getConnection(); String sql=“select * from room where roomnum like ?“; try PreparedStatement pr=conn.prepareStatement(sql); pr.setString(1, str); list=new ArrayList(); ResultSet re=pr.executeQuery(); while(re.next() Room room=new Room(); room.setZone(re.getString(1); room.setRoomnum(re.getString(2); room.setFloor(re.getInt(3); room.setRemark(re.getInt(4); room.setPrice(re.getInt(5); list.add(room); catch (SQLException e) / TODO Auto-generated catch block 21 e.printStackTrace(); return list; 4.5 客户评价模块的设计与实现客户评价模块的设计与实现 进入系统后点击客户评价中评论意见便可进入留言评价功能模块,在系统中输入客 户自己的昵称或用户名即可进入评价页面,如下图所示: 功能介绍: 该模块提供了客户的留言信息反馈的功能,客户可以很方便的进行留言, 点击即可显示在系统中。 操作方法: 客户点击评论意见后,在昵称栏中输入相应的用户名或者客户昵称进入 留言页面,在页面下方的会话框中输入要留言的内容,点击留言的按钮即可完成留言操 作。 该功能模块的实现代码如下; public void insertMsg(Msg msg) Connection conn=Connectionfactory.getConnection(); String sql=“insert into message values(?,?,?,?)“; try PreparedStatement pr=conn.prepareStatement(sql); pr.setInt(1, generateMsgId(); pr.setString(2, msg.getUsername(); 22 pr.setString(3, msg.getMessage(); pr.setString(4, msg.getDate(); pr.execute(); catch (SQLException e) / TODO Auto-generated catch block e.printStackTrace(); public ArrayList show() int n=0; ArrayList list=new ArrayList(); Connection conn = Connectionfactory.getConnection(); String sql = “select

温馨提示

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

评论

0/150

提交评论