基于J2SE的酒店管理系统毕业论文

上传人:痛*** 文档编号:205979883 上传时间:2023-05-01 格式:DOC 页数:55 大小:1.78MB
收藏 版权申诉 举报 下载
基于J2SE的酒店管理系统毕业论文_第1页
第1页 / 共55页
基于J2SE的酒店管理系统毕业论文_第2页
第2页 / 共55页
基于J2SE的酒店管理系统毕业论文_第3页
第3页 / 共55页
资源描述:

《基于J2SE的酒店管理系统毕业论文》由会员分享,可在线阅读,更多相关《基于J2SE的酒店管理系统毕业论文(55页珍藏版)》请在装配图网上搜索。

1、科 技 大 学毕 业 设 计( 论 文 )题 目基于J2SE的酒店管理系统作者 学院 专业 学号 指导教师 科 技 大 学毕业设计(论文)任务书1 设计(论文)题目及专题: 基于J2SE的酒店管理系统 2 学生设计(论文)时间:自 年 月 日开始至 年 月 日止3 设计(论文)所用资源和参考资料:4 设计(论文)应完成的主要内容:5 提交设计(论文)形式(设计说明与图纸或论文等)及要求:6 发题时间: 年 月 日指导教师: (签名)学 生: (签名)X X 科 技 大 学毕业设计(论文)指导人评语主要对学生毕业设计(论文)的工作态度,研究内容与方法,工作量,文献应用,创新性,实用性,科学性,文

2、本(图纸)规范程度,存在的不足等进行综合评价指导人: (签名)年 月 日 指导人评定成绩: X X 科 技 大 学毕业设计(论文)评阅人评语主要对学生毕业设计(论文)的文本格式、图纸规范程度,工作量,研究内容与方法,实用性与科学性,结论和存在的不足等进行综合评价评阅人: (签名)年 月 日 评阅人评定成绩: X X 科 技 大 学毕业设计(论文)答辩记录日期: 学生: 学号: 班级: 题目: 提交毕业设计(论文)答辩委员会下列材料:1 设计(论文)说明书共页2 设计(论文)图 纸共页3 指导人、评阅人评语共页毕业设计(论文)答辩委员会评语:主要对学生毕业设计(论文)的研究思路,设计(论文)质量

3、,文本图纸规范程度和对设计(论文)的介绍,回答问题情况等进行综合评价答辩委员会主任: (签名)委员: (签名)(签名)(签名)(签名) 答辩成绩: 总评成绩: 摘 要近年来,随着人民的生活水平的不断提高,餐饮业的消费持续增长,竞争愈来愈激烈。然而,传统餐饮企业的日常运作还是靠人工管理,由人工完成记录,这样做不仅耗费人力资源而且容易导致记录丢失或重复等错误,造成管理水平低下。这就迫切需要标准的、高效率的计算机管理方式引导其发展,通过计算机管理企业的日常运作,给管理者以决策参考的模型,来不断完善管理水平,提高工作效率。 本系统根据小型酒店管理的现状及未来的发展方向,结合有关小型酒店管理当中的管理学

4、实践,设计了小型酒店管理系统。该系统应充分利用信息技术提高小型酒店客房的管理水平、服务水平。经过分析,本系统运用了Oracle为后台数据库,以Java为前端开发工具,系统实现了住宿管理,餐饮管理,顾客服务,员工管理,系统设置等功能。关键词:酒店管理;Oracle;JavaABSTRACT In recent years, the development of people living level urges the development of catering industry. However, the traditional food service industry still re

5、lies on the artificial physical labor which not only cost a lot of manual labor but also made mistakes usually. In this situation, the high speed computer was warmly needed. As a mainly part of the computer , help manager to reduce error with a high efficient, it has an extremely superiority.In this

6、 system, we designs the small hotel management system which accords to the present situation of the small hotel service management and the way it develops in the future and small hotel management study practice. This system may make full use of information technology to increase the management level

7、, service level of the hotel. This system use the Oracle as the basic database, use the Java as the main programming language and all the operation on the MyEclipse development tool. In this system, we design it as accommodation management, catering management, customary service, staff management, s

