酒店客房预定管理系统设计本科毕业论文主(设计)

上传人:e****s 文档编号:194284029 上传时间:2023-03-13 格式:DOC 页数:44 大小:1.48MB
收藏 版权申诉 举报 下载
酒店客房预定管理系统设计本科毕业论文主(设计)_第1页
第1页 / 共44页
酒店客房预定管理系统设计本科毕业论文主(设计)_第2页
第2页 / 共44页
酒店客房预定管理系统设计本科毕业论文主(设计)_第3页
第3页 / 共44页
资源描述:

《酒店客房预定管理系统设计本科毕业论文主(设计)》由会员分享,可在线阅读,更多相关《酒店客房预定管理系统设计本科毕业论文主(设计)(44页珍藏版)》请在装配图网上搜索。

1、教学单位信息工程系 学生学号2101714124 本科毕业论文(设计)题目 酒店客房预定管理系统设计 2014年12月21日酒店客房预定管理系统设计摘要:伴随着我国旅游业的高速发展,各式各样的酒店层出不穷,想要在这些酒店当中脱颖而出,就必须实现现代化的管理。旅行、办公等都越来越离不开酒店。为了方便酒店的管理,能够使工作人员更高效的为顾客提供方便快捷的服务,为顾客的资金提供明细查询,实现高效到运转,就必须实现一个完善的系统。本系统主要介绍了酒店管理系统的设计与实现过程,其中主要采用技术是JavaEE的三大框架struts, hibernate,spring实现后台业务逻辑,struts可以处理前

2、台提交到后台的业务。利用spring的注解,可以实现只需要申明类,而不需要实例化,在一定程度上提高了系统运行的速率。当有前台业务提交到后台需要与数据可进行交互,可以利用Hibernate的运行机制实现数据的保存与修改。在前台部分用到类jquery 和json到技术,来实现无刷新提交业务。在编写代码时使用MyEclipse,数据到存储方面用到oracle。利用这些技术本系统主要实现了酒店地图的查看,顾客的信息注册,修改,散客预定房间和团队预定房间。在后台管理员可以帮助顾客预定房间,修改预定信息,退订房间,结账,查看顾客消费记录,以及注册用户,删除用户。在使用本系统时,既可以网页预定,也可以直接到

3、酒店或 预定,方便快捷,并且在运行系统时可以感受到功能都是智能实现的,在快节奏的生活中,可以更加高效的处理各类问题。使用起来更加方便快捷。关键字:酒店预定;ORACLE;JSP;JAVAHotel reservation management system designAbstract: With the rapid development of Chinas tourism industry, every kind of hotel emerge in an endless stream, to talent showing itself in the hotel, they must re

4、alize the modernization management. Travel, office and so on are increasingly cannot do without the hotel. In order to facilitate the management of the hotel staff, can make more efficient for customers to provide convenient and efficient service, providing detailed query for customer funds, to achi

5、eve efficient to run, you must implement a perfect system.This system mainly introduces the design and Realization of hotel management system, which mainly uses the technology is struts, three JavaEE framework hibernate, spring to achieve the background business logic, struts can deal with the front

6、 desk to submit to a background business. Using spring annotations, can be realized only need to affirm, without the need to instantiate, to a certain extent, improves the rate of system operation. When a business is submitted to the background and data can be interactive, can save and modify the da

7、ta using Hibernate mechanism. In the foreground part used in class jQuery and JSON technology, to realize the no refresh submit business. Use MyEclipse when you write code, use the Oracle data to memory. Using these techniques the system is mainly to achieve the hotel map view, customer information

8、registration, modification, individual and team reservation reservation. In the background administrator can help the customers to book a room, change room booking information, rescind, check, check customer records, as well as the registered users, delete users. Using this system, not only can webp

