基于Java的酒店管理系统的设计与实现

时间:2012-04-12

  摘要:酒店是社会不可或缺的一项商业,有着很大的发展空间。一个职业化的管理层对一个酒店在现代市场竞争中建立持久的竞争优势,取得持续的生存发展能力具有至关重要的意义。该酒店管理系统主要分为六大功能模块:前台服务,后台管理,销售统计,系统安全,人员管理和系统初始化。该系统以MySQL 作为后台数据库,以Eclipse 作为开发工具,运用Java 语言编写代码块,应用JavaSwing 组件实现图形界面。该系统安全性高,可扩展性强。

  随着社会经济的发展,酒店在服务行业扮演越来越重要的角色,在酒店运作期间,其管理和服务水平直接影响到酒店的形象和声誉。为提高其自身的管理水平,加强竞争能力,提高经济效率,笔者在对酒店的日常运作进行综合调查的基础上设计并实现了一套酒店管理系统。该系统为管理者提供迅速高效的服务,减免了手工处理的繁琐与误差,提高管理者获取信息、分析、利用信息的能力。

  1 相关技术

  1.1 Java

  Java 是一种简单的、面象对象的、安全的、可移植性强的、性能优异的多线程编程语言。Java 能运行于不同的平台,使用Java 编写的程序能在世界范围内共享。Java 的编程类似C++, 但比C++安全,Java 对程序提供了安全管理器,防止程序的非法访问。另外,Java 还提供丰富的类库,使程序设计者开发程序更加方便而高效。同时Java Servlet / Jsp 技术的推出,让Java 成为基于Web 的应用程序,成为实现Internet 电子商务系统的语言。

  1.2 JDBC 访问数据库技术

  JDBC 是一种用于执行SQL 语句的Java API, 可以为多种关系数据库提供统一访问, 它由一组用Java 语言编写的类和接口组成。JDBC 为工具/数据库开发人员提供了一个标准的API, 据此可以构建更的工具和接口, 使数据库开发人员能够用纯JavaAPI 编写数据库应用程序。而且,JDBC API 是面向对象的,可以让用户把常用的方法封装为一个类。

  2 系统功能模块

  本系统主要包含6 大功能模块:前台服务、后台管理、销售统计、系统安全、人员管理、初始化系统。

  前台服务模块具有开台点菜、维护菜品、签单、结账等功能,其中维护菜品功能包括添加和取消菜品,能够取消菜品的前提条件是处于开单状态,结账时则要求所有商品都要签单;后台管理模块主要包括台号管理、菜系管理和菜品管理功能;销售统计模块用来分段统计营业额,可以按日、月和年进行统计;系统安全模块主要包括交接班、锁定系统和修改密码功能,其中交接班功能在操作员换岗时使用,锁定系统在操作员临时离开时使用;人员管理模块主要包括档案管理、管理员管理和操作权限管理功能,其中管理员管理功能用来管理系统的操作员,权限管理功能用来管理系统操作员具有的操作权限;初始化系统功能用来对系统进行初始化,初始化后系统数据将全部被删除。

  根据6 大功能模块,我们设计出系统运行的流程图如图1 所示。

图1 系统流程图

图1 系统流程图

  3 数据库设计

  根据酒店业务流程分析,酒店需要对台号,人员,菜系,菜品等进行管理。人员分为超级管理员和一般管理员,通过给管理员赋权限来对系统进行管理。根据需求我们定义了台号、管理员、管理员档案、菜系、菜品、记录条目和记录统计等数据对象。

  本系统是以MySQL 作为后台数据库, 每个表格都表示数据库中的一张表。我们以菜品信息表(tb_menu)为例,此表是用来存储各大菜系所包含什么菜品,及各菜品的详细信息,其结构如表1 所示。

表1 菜品信息表

表1 菜品信息表


  数据库操作是每个信息系统必做的部分, 也是非常重要的部分。在这个系统中我们用JDBC 技术连接数据库。在JDBC 类里面我们定义连接数据库的配置参数, 编写实现了连接数据库的方法getConnection()和与数据库断开连接的方法closeConnection()。

  4 系统典型功能模块的设计与实现

  我们以前台服务模块和销售统计模块为例来说明。

  4.1 前台服务模块的实现

  该模块主要包括开台点菜、维护菜品、签单、结账等功能。首先,登录界面包括标题,登录图像,用户名和密码输入框。登录动作的实现:登录时去访问数据库中的tb_manager 数据表,查看其中是否有记录,如果有记录,则判断输入的用户名和密码是否在数据表中存在,如存在就进入系统主页面,如不存在,则通过显示信息框让用户使用系统默认用户登录。

  主界面包括签单列表版块、开台列表版块、开台点菜信息框、结账信息版块、功能按钮版块、系统时间、操作员信息版块和功能列表版块等。图2 为开台点菜信息版块。

图2 开台点菜信息

图2 开台点菜信息

  4.2 销售统计模块的实现

  该模块用来分段统计营业额,可以按日、月和年进行统计,其中日统计是按消费单和销售的商品统计销售额, 月统计是按日期和每日的销售额统计销售额,年统计是按日期和月份统计销售额。

  日销售统计:通过Dao 类执行查询语句""select * from tb_order_form where consume_date between '" + date + " 00:00:00' and '"+ date + " 23:59:59'""来查询在全天的销售记录。

  执行查询语句""select * from tb_order_item item join tb_menu menu where item.menu_num=menu.num and order_form_num='" +num + "'""来查询全天销售的所有记录的详细信息。

  把查询结果显示到创建的日销售统计表中。

  月销售统计:定义月销售统计类MonthDialog,在该类中定义一个String 数组values 来存储查询结果,再把String 数组里的数据回写到已经创建好的月销售统计表中,调用Dao 类的monthCheckOut(String)方法进行查询开台总数,消费总额,平均消费,消费额,消费额等数据,再把查询的结果赋给String 数组values.

  年销售统计:定义一个年销售统计类YearDialog,在该类中执行dao.yearCheckOut(year)方法查询全年的销售记录,再把查询的结果填写到年销售统计表中。

  5 结束语

  该酒店管理系统应用对象广阔、平台先进可靠,基于角色的权限管理体系,确保了系统安全可靠,并且该系统界面友好,易于优化、易于扩充、可移植性强,得到了试用者的广泛好评。

上一篇:基于MSP430和nRF905的塔吊无线遥控系统
下一篇:基于ARM的智能来电显示器的设计

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料