8、ystem settings, etc.Keywords: hotel management; Oracle; Java湖南科技大学本科生毕业设计(论文)目 录第一章 引言- 1 -1.1 项目背景- 1 -1.2 编写目的- 1 -1.3 论文的主要内容- 2 -第二章 系统理论与技术- 3 -2.1 Java- 3 -2.1.1 Java简介- 3 -2.1.2 Java SE- 3 -2.1.3 Java与面向对象程序设计- 3 -2.1.4 Java的优势与特点- 4 -2.2 Oracle数据库- 5 -2.2.1 Oracle数据库简介- 5 -2.2.2 Oracle数据库的优点

9、- 5 -2.3 C/S结构简介- 5 -2.4 MyEclipse简介- 6 -第三章 系统分析与设计- 7 -3.1系统可行性分析- 7 -3.1.1技术上可行性- 7 -3.1.2操作上可行性- 7 -3.1.3 经济上可行性- 7 -3.2系统功能分析- 8 -3.2.1 住宿管理模块- 8 -3.2.2 餐饮管理模块- 8 -3.2.3 顾客服务模块- 8 -3.2.4 员工管理模块- 8 -3.2.5 系统设置模块- 8 -3.2.6 其他模块- 9 -3.3 系统E-R图- 9 -3.4 数据库分析- 9 -第四章 系统实现- 11 -4.1 搭建开发环境- 11 -4.1.1

10、安装JDK并配置Java环境变量- 11 -4.1.2 安装MyEclipse- 11 -4.1.3 安装Oracle- 11 -4.2 数据库实现- 11 -4.2.1数据库表结构- 11 -4.2.2在Java中使用Oracle数据库- 15 -4.3 系统登录界面- 16 -4.4 住宿管理模块的实现- 18 -4.4.1 查询空闲房间- 19 -4.4.2 添加房间- 19 -4.4.3 查看房间占用情况- 21 -4.5 餐饮管理模块的实现- 22 -4.5.1 菜单信息查询- 22 -4.5.2 菜单信息修改- 23 -4.5.3 菜单信息删除- 25 -4.5.4 菜单信息添加-

11、 26 -4.6 顾客服务模块的实现- 28 -4.6.1 开房预定- 28 -4.6.2 换房续住- 29 -4.6.3 顾客订餐- 30 -4.6.4 顾客结账- 30 -4.6.5 顾客信息管理- 31 -4.7 员工管理模块的实现- 31 -4.7.1 添加员工信息- 32 -4.7.2查询员工信息- 34 -4.7.3 修改员工信息- 36 -4.7.4 删除员工信息- 37 -4.8 系统设置模块的实现- 39 -4.8.1 房间维修管理- 39 -4.8.2 部门管理- 39 -4.8.3 管理员管理- 40 -4.9 其他模块的实现- 40 -第五章 结论- 43 -参 考 文

12、 献44致 谢4546第一章 引言1.1 项目背景现代化的酒店系统庞大、服务项目众多、信息量大,要想提高劳动生产、降低成本、提高服务质量和管理水平,从而达到促进经济效益的目的,必须借助计算机来实现现代化的信息管理。为此专门设计了酒店管理系统。好的酒店管理系统操作简单方便,灵活性好,系统安全性高,运行稳定。提供快捷方便的服务,给宾客感受一种顾客至上的享受。提高管理水平,简化各种复杂操作,在最短的时间内完成酒店业务规范操作,这样才能让旅客舒适难忘。现代化的酒店是集客房、商务文化及其他各种服务与设施为一体化的消费场所,酒店宾馆系统庞大,服务项目众多,信息量大,要想提高劳动生产,降低成本,提高服务质量

13、和管理水平,促进经济效益,必须借助计算机来实现现代化的管理,然而占着绝大多数的中小型酒店、宾馆由于资金、人员等多方面原因不易使用酒店管理类软件,全凭原始的手工记录管理,效率低、易出错;结合酒店前台管理的需要进行扩展性而开发的一套酒店管理系统。从而专门设计了本酒店管理系统,本系统是一套适用于中小型星级宾馆使用的优秀系统。1.2 编写目的在旅游业发展迅速的今天,宾馆、酒店业的特色经营和个性化管理日趋明显,管理日趋信息化、网络化,再加上国际、国内名优企业的扩展力度的加大,宾馆、酒店业集团化的步伐加快,预示着传统的宾馆、酒店正逐步步向信息化管理这也是宾馆、酒店业经营者们的共识。酒店信息管理系统以信息量