9、age predetermined, can also go directly to the hotel or telephone booking, convenient and quick, and can realize intelligent feel function in operating system, in the fast pace of life, various problems can be more efficient. To use more convenient.Key word: Hotel reservation; ORACLE;JSP;JAVA目 录1 引言

10、11122 本文相关技术32.1 SSH框架32.1.1 Struts42.1.2 Spring42.1.3 Hibernate52.2 JSP技术62.2.1 JSP简介62.3 HTML技术72.4 CSS样式82.5 oracle的简介103 需求分析113.1 功能需求113.2 数据库需求114 系统设计144.1 总体设计144.2 各功能模块的设计154.2.1 用户登陆模块的设计154.2.2 后台显示界面194.2.3 散客用户入住设计204.2.4 团队预定房间模块的设计244.2.5 客房管理模块的设计274.2.6 预定房间管理模块的设计294.2.7 顾客结账模块的设

11、计314.2.8 顾客管理模块334.3 数据库的设计354.3.1 建立数据库354.3.2 配置hibernate连接ORACAL数据库375 系统测试406 总结42参考文献43谢 辞441 引言 本课题的研究的背景伴随着我国旅游业的高速发展,各式各样的酒店层出不穷,想要在这些酒店当中脱颖而出,就必须实现现代化的管理。旅行、办公、甚至约会等都越来越离不开酒店。若是要想方便快捷的为顾客服务,酒店管理的重要性也就不言而喻了。而在当今这个信息化的时代,要想开发出高效的系统就必须结合现代高新科技,来实现更加有效的系统。一个好的酒店想要取得更高的效益,就必须以最小的成本,最快捷方便的服务给顾客提供

12、最好的居住环境,而一个好的酒店客房管理系统就能够更好的提高管理的现代化程序,加强管理的信息化手段,提高工作效率,增加单位效益。为了方便酒店的管理,能够使工作人员更高效的为顾客提供方便快捷的服务,提供客户订房,为顾客的资金提供明细查询。本课题的主要目的就是开发一个实用的完善的酒店管理系统随着中国加入WTO,中国与全球经济的联系日益紧密,无论是国内企业之间,还是跨国企业在国内投资建立的企业与国内企业之间,业务往来日益紧密,宾馆无疑成为安置相关人员的最佳方案之一,在国内,大型宾馆(三星级以上)都实现了信息化管理,通过一套符合自身需要的系统对其所属客房等资源进行自动化、动态化管理,甚至一些系统可以对经

13、常光顾他们的宾馆的客户资源进行有效的管理,但是在一些小型的宾馆(通常是二星以下),仍然实行着传统的手工管理,一部分二星级宾馆有自己的管理信息系统,有一些还没有。在西方发达国家以及我们的近邻日本、韩国等经济发达国家,宾馆的客房管理自从上世纪90年代就已经实现了信息化管理(一些小招待所除外)。在其自动化、信息化程度上,我国的整体水平仍有差距,主要表现在普及程度和系统的完善度存在不足。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。它已经深入到日常工作和生活的方方面面。各行各业的人们无须经过特别的训练就能够使用电脑完成许许

14、多多复杂的工作。然而,虽然现在世界上已经充满了多如牛毛的各种软件,但它们依然不能满足用户的各种特殊需要,人们还不得不开发适合自己特殊需求的软件。现代化酒店是城市的重要基础设施,酒店业的发展,直接支持着城市经济的繁荣、旅游业的兴旺和广大市民的生活需要,同时也是城市建设现代化的一个重要标志。全球都把现代化酒店管理作为现代企业管理的重要组成部分。随着当今世界经济和计算机的飞速发展以及网络的普及,酒店在内部实现用户通过 预约或亲自前往酒店预订客房,服务员人工填写客房预订表进行客房预订的传统模式已经十分落后,满足不了现代人的需要。对那些在外地的旅客来说,他们十分希望可以方便快捷的查看酒店的配套设施和环境

15、来决定预订酒店房间,以节约他们宝贵的时间,而且面对酒店业竞争的日益激烈,酒店业要发展就需要尽力扩大经营规模,适应当今网络时代的步伐。B/S结构的城市酒店入住信息管理系统实现了客人在线预订客房,后台管理员对数据库的完整管理。因为Internet基于TCP/IP协议,它可以跨越当前几乎所有的平台。在任何平台上只需要安装一个浏览器,可以简单地移植到任何平台上,就可以访问Web服务器,解决了用户预订操作繁琐,酒店管理信息量大,处理效率低,准确度差等问题。极大的方便了客人的预订和酒店的管理。2 本文相关技术2.1 SSH框架SSH 为 struts+spring+hibernate的一个集成框架,是目前

16、较流行的一种Web应用程序开源框架。集成SSH框架的系统从职责上分为四层:表示层、业务逻辑层、数据持久层和域模块层,以帮助开发人员在短期内搭建结构清晰、可复用性好、维护方便的Web应用程序。其中使用Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用Hibernate框架对持久层提供支持,Spring做管理,管理struts和hibernate。具体做法是:用面向对象的分析方法根据需求提出一些模型,将这些模型实现为基本的Java对象,然后编写基本的DAO(Data Access Objects)接口,并给出Hibernate的DAO实现,采用H

17、ibernate架构实现的DAO类来实现Java类与数据库之间的转换和访问,最后由Spring做管理,管理struts和hibernate。系统的基本业务流程是: 在表示层中,首先通过JSP页面实现交互界面,负责传送请求(Request)和接收响应(Response),然后Struts根据配置文件(struts-config.xml)将ActionServlet接收到的Request委派给相应的Action处理。在业务层中,管理服务组件的Spring IoC容器负责向Action提供业务模型(Model)组件和该组件的协作对象数据处理(DAO)组件完成业务逻辑,并提供事务处理、缓冲池等容器组件

18、以提升系统性能和保证数据的完整性。而在持久层中,则依赖于Hibernate的对象化映射和数据库交互,处理DAO组件请求的数据,并返回处理结果。我觉得在采用上述开发模型的时候,不仅实现了视图、控制器与模型的彻底分离还可以使代码的复用率更高,而且还实现了业务逻辑层与持久层的分离。这样无论前端如何变化,模型层只需很少的改动,并且数据库的变化也不会对前端有所影响,大大提高了系统的可复用性。而且由于不同层之间耦合度小,有利于团队成员并行工作,大大提高了开发效率。2.1.1 StrutsStruts是一个基于Sun J2EE平台的MVC框架,主要是采用Servlet和JSP技术来实现的。由于Struts能

19、充分满足应用开发的需求,简单易用,敏捷迅速,在过去的一年中颇受关注。Struts把Servlet、JSP、自定义标签和信息资源(message resources)整合到一个统一的框架中,开发人员利用其进行开发时不用再自己编码实现全套MVC模式,极大的节省了时间,所以说Struts是一个非常不错的应用框架。Struts跟Tomcat、Turbine等诸多Apache项目一样,是开源软件,这是它的一大优点。使开发者能更深入的了解其内部实现机制。除此之外,Struts的优点主要集中体现在两个方面:Taglib和页面导航。Taglib是Struts的标记库,灵活动用,能大大提高开发效率。另外,就目前

20、国内的JSP开发者而言,除了使用JSP自带的常用标记外,很少有开发自己的标记,或许Struts是一个很好的起点。关于页面导航,我认为那将是今后的一个发展方向,事实上,这样做,使系统的脉络更加清晰。通过一个配置文件,即可把握整个系统各部分之间的联系,这对于后期的维护有着。我认为在Java开发中,struts是处理业务里面运行得比较高效到一个框架,结合MVC框架,既能很很好到管理代码,又可大大的提高项目到移植性。2.1.2 SpringSpring提供了管理业务对象的一致方法并且鼓励了注入对接口编程而不是对类编程的良好习惯。Spring的架构基础是基于使用JavaBean属性的Inversion