14、大、数据准确、速度快、管理全面等特点,获得了广大宾馆、酒店业管理者的一致认同,同时满足了对客户的高质量的服务。另外酒店管理系统以其清晰准确的账单、数据表格,使客人感到高档次的享受。对于酒店的员工来说严格的数据检查可避免手工操作的疏忽而造成的错误,减轻职工的工作压力,从而提高工作效率。对于酒店的管理者来说:完备的报表功能和查询功能使管理者可及时了解饭店各部门的营业情况。为管理者提供准时可靠的信息,对管理做出酒店管理决策提供依据。酒店管理系统大大的提高了宾馆、酒店的工作效率,为宾馆、酒店带来了更大的利润。随着时代的发展,国内越来越多的酒店开始使用酒店管理系统。尤其是小型酒店的服务水平不同,各自的服

15、务方式不同。所以对于国内大多的小型的宾馆、酒店来说并不适合使用市场上较为成熟的商品酒店管理系统,所以就需要定制自己的酒店管理系统来提高酒店的管理效率和服务水平。本酒店管理系统利用Java语言来编写程序,并且使用Oracle作为数据库,采用C/S模式,认为本系统是适应现今中小型酒店工作需求的酒店管理系统,具有一定的开发价值和利用价值。1.3 论文的主要内容随着人民生活水平的不断提高,酒店等消费行业得到了迅猛的发展。现在的酒店行业正向着规模化,集团化方向发展,传统的经营管理模式已经不能适应这种发展势趋。如何利用Java语言针对中小型酒店的实际需求,设计并实现具有实用价值的酒店管理系统,就成为本论文

16、的研究内容。本论文的主要内容安排如下:第一章,引言。主要介绍本课题的背景和意义。第二章,系统理论与技术。涉及到开发用的技术与理论概念。第三章,系统分析与设计。需求分析与技术分析。第四章,系统实现。这章是全文的核心部分,包括开发运行环境构建,数据库实现,系统功能实现等。第五章,结论。首先,对本文聚焦的问题进行总结。接着,对未来的研究和工作进行展望。第二章 系统理论与技术本系统的开发是基于Java编程语言的,采用了C/S模式,使用的数据库为Oracle,基于MyEclipse 9.0平台。下面就采用的这些技术做一下简要介绍。2.1 Java2.1.1 Java简介Java是一种简单的、面向对象的、

17、分布式的、解释型的、结构中立的、可移植的、健壮安全的、性能优异和多线程的动态语言,是一种可以撰写跨平台应用软件的面向对象的程序设计语言。广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。Java,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台的总称。用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力:跨平台、动态的Web、Internet计算。从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器现在均支持Java applet。Java平台

18、由Java虚拟机(Java Virtual Machine)和Java 应用编程接口(Application Programming Interface,简称API)构成。Java 应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。现在Java平台已经嵌入了几乎所有的操作系统。这样Java程序可以只编译一次,就可以在各种系统中运行,十分方便,这也是其应用的优势。2.1.2 Java SEJava SE 是Java平台标准版的简称(Java Platform,Standard Edit

19、ion) (also known as Java 2 Platform) ,用于开发和部署桌面、服务器以及嵌入设备和实时环境中的Java应用程序。Java SE包括用于开发Java Web服务的类库,同时,Java SE为Java EE(Java Platform,Enterprise Edition)提供了基础。Android平台应用的开发语言使用的就是Java SE版本,需要注意的是,Android平台并非支持Java SE中提供的所有包。2.1.3 Java与面向对象程序设计面向对象程序设计(Object-Oriented Programming)是一种起源于六十年代,发展已经将近三十年

20、的程序设计思想。其自身理论实践已非常完善,并被多种面向对象程序设计语言(Object-Oriented Programming Language, OOPL)实现。面向对象程序设计中的概念主要包括:对象、类、数据抽象、继承、动态绑定、数据封装、多态性、消息传递。通过这些概念面向对象的思想得到了具体的体现。对象是对现实世界实体的模拟,由现实实体过程活着信息性来定义。一个对象可以被认为是一个把数据(属性)和程序(方法)封装在一起的实体里,在这个程序产生该对象的动作或者对它接受到的外界信号的反应。这些对象操作有时称为方法。作为一门高级语言,Java能够被广大程序员接受和拥护,很大原因是由于其纯面向对