21、of Control容器。然而,这仅仅是完整图景中的一部分:Spring在使用IoC容器作为构建完关注所有架构层的完整解决方案方面是独一无二的。 Spring提供了唯一的数据访问抽象,包括简单和有效率的JDBC框架,极大的改进了效率并且减少了可能的错误。Spring的数据访问架构还集成了Hibernate和其他O/R mapping解决方案。Spring还提供了唯一的事务管理抽象,它能够在各种底层事务管理技术,例如JTA或者JDBC事务提供一个一致的编程模型。Spring提供了一个用标准Java语言编写的AOP框架,它给POJOs提供了声明式的事务管理和其他企业事务-如果你需要-还能实现你自己

22、的aspects。这个框架足够强大,使得应用程序能够抛开EJB的复杂性,同时享受着和传统EJB相关的关键服务。Spring还提供了可以和IoC容器集成的强大而灵活的MVC Web框架。它是一个开源的项目,而且目前非常活跃;它基于IoC(Inversion of Control,反向控制)和AOP的构架多层j2ee系统的框架,但它不强迫你必须在每一层 中必须使用Spring,因为它模块化的很好,允许你根据自己的需要选择使用它的某一个模块;它实现了很优雅的MVC,对不同的数据访问技术提供了统一的 接口,采用IoC使得可以很容易的实现bean的装配,提供了简洁的AOP并据此实现Transcation

23、 Managment等等,通过把对接口编程而不是对类编程的代价几乎减少到没有,Spring能够促进养成好的编程习惯。 Spring到注解在很大程度上解决类系统运行到效率问题,因为在实例化对象的时候很耗内存资源,但通过注解来实现后,在框架内部通过get,set就可以得到变量,解决类速率问题。2.1.3 HibernateHibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序实用,也可以在Servlet/JSP的Web

24、应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。大多数开发机构经常采取创建各自独立的数据持久层。一旦底层的数据结构发生改变,那么修改应用的其余部分使之适应这种改变的代价将是十分巨大的。Hibernate适时的填补了这一空白,它为Java应用提供了一个易用的、高效率的对象关系映射框架。hibernate是个轻量级的持久性框架,功能却非常丰富。Hibernate是JDBC的轻量级的对象封装,它是一个独立的对象持久层框架,和App Server,和EJB没有什么必然的联系。Hibernate可以用在任何JDBC可以使用的场合,例如Ja

25、va应用程序的数据库访问代码,DAO接口的实现类,甚至可以是BMP里面的访问数据库的代码。从这个意义上来说,Hibernate和EB不是一个范畴的东西,也不存在非此即彼的关系。Hibernate是一个和JDBC密切关联的框架,所以Hibernate的兼容性和JDBC驱动,和数据库都有一定的关系,但是和使用它的Java程序,和App Server没有任何关系,也不存在兼容性问题。Hibernate不能用来直接和Entity Bean作对比,只有放在整个J2EE项目的框架中才能比较。并且即使是放在软件整体框架中来看,Hibernate也是作为JDBC的替代者出现的,而不是Entity Bean的替

26、代者出现的,让我再列一次我已经列n次的框架结构:2.2 JSP技术2.2.1 JSP简介JSP是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态技术标准。在传统的网页HTML文件(*.htm,*.html)中加入Java程序片段(Scriptlet)和JSP标签,就构成了JSP网页Java程序片段可以操纵数据库、重新定向网页以及发送E-mail等,实现建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,这样大大降低了对客户浏览器的要求,即使客户浏览器端不支持Java,也可以访问JSP网页。JSP全名为java server pag

27、e,其根本是一个简化的Servlet设计,他实现了Html语法中的Java扩张(以 形式)。JSP与Servlet一样,是在服务器端执行的,通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户端。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻

28、辑。JSP将网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。 JSP(JavaServer Pages)是一种动态页面技术,它的主要目的是将表示逻辑从Servlet中分离出来。JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。Java Servlet是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因

29、特网的所有特点。自JSP推出后,众多大公司都支持JSP技术的服务器,如IBM、Oracle、Bea公司等,所以JSP迅速成为商业应用的服务器端语言。2.3 HTML技术HTML(Hyper Text Markup Language 超文本标记语言)是一种用来制作超文本文档的简单标记语言。与常见的字处理文件不同,Web页以超文本标识语言编排格式。HTML文件是带有特定HTML插入标记的用以编排文档属性和格式的标准文本文件。它能独立于各种操作系统平台(如UNIX,WINDOWS等)。自1990年以来HTML就一直被用作World Wide Web上的信息表示语言,用于描述Homepage的格式设计

30、和它与WWW上其它Homepage的连结信息。HTML文档(即Homepage的源文件)是一个放置了标记的ASCII文本文件,通常它带有. html或. htm的文件扩展名。生成一个HTML文档主要有以下三种途径: 手工直接编写(例如用你所喜爱的ASCII文本编辑器或其它HTML的编辑工具)。 通过某些格式转换工具将现有的其它格式文档(如WORD文档)转换成HTML文档。 (3)由Web服务器(或称 服务器)一方实时动态地生成。一般的HTML页面具有如下的结构: html , 这是HTML正文部分 /body可见在一个HTML网页文件中,一般必须有一对html标记作为文件的开头和结尾,在标记后

31、是头部标记,其后是实体标记。2.4 CSS样式CSS是英语Cascading Style Sheets(层叠样式表单)的缩写,它是一种用来表现HTML或XML等文件样式的计算机语言。CSS目前最新版本为CSS3,是能够真正做到网页表现与内容分离的一种样式设计语言。相对于传统HTML的表现而言,CSS能够对网页中的对象的位置排版进行像素级的精确控制,支持几乎所有的字体字号样式,拥有对网页对象和模型样式编辑的能力,并能够进行初步交互设计,是目前基于文本展示最优秀的表现设计语言。CSS能够根据不同使用者的理解能力,简化或者优化写法,针对各类人群,有较强的易读性。有三种方法可以在站点网页上使用样式表:

32、(1)外部样式:将网页链接到外部样3式表。(2)内页样式:在网页上创建嵌入的样式表。(3)行内样式:应用内嵌样式到各个网页元素。每一种方法均有其优缺点:当要在站点上所有或部分网页上一致地应用相同样式时,可使用外部样式表。在一个或多个外部样式表中定义样式,并将它们链接到所有网页,便能确保所有网页外观的一致性。如果人们决定更改样式,只需在外部样式表中修改一次,而该更改会反映到所有与该样式表相链接的网页上。通常外部样式表以 .css 做为文件扩展名,例如 Mystyles.css。然后在需要此样式的页面中将其链接进来,如:当人们只是要定义当前网页的样式,可使用嵌入的样式表。嵌入的样式表是一种级联样式

33、表,“嵌”在网页的 标记符内。嵌入的样式表中的样式只能在同一网页上使用。 如:使用内嵌样式以应用级联样式表属性到网页元素上。 如:CSS document如果网页链接到外部样式表,为网页所创建的内嵌的或嵌入式样式将扩充或覆盖外部样式表中的指定属性。要在网页上使用外部样式表的样式,可将该网页链接到样式表,方法是使用位于 “格式” 菜单上的 “样式表连接” 命令。可以链接一个或数个样式表到网页视图模式下的当前网页,或到在文件夹列表中的所选网页,或到站点上的全部网页。该“样式” 框列出标准 HTML 标记符,例如标题1,还有嵌入的样式表或链接到网页的外部样式表中所含的类或 ID 选择器。要应用样式到