21、象的特性。Java吸取了C+面向对象的概念,将数据封装于类中,利用类的优点,实现了程序的简洁性和便于维护性。类的封装性、继承性等有关对象的特性,使程序代码只需一次编译,然后通过上述特性反复利用。Java提供了众多的一般对象的类,通过继承即可使用父类的方法。相对于C+中的多继承,Java单继承的模式无疑减少了程序设计上的复杂性,为了实现类似多继承的功能,Java提供了实现接口这样一种方式,子类可以在继承一个父类的同时实现多个接口中的方法。Java提供的Object类及其子类的继承关系如同一棵倒立的树形,根类为Object类,Object类功能强大,经常会使用到它及其它派生的子类。2.1.4 Ja

22、va的优势与特点(1)平台无关性:平台无关性是指Java能运行于不同的平台。运行于虚拟机,实现不同平台的Java接口之间。使用Java编写的程序能够在全世界范围内实现共享。Java的数据类型与机器无关,Java虚拟机(Java Virtual Machine)是建立在硬件和操作系统之上,实现Java二进制代码的解释执行功能, 提供于不同平台的接口的。(2)安全性:Java的编程类似C+,学习过C+的读者将很快掌握Java的精髓。Java舍弃了C+的指针对存储器地址的直接操作,程序运行时,内存由操作系统分配,这样可以避免病毒通过指针侵入系统。Java对程序提供了安全管理器,防止程序的非法访问。(

23、3)面向对象:Java吸取了C+面向对象的概念,将数据封装于类中,利用类的优点,实现了程序的简洁性和便于维护性。类的封装性、继承性等有关对象的特性,使程序代码只需一次编译,然后通过上述特性反复利用。程序员只需把主要精力用在类和接口的设计和应用上。Java提供了众多的一般对象的类,通过继承即可使用父类的方法。在Java中,类的继承关系是单一的非多重的,一个子类只有一个父类,子类的父类又有一个父类。Java提供的Object类及其子类的继承关系如同一棵倒立的树形,根类为Object类,Object类功能强大,经常会使用到它及其它派生的子类。(4)分布式:Java建立在扩展TCP/IP网络平台上。库

24、函数提供了用HTTP和FTP协议传送和接受信息的方法。这使得程序员在使用网络上的文件和本机文件一样容易。(5)健壮性:Java致力于检查程序在编译和运行时的错误。类型检查帮助检查出许多开发早期出现的错误。Java自己操纵内存减少了内存出错的可能性。Java还实现了真数组,避免了覆盖数据的可能,这些功能特征大大提高了开发Java应用程序的周期。并且Java还提供了Null指针检测、数组边界检测、异常出口、Byte code校验等功能。2.2 Oracle数据库2.2.1 Oracle数据库简介Oracle是以高级结构化查询语言(SQL)为基础的大型关系数据库,通俗地讲它是硬方便逻辑管理的语言操纵

25、大量有规律数据的集合。是目前最流行的客户/服务器(CLIENT/SERVER)体系结构的数据库之一。它是由oracle公司开发的,面向internet计算的,支持关系对象型的,分布式的数据库产品。是一个高度集的互联网应用平台,为企业数据存储提交高性能的数据管理系统。2.2.2 Oracle数据库的优点(1)ORACLE7.X以来引入了共享SQL和多线索服务器体系结构。这减少了ORACLE的资源占用,并增强了ORACLE的能力,使之在低档软硬件平台上用较少的资源就可以支持更多的用户,而在高档平台上可以支持成百上千个用户。(2)提供了基于角色(ROLE)分工的安全保密管理。在数据库管理功能、完整性

26、检查、安全性、一致性方面都有良好的表现。(3)支持大量多媒体数据,如二进制图形、声音、动画以及多维数据结构等。(4)提供了与第三代高级语言的接口软件PRO*系列,能在C,C+等主语言中嵌入SQL语句及过程化(PL/SQL)语句,对数据库中的数据进行操纵。加上它有许多优秀的前台开发工具如POWER BUILD、SQL*FORMS、VISIA BASIC 等,可以快速开发生成基于客户端PC 平台的应用程序,并具有良好的移植性。 (5)提供了新的分布式数据库能力。可通过网络较方便地读写远端数据库里的数据,并有对称复制的技术。2.3 C/S结构简介此次的设计采用了C/S体系结构。Client和Serv

27、er通常是分别处在相距很远的两台计算机上,Client程序的任务是将用户的需求提交到Server程序,再将Server程序返回的结果显示给用户;Server程序的任务是接收客户程序提出的服务请求,进行相应的处理,再将结果返回给客户程序。C/S 结构的基本原则是将计算机应用任务分解成多个子任务,由多台计算机分工完成,即采用“功能分布”原则。 C/S模式具有以下优点:(1)交互性强。在C/S模式中,客户端有一套完整的应用程序,在出错提示或者在线帮助等方面都有很强大的功能,并且可以在程序之间进行自由切换。(2) 采用C/S模式大大降低了网络的通信量。 此外,基于C/S模式开发的系统提供的信息内容和形