34、网页元素,请选定该样式然后单击 “样式” 框中的样式或选择器。在 Microsoft FrontPage 2000 中,某些格式设置特性会作为内嵌样式自动应用。例如如果使用 “边框与阴影” 命令(在 “格式” 菜单上)在普通段落周围应用框,FrontPage 会写下格式设置信息,作为段落标记符的内嵌样式属性(例如 )。然而某些属性的应用需要使用 CSS,其他则需要使用 HTML 。如果人们只想使用 CSS 应用内嵌样式,可使用 “样式” 按钮(位于网页元素的 “属性” 对话框里)应用类或 ID 选择器或嵌入式样式。2.5 oracle的简介ORACLE是共享SQL和多线索服务器体系结构。这减少

35、了ORACLE的资源占用,并增强了ORACLE的能力,使之在低档软硬件平台上用较少的资源就可以支持更多的用户,而在高档平台上可以支持成百上千个用户。提供了基于角色(ROLE)分工的安全保密管理。在数据库管理功能、完整性检查、安全性、一致性方面都有良好的表现。支持大量多媒体数据,如二进制图形、声音、动画以及多维数据结构等。提供了与第三代高级语言的接口软件PRO*系列,能在C,C+等主语言中嵌入SQL语句及过程化(PL/SQL)语句,对数据库中的数据进行操纵。加上它有许多优秀的前台开发工具如POWERBUILD、SQL*FORMS、VISIABASIC等,可以快速开发生成基于客户端PC平台的应用程

36、序,并具有良好的移植性。5、提供了新的分布式数据库能力。可通过网络较方便地读写远端数据库里的数据,并有对称复制的技术。3 需求分析3.1 功能需求在本系统中,主要分为前台后台。前台主要实现的是游客的登录和注册,修改自己的基本信息。可以查看房间主要信息,预定房间,查看酒店具体位置,以及在线充值。后台需要管理员权限才能登录,在登录的时候就可以判断是否是管理员,不是管理员登录后返回到前台,是管理员直接进入后台,后台可以实现顾客信息的修改,顾客权限的修改,VIP折扣的修改,客房基本信息的修改,增加房间,删除房间,顾客预订房间基本信息的录入,散客预订房间,团队预订房间,预订的房间信息变更,顾客结账。该系

37、统的功能结构图如图1所示。图1 系统功能结构图3.2 数据库需求数据库设计要合理规范,这样才能保证系统的高效运行。分离各实体对应的表要保证每张表都要满足三大范式,一个实体对应一个表,搞清楚该实体有哪些属性,对应有些什么字段,各个字段对应的数据类型,以及各实体之间有何种联系。表对应的关系,表和表之间的依耐性,以及上下关联。分析得出,用户实体需要有用户id方便区别用户的唯一性,登录账号密码,方便用户网上预订,身份证和 号码能够识别用户的唯一性,预留金额可以防止一些意外的事情发生,用户折扣率则是用户在酒店消费了一定的金额后给予的VIP,结账的时候可以出示VIP卡打折,属性图如图2所示。图2用户实体属

38、性图通过需求得出客房应有房间id,房间名称,房间类型,房间价格,房间室内图片,特价房标志,开始入住日期,结束日期,房间现在的状态,具体摘要等属性。其实体属性图如图3所示。图3客房实体属性图4 系统设计4.1 总体设计本系统主要实现的是客户的酒店预定系统,既可以在网上在线提前预定也可以通过 即时预定。 预定是可以实现无需账号,接通前台接待的 ,然后前台接待的人员通过管理员帐号挑选顾客所需要的房间,录入基本信息就可以入住了。网络预定则通过网站,在网上查看房间基本信息如果没有帐号也可以直接预定,在每个房间的预定页面有基本信息的录入,添加相应的基本信息之后就可以入住酒店,当然如果没有帐号,可以在线申请

39、一个属于自己的帐号,如果想好录入有误,也可以直接进行修改,每一笔消费都有记录,消费达到一定的金额会有积分积累,可以实现折扣。也可以在线先申请,成为VIP后在不同的积分段有不同的折扣享受。网络预定房间还可以查看当前位置,利用地图实现定位功能。还可以查看酒店的基本信息。在后台管理中,管理员可以实现房间的添加,删除,修改。当有散客需要入住房间时,不需要帐号,录入基本信息就可以实现入住。如果有帐号直接录入帐号就可以入住酒店了。当有团队来到酒店需要入住房间时,可以实现一个帐号预定多个房间,当然顾客有需要修改预定信息时候也可以实现修改。当有帐号预定房间之后需要结账,可以到前台查询相应的信息,然后列出需要结

40、账的顾客信息,系统首先会先到数据库中查询顾客的权限,如果是VIP 则可以享受相应的折扣,本系统也会自动帮助结算,若平时房间需要修改状态在状态栏中修改之后,系统会变更当前状态,变成不可预定。系统修改则是可以实现修改前台页面的基本信息,变更会员的折扣率。4.2 各功能模块的设计4.2.1 用户登陆模块的设计前台页面的设计主要方便顾客网上预定,可以查看你酒店的基本位子,能实现在线查看酒店的地理位置,帐号的注册,顾客的基本信息的修改,酒店的预定,酒店的退订。图5顾客浏览界面登录模块流程图,如图6所示。图6 登陆流程登录界面如图7所示。图7管理员登陆界面主要代码如下:/验证登录public String