28、式比较单一。2.4 MyEclipse简介MyEclipse企业级工作平台(MyEclipse Enterprise Workbench,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它包括了完备的编码、调试、测试和发布功能。第三章 系统分析与设计3.1系统可行性分析可行性分析的目的是为了对问题进行研究,以最小的代价尽可能短在时间内确定问题是否能够解决。因此需要分析几种主要的可能的利弊,从而判断原定的系统规模和目标是否可以现实,系统完成后所能带来的经济效益是否能够大到值得投资开发这个系统的程度。在此

29、研究本系统时可行性分析主要包括经济上的可行性,技术上的可行性和操作上的可行性,下面将分别介绍三种技术上的可行性:3.1.1技术上可行性酒店管理系统是采用Java语言编写的,具有Java的“一次编写,到处运行”的优点,所以此系统在不同的操作系统上都可以运行,具有很强的移植性、健全性和安全性。并且酒店管理系统要求要求应具备功能完备、易于使用、易于维护等特点,而对于后者则要求能建立数据一致性和完整性强、数据安全性好的库。基于以上的要求,本系统采用MyEclipse9.0作为开发工具,使得代码编写的过程大大的简化。而数据库则是采用目前较为流行的Oracle,Java对Oracle具有很好的支持。因此本

30、系统在技术上是可行的。3.1.2操作上可行性本酒店管理系统具备界面简洁大方,使用方便,易于维护,操作简单容易被用户所接受,用户只需熟练操作计算机,和对此系统使用做简单的了解操作即会使用,而且使用此系统可以大大减少管理人员的负担、提高工作效率。因此从使用操作方面看,此系统的开发是可行的。3.1.3 经济上可行性本酒店管理系统运行的硬件环境只需一台廉价的电脑既可,软件环境则是安装windows XP系统,MyEclipse9.0,Oracle既可。对于一般的中小型酒店来说都是很小的成本支出。因此本系统在经济上是可行的。综上所述,此系统在技术方面、操作方面和经济方面都可行,方便简单,因此开发本系统是

31、完全可行通的。3.2系统功能分析图3.1 系统功能分析图为了满足客户的需求,实现酒店管理的基本流程,本系统设计主要功能包括住宿管理,餐饮管理,顾客服务,员工管理,系统设置等模块,以下为各模块的具体功能要求。1 住宿管理模块在此模块中,能够显示各个类型的空闲房间状况,能够根据自定义条件查询空闲房间,能够增加房间信息,并且能够查看指定房间的占用状态,从而预定房间。2 餐饮管理模块在此模块中,能够显示所有菜单并实现分页效果,能够根据菜单号或菜单名称对菜单进行模糊查找,能够修改或删除指定行的菜单信息,能够添加菜单信息。3 顾客服务模块在此模块中,能够根据房间类型查询对应的空闲房间,可对空闲房间进行开房

32、或预定;能够实现换房和续住功能;可根据身份证号为顾客进行点餐服务;能够根据身份证号查询住宿和点餐的消费记录,进行结账,并能够生成账单供顾客打印报销;能够对顾客的信息进行增删改查等操作。4 员工管理模块在此模块中,能够根据编号、姓名或职务查询员工信息,或查询所有员工信息,能够对员工信息进行修改、删除和添加。5 系统设置模块在此模块中,需要先判断当前登录的管理员是否为系统管理员,若是,则可以对房间的价格和是否为空闲状态做修改,能够增加、修改和删除部门信息,能够更改所有管理员的密码和权限,能够新增和删除其他管理员。若不是系统管理员,则在此模块中没有权限进行任何操作。3.2.6 其他模块登录模块的实现

33、,登录后可更改当前用户的密码,可回到登录页面更改登录身份,系统安全退出,菜单栏上的帮助栏的实现等。3.3 系统E-R图图3.2 系统整体E-R图3.4 数据库分析为了更好的管理、查阅和操作住宿、餐饮、顾客、员工等信息,采用数据库来保存和管理其相关信息,现在对系统的数据库做出分析。经过分析,数据库中应该包含如下表结构:管理员表:保存管理员信息。房间表:保存房间号,房间名,房间类型,价格等信息。房间状态表:保存房间的状态信息。员工表:保存员工的相关信息。工作类型表:保存员工的工作类型信息。房间账单表:保存房间消费账单信息。顾客表:保存顾客的相关信息。用餐账单表:保存用餐消费账单信息。房间占用信息表

34、:保存房间被占用的相关信息。菜单表:保存菜名,价格等菜单信息。第四章 系统实现4.1 搭建开发环境开发需要的软件:1.操作系统:Windows 或 Linux系统。2.开发环境:MyEclipse9.0。3.开发工具包:JDK1.6。4.数据库:Oracle10g。4.1.1 安装JDK并配置Java环境变量(1) 登陆 ,下载最新版JDK。这里下载的是jdk 1.6版本。(2) 安装JDK 1.6。(3) 安装JDK以后,需要配置一下计算机环境变量,点击我的电脑-属性-高级-环境变量-系统变量中添加以下环境变量(假定JDK安装在C:JDK1.6.0):JAVA_HOME=C:JDK1.6.0

35、classpath=.;%JAVA_HOME%libdt.jar;%JAVA_HOME%libtools.jar;(.;一定不能少,因为它代表当前路径)path=%JAVA_HOME%bin4.1.2 安装MyEclipse下载MyEclipse9.0。安装MyEclipse9.0。4.1.3 安装Oracle下载并安装Oracle10g。4.2 数据库实现根据上章中对数据库的需求分析,以及分析后得出的结果,设计出如下数据库表结构。并介绍Java中对数据库的一些主要操作。4.2.1数据库表结构(1)管理员表:管理员表主要是关于管理员的一些基本信息,主要用来对管理员信息的修改等,主要信息有:管理

36、员编号,管理员等级,用户名,密码等。如表4.1所示。表4.1 管理员表(T_admin)字段名字段说明字段类型字段约束备注A_id管理员编号Number主键,非空非空A_grade管理员等级Integer非空A_username用户名Varchar2(50)非空非空A_password密码Varchar2(50)非空非空(2)房间表:房间表主要是关于房间的基本信息,主要用来对房间信息的管理,查看房间情况等,主要信息有:房间号,房间编号,房间名,备注,类型名,价格,房间状态号等,如表4.2所示。表4.2 房间表(T_room)字段名字段说明数据类型字段约束备注R_ID房间号number主键、非空

37、非空R_no房间编号Varchar2(50)非空非空R_name房间名Varchar2(50)非空非空R_statement备注Varchar2(255)R_name类型名Varchar2(50)值只能是“单人间,双人间,商务间,豪华套房,总统套房”中的任意一个, 非空R_price价格Number(8,2)非空非空R_s_id房间状态号Number外键,非空非空(3)房间状态表:房间状态表主要是为了区别房间的不同状态,如空闲、占用、维修等,主要信息有:状态号,状态名称等。如表4.3所示。表4.3 房间状态表(T_roomstate)字段名字段说明数据类型字段约束备注S_id状态号Number

38、主键、非空非空S_Statename状态名Varchar2(50)值只能是“预定,空闲,维修,入住”中的任意一个非空(4)员工表:员工表主要是保存员工的基本信息,方便对员工信息的操作,主要信息有:员工号,员工编号,员工名,员工的薪水,性别,电话,年龄,身份证号,地址,email,职务号等。如表4.4所示。表4.4 员工表(T_worker)字段名字段说明字段类型字段约束备注W_mid员工号Number非空非空W_no员工编号Varchar2(20)非空非空W_name员工名Varchar2(20)非空非空W_sal员工的薪水Varchar2(20)非空非空W_sex性别Varchar2(10)

39、值只能是“男,女”中的一个非空W_tel员工电话Number非空非空W_age员工年龄Number非空非空W_idc员工身份证号Varchar2(30)非空非空W_address员工地址Varchar2(50)非空W_email员工emailVarchar2(50)非空W_WT_id员工职务号Varchar2(20)外键,非空非空(5)工作类型表:工作类型表主要是为了方便对不同工种的分类,通过工作类型对员工进行查询等,主要信息有:工作类型号,工作编号,工作名等。如表4.5所示。表4.5 工作类型表(T_workertype)字段名字段说明字段类型字段约束备注WT_id工作类型号Number主键

40、,非空非空WT_no工作编号Varchar2(50)非空非空WT_name工作名Varchar2(50)值只能是“主管,前台,迎宾,清洁工,服务员,保安”中的一个非空(6)房间账单表: 房间账单表主要是记录顾客的住房消费信息,主要用于对住房消费情况的查询,主要信息有:账单号,账单流水号,顾客编号,房间编号,价格,时间,押金,开单时间,买单时间,完结状态等。如表4.6所示。表4.6 房间账单表(T_rbill)字段名字段说明字段类型字段约束备注BR_id账单号Number主键,非空非空BR_no账单流水号Varchar2(50)非空非空BR_C_No顾客编号Varchar2(50)外键,非空非空

41、BR_ R_no房间编号Varchar2(50)外键,非空非空BR_price价格Number(8,2)非空非空BR_InTime时间Integer非空天数BR_cash押金Number(8,2)默认0BR_otime开单时间Date非空非空BR_ctime买单时间Date非空非空BR_state完结状态Integer非空 0代表未完结,1代表完结(7)顾客表:顾客表主要用于记录顾客的基本信息,主要信息有:顾客号,顾客编号,顾客名,顾客电话,年龄,身份证号,地址,email,性别,是否VIP等。如表4.7所示。表4.7 顾客表(T_customer)字段名字段说明数据类型字段约束备注C_id顾

42、客号Number主键,非空非空C_No顾客编号Varchar(50)非空非空C_name顾客名Varchar(50)非空非空C_tel顾客电话Number非空非空C_age顾客年龄NumberC_idc顾客身份证号Varchar2(50)非空非空C_address顾客地址Varchar2(50)C_email顾客emailVarchar2(50)C_sex性别Varchar2(10)值只能是“男,女”中的一个非空C_Type是否VIP_非空、 vip 和 普通用户非空(8)用餐账单表:用餐账单表主要是记录顾客的用餐消费信息,主要用于对用餐消费情况的查询,主要信息有:菜单项编号,账单流水号,顾客

43、编号,菜单编号,数量,价格,开单时间,买单时间,完结状态等。如表4.8所示。表4.8 用餐账单表(T_mBill)字段名字段说明字段类型字段约束备注BM_id菜单项编号Number主键,非空非空BM_no账单流水号Varchar2(50)非空非空BR_C_No顾客编号Number外键,非空非空BM_ M_no菜单编号Number外键,非空非空BM_number数量Integer非空非空BM_price价格Number(8,2)非空非空BM_otime开单时间Date非空非空BM_ctime买单时间DateBM_state完结状态Integer非空 0代表未完结,1代表完结(9)房间占用信息表:

44、房间占用信息表主要用于记录房间被占用情况,主要信息有:房间占用号,入住时间,退房时间,房间编号,房间状态,预定入住状态等。如表4.9所示。表4.9 房间占用信息表(T_roomoccupy)字段名字段说明数据类型字段约束备注RO_id房间占用号Number主键、非空非空RO_stime入住时间Date非空非空RO_etime退房时间DateRO_r_no房间编号Varchar2(50)外键、非空非空RO_s_no房间状态Varchar2(50)外键、非空非空ro_state预定、入住状态Integer非空 0代表预定,1代表入住(10)菜单表:菜单表主要是关于菜的一些基本信息,主要用来对菜单的

45、基本操作,主要信息有:菜单项编号,菜编号,菜名,价格,简介等。如表4.10所示。表4.10 菜单表(T_menu)字段名字段说明字段类型字段约束备注M_id菜单项编号Number主键,非空非空M_no菜编号Varchar2(50)非空非空M_name菜名Varchar2(100)非空非空M_price价格Number(8,2)非空非空M_desc简介Vachar2(255)4.2.2在Java中使用Oracle数据库系统中运用JDBC实现对数据库的连接操作。通过如下方法的调用可获得与数据库的连接Connection。其中DRV,URL,USER和PWD保存在config.properties文

46、件中,方便修改,需作修改时,只需要修改配置文件,而不用修改代码。LoadConfig类用于读取config.properties文件中的数据。以下是config.properties中的数据:DRV=oracle.jdbc.driver.OracleDriverURL=jdbc:oracle:thin:localhost:1521:orclUSER=scottPWD=tigerpublic Connection getConn()Connection conn = null;try Class.forName(config.get(DRV);conn = DriverManager.getCo

47、nnection(config.get(URL),config.get(USER),config.get(PWD); catch (ClassNotFoundException e) e.printStackTrace(); catch (SQLException e) e.printStackTrace();return conn;如下是对数据库的数据进行增删改查操作的一个示例: Connection conn = db.getConn();/获得连接PreparedStatement pstmt = null;String sql = insert into t_admin values(

48、seq_T_admin_test.nextval,?,?,?);try pstmt = conn.prepareStatement(sql);/创建句柄pstmt.setInt(1, admin.getaGrade();pstmt.setString(2, admin.getaUserName();pstmt.setString(3, admin.getaPassword();int len = pstmt.executeUpdate();/查询时为executeQuery()方法,返回ResultSet结果集if(len 0)bool = true; catch (SQLException

49、e) e.printStackTrace(); finallydb.free(conn, pstmt);在对数据库中的数据进行操作的过程中,为了保证数据完整性,有时需要用到事务,如下是事务应用的一个示例: PreparedStatement pstmt = null;PreparedStatement pstmt2 = null;String sql = update t_room set r_s_id=1 where r_no in(select ro_r_no from t_roomoccupy where ro_etime=to_date(?,yyyy-mm-dd) and ro_sta

50、te=0);String sql2 = delete from t_roomoccupy where ro_etime0 & len2 0)mit();bool = true;elseconn.rollback();4.3 系统登录界面系统的登录界面如下图4.1 登录界面图所示:图4.1 登录界面图用户在登录本酒店管理系统的时候,只需要输入正确的用户名和密码即可登录,用户提交用户名和密码后,系统查询数据库管理员表中看是否存在此用户名和密码,如果输入的信息有误,系统会提示错误之处,重新登录即可。错误提示界面如下图4.2 错误提示图所示:图4.2 错误提示图成功登录后的显示界面如下图4.3 管理界

51、面图,点击即可进入相应模块管理界面:图4.3 管理界面图实现登录的主要方法如下:public void login()String user = userText.getText().trim();String pwd = new String(this.pwdText.getPassword();if(user=null|user.equals()|pwd.equals()JOptionPane.showMessageDialog(this, 用户名或者密码不能为空,错误,JOptionPane.ERROR_MESSAGE|JOptionPane.OK_OPTION);elseif(hote

52、lManager.login(user,pwd)admin = hotelManager.getAdmin(user);this.dispose();this.hotelManager.showMainFrame();elseJOptionPane.showMessageDialog(this, 用户名或者密码错误,错误,JOptionPane.ERROR_MESSAGE|JOptionPane.OK_OPTION);this.pwdText.setText();4.4 住宿管理模块的实现点击住宿管理后进入的模块主界面如图4.4 住宿管理界面图所示:图4.4 住宿管理界面图在此模块中,能够显示

53、各个类型的空闲房间状况,能够根据自定义条件查询空闲房间,能够增加房间信息,并且能够查看指定房间的占用状态,从而预定房间。4.4.1 查询空闲房间点击查询房间按钮,可进入查询页面,可以根据房间编号、房间类型或指定价格区间查询到相对应的空闲房间,如图4.5 查询空闲房间图所示。在相应栏中填入所要查询的信息,再点击查询按钮即可在下方显示查询出的结果。图4.5 查询空闲房间图4.4.2 添加房间添加房间功能用于对新增住房的管理,其中包含房间编号,房间名称,房间类型,房间价格,房间备注等等,便于管理员进行管理和查询。如图4.6 添加房间图所示:图4.6 添加房间图添加房间的主要实现代码如下:public

54、 void btnAdd_actionPerformed(ActionEvent e) RoomBean rb = new RoomBean();String roomNo = txtNo.getText().trim();if(roomNo.equals()JOptionPane.showMessageDialog(null, 房间编号不能为空, 错误, JOptionPane.ERROR_MESSAGE);return;String roomName = txtName.getText().trim();if(roomName.equals()JOptionPane.showMessage

55、Dialog(null, 房间编号不能为空, 错误, JOptionPane.ERROR_MESSAGE);return;String roomType = (String) cboType.getSelectedItem();if(roomType.equals()JOptionPane.showMessageDialog(null, 房间类型不能为空, 错误, JOptionPane.ERROR_MESSAGE);return;String roomPrice = txtPrice.getText();if(roomPrice.equals()JOptionPane.showMessageDialog(null, 房间价格不能为空, 错误, JOptionPane.ERROR_MESSAGE);return;float price;tryprice = Float.parseFloat(roomPrice);catch(NumberFormatException ex)JOptionPane.showMessageDialog(null, 价格不能是非数字, 错误, JOptionPane.ERR

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