41、 login()String str=(String)ServletActionContext.getRequest().getSession().getAttribute(str);String code=ServletActionContext.getRequest().getParameter(code);if(str= |code= | !str.equals(code) )super.addFieldError(errcode, 验证码错误!);if(super.hasFieldErrors()return login;if(user.getUserName() = null | u

42、ser.getUserName().equals()super.addFieldError(errname, 帐号不能为空!);if(user.getPassword() = null | user.getPassword().equals()super.addFieldError(errpass, 密码不能为空!);if(super.hasFieldErrors()return login;/查询数据库返回值userInfo = userDao.userLogin(user.getUserName();if(userInfo.getUserName() = null)super.addFie

43、ldError(error, 账户不存在);elseif(!userInfo.getPassword().equals(user.getPassword()super.addFieldError(error, 密码错误);else/设置sessionServletActionContext.getRequest().getSession().setAttribute(user, userInfo);if(userInfo.getStatus() = 2)return admin;elsereturn jump;if(super.hasFieldErrors()return login;用户的注

44、册模块包括注册用户的账号、密码、身份证和联系 等信息。如图8所示。图8用户注册界面主要实现的代码:public String register()if(user.getUserName() = null | user.getUserName().equals()super.addFieldError(errname, 帐号不能为空!);if(user.getPassword() = null | user.getPassword().equals()super.addFieldError(errpass, 密码不能为空!);if(user.getIdCard() = null | user.g

45、etIdCard().equals()super.addFieldError(errcard, 身份证不能为空);if(user.getUserPhone() = null | user.getUserPhone().equals()super.addFieldError(errpho, 号码不能为空);if(super.hasFieldErrors()return register;else/设置用户权限user.setStatus(0);user.setAnate(1.0);userDao.register(user);ServletActionContext.getRequest().s

46、etAttribute(user, user);return admin;4.2.2 后台显示界面管理员登录界面直接会显示相应的界面,包括散客入职、团体入住、客房管理、订房管理、顾客结账、系统维护等功能。管理员显示界面如图9所示。图9管理员显示界面实现的代码: 散客入住 团体入住 a href=Room!manaRoom.action页面的顶部是对象的超链接:具体代码 散客入住 团体入住 客房管理 订房管理 顾客结账 顾客管理 系统维护 退出系统 4.2.3 散客用户入住设计用户通过 预定房间,就会跳转到相应的界面,通过后台与数据库的交互,显示所有房间,实现房间基本信息的显示,快速导航,能够查

47、询指定条件下的用户信息,如图10所示。图10 房间信息显示界面查询房间的基本信息,包括房间名称、入住类型、房间价格、房间类型、入住信息、房间摘要等内容。其界面如图11所示。图11 房间详细信息显示房间详细查询显示流程图如图12所示。图12 详细信息的显示该模块主要代码有:RoomInfo room = roomInfo.getRoom(roomId);ServletActionContext.getResponse().getWriter().write(jsonStr);数据库部分的查询:Session session = HibernateSessionFactory.getSession

48、();String hql = select * from room_info where room_id = +roomId+ order by room_name;SQLQuery query = (SQLQuery)session.createSQLQuery(hql);List obj = query.list();RoomInfo r = new RoomInfo();for(Object o:obj)r.setRoomId(Integer.parseInt(o0.toString();r.setRoomName(o1.toString();/存储房间类型List lst = Dic

49、Util.getDic(room, o2.toString();r.setRoomType(lst.get(0).getText();r.setRoomPrice(Integer.parseInt(o3.toString();if(o4 = null)r.setRoomPic(pic/room/prov.gif);elser.setRoomPic(o4.toString();r.setRoomSpecial(Integer.parseInt(o5.toString();if(o6 != null)r.setStarTime(Date)o6);if(o7 != null)r.setStopTim

50、e(Date)o7);r.setStatus(o8.toString();r.setContent(o9.toString();return r;在快速导航栏中可以通过点击事件查询房间类型,可以查看标准单间,标准双人间,普通单间,豪华间。快速导航模块界面如图13所示。图13 快速导航界面实现的相应代码:/得到可预定的房间public List getEngageRoom()List lst = new ArrayList();Session session = HibernateSessionFactory.getSession();String hql = select * from roo

51、m_info where status = 0 and star_time is null order by room_name;SQLQuery query = (SQLQuery)session.createSQLQuery(hql);List obj = query.list();for(Object o:obj)RoomInfo r = new RoomInfo();r.setRoomId(Integer.parseInt(o0.toString();r.setRoomName(o1.toString();r.setRoomType(o2.toString();r.setRoomPri

52、ce(Integer.parseInt(o3.toString();if(o4 = null)r.setRoomPic(pic/room/prov.gif);elser.setRoomPic(o4.toString();r.setRoomSpecial(Integer.parseInt(o5.toString();if(o6 != null)r.setStarTime(Date)o6);if(o7 != null)r.setStopTime(Date)o7);r.setStatus(o8.toString();r.setContent(o9.toString();lst.add(r);retu

53、rn lst;/显示已预定的房间public List getHasEngaged()List lst = new ArrayList();Session session = HibernateSessionFactory.getSession();String hql = select * from room_info where status = 0 and star_time is not null order by room_name;SQLQuery query = (SQLQuery)session.createSQLQuery(hql);List obj = query.list

54、();for(Object o:obj)RoomInfo r = new RoomInfo();r.setRoomId(Integer.parseInt(o0.toString();r.setRoomName(o1.toString();r.setRoomType(o2.toString();r.setRoomPrice(Integer.parseInt(o3.toString();if(o4 = null)r.setRoomPic(pic/room/prov.gif);elser.setRoomPic(o4.toString();r.setRoomSpecial(Integer.parseInt(o5.toString();if(o6 != null)r.setStarTime(Date)o6);if(o7 != null)r.setStopTime(Date)o7);r.setStatus(o8.toString();r.setContent(o9.toString();lst.add(r);return lst;客房管理模块功能包括房间名称、房间类型、房间价格、房间简要说明、预定顾客信息等。客房管理界面如图14所示。图14 客房管理界面4.2.4 团队预定房间模块的设计团队预定房价可以实现一个帐号多人预定

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!