1.1 选题背景
随着人员流动规模的不断扩大,宾馆数量的急剧增加,有关客房管理的各种信息量也在不断成倍增长。面对庞大的信息量,就需要有酒店客房订购管理系统来提高客房管理工作的效率。通过这样的系统,我们可以做到信息的规范管理和快速查询,从而减少了管理方面的工作量。
传统手工的客房信息管理,管理过程繁琐而复杂,执行效率低,并且易于出错。通过这样的系统,我们可以做到信息的规范管理和快速查询,实现了客房信息管理的系统化、规范化和自动化,这样不仅减少了管理工作量,还提高了管理效率,降低了管理成本。
酒店客房预定系统对宾馆加强客房信息管理有着极其重要的作用,就一所客房数量较大的宾馆来说,它的设计内容非常复杂而且繁多,比如拥有客房信息管理、客房类别信息管理、预定信息管理等功能,而且设计的模块也很多,比如信息统计模块,报表设计模块,模糊查询模块等等。
1.2 设计思想
本系统用JSP语言来编写酒店客房预定系统,数据库用SQLSERVER2000来连接系统,即JSP + SQLSERVER2000模式完成整个设计工作。本系统全部基于Internet网络,以JSP语言对网站进行开发,注重用户与网站的交互性。因此在这样的背景下,针对当前Internet网络发展趋势来计酒店客房预定系统就成为了当今应用软件的首选体系结构。
1.3 课题意义
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。它已经深入到
日常工作和生活的方方面面,比如文字处理、信息管理、辅助设计、图形图像处理、教育培训以及游戏娱乐等。各行各业的人们无须经过特别的训练就能够使用电脑完成许许多多复杂的工作。然而,虽然现在世界上已经充满了多如牛毛的各种软件,但它们依然不能满足用户的各种特殊需要,人们还不得不开发适合自己特殊需求的软件。
今天,计算机已经成为我们学习和工作的得力助手;计算机的价格已经十分低廉,性能却有了长足的进步。它已经被应用于许多领域,计算机之所以如此流行的原因主要有以下几个方面:
首先,计算机可以代替人工进行许多繁杂的劳动; 其次,计算机可以节省许多资源;
第三,计算机可以大大的提高人们的工作效率; 第四,计算机可以使敏感信息更加安全,等等。
我作为一个计算机应用的本科生,希望可以在这方面有所贡献。改革的总设计师邓小平同志说过“科学技术是第一生产力”,我希望能用我四年的所学编制出一个实用的程序来帮助学进行更有效的酒店客房预定系统。
归纳起来,好处大约有以下几点: 1.可以在线预定酒店客房;
2.只需一名录入员即可操作系统,节省大量人力; 3.可以迅速查到所需信息。
现在我国还有许多的酒店客房的管理水平还停留在纸介质的基础上,这样的机制已经不能适应时代的发展,因为它浪费了许多人力和物力,采用传统的纸介质的管理模式,还主要依赖于人力手工的操作,并归档编号保存,事后如需查阅,则要人工从浩瀚的资料中查找,既费时费力又容易出错。作为保存资料的介质---纸张,又有容易被火烧毁,易被虫蛀,易发霉变质等等缺点。在信息时代这种传统的管理方法必然被计算机为基础的信息管理所取代。这就急需有一套全新的高效的管理系统,由计算机来代替手工完成酒店客房预定的管理。
2需求分析
2.1 功能需求
(1)客房管理; (2)客房分类管理; (3)留言管理; (4)客房预定管理; (5)用户管理;
2.2 性能需求
系统对环境的要求
服务起端的最低配置是由建立站点所需要的软件来决定的,在最底配置的情况下,服务器的性能往往不进人意,现在硬件性能已经相当出色,而且价格也很便宜,因此通常应给服务器端配置高性能硬件。 本机器的配置如下:
处理器:Inter Pentium 41.6Hz或更高。 内存:256MB 硬件空间:40GB 题目主要采用的技术
数据库:Microsoft SQL Server 2000。 编程语言:jsp,java。 服务器:Tomcat5.5,jdk1.5 开发环境:WindowsXP
菜肴管理 菜肴管理 菜肴管理 教你一招添加 教你一招管理 包房管理 包房管理 菜肴添加 预定管理 包房预定管理 员工管理 管理系统首页 文章管理 贵宾添加 贵宾管理 贵宾管理 员工管理 员工添加 文章管理 文章分类管理 文章添加 模块功能说明
模块设计是针对系统结构图中的每个模块定义其内外部特性的工作,即模块说明。酒店网络商务系统主要模块说明如下:
(1) 用户留言模块
留言模块用开放式留言,留言者姓名栏不能为空,留言内容不能为空,通过调取数据库信息向浏览者提供全部留言信息。
(2) 信息添加处理模块
包括主页栏目,招聘信息,贵宾介绍,菜谱一览,滚动新闻,教你一招等信息的添加。
(3) 贵宾登录及预定处理模块
此模块由于酒店网上预定餐位很难确定预定者身份,随意预定会导致酒店管理不利。并考虑到技术和安全问题,因此采用以贵宾身份享受预定服务,通过后台录入贵宾真实姓名和酒店实发贵宾卡卡号确定贵宾身份。贵宾在网站登录后,可以通过下拉菜单浏览餐位信息并且选择预定,预定界面拥有备注栏,为贵宾提供直接表达预定要求的功能。
(4) 管理员登录处理模块
管理员输入用户名和密码,系统通过与后台数据库进行比较,若一致则登陆成功,否则返回登陆出错界面。
(5) 网站信息更新处理模块
包括主页栏目,招聘信息,贵宾介绍,菜谱一览,滚动新闻,教你一招等信息的修改或者删除过程。
(6) 信息录入处理模块
针对贵宾情况、员工情况、餐位(酒店房间)情况的后台录入处理。 (7) 系统管理处理模块
前台页面布局调整和前台栏目的添加,修改和删除模块。
4数据库设计 4.1 数据库设计
数据库设计是指在现有数据库管理系统上建立数据库的过程,它是管理信息系统的重要组成部分,并且是衡量信息系统开发工作好坏的主要指标之一。本数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。数据库设计的内容是:对于一个确定的环境,进行符合应用语义的逻辑设计,以及提供一个确定存贮结构和物理设计,建立实现系统目标,并能有
效存取数据和数据模型。其主要任务是设计出能够反映实际信息关系、数据冗余少、存储效率高、易于实施和维护,并能满足各种应用要求的数据模型。
4.1.1 逻辑结构设计
根据系统功能设计的要求以及功能模块的划分,对于酒店网络商务系统可以列出以下数据项及数据结构。
员工基本信息:主要包括姓名、年龄、职务、上岗时间、备注。 网站公告信息:主要包括网站公告标题、网站公告内容,作者,时间。 房间(餐位)信息详情信息:主要包括房间编号、状态、容纳人数、备注。 贵宾详情信息:主要包括姓名、电话、贵宾卡号、备注。 网站栏目详情信息:主要包括栏目名称、序号。 菜肴信息:主要包括菜名、菜系、价格、备注。
留言信息:主要包括编号、姓名、题目、留言者qq、留言内容、时间。 教你一招列表信息:主要包括作者、内容、题目。 管理员信息:主要包括登录名、登录密码。 网站基本信息:主要包括位置ID、位置名称。 预定信息:主要包括编号、预定人、预定内容、备注。
4.1.2 数据库表设计
本系统数据库的文件夹名称为JDGL,主机名 \"localhost\" ,用户名 \"sa\",密码为空,数据库中的主要表结构设计如下:
(1) 留言表(book)
表3-1留言表 Tablet.3-1 Table of message
字段名 字段类型 字段宽度 允许空否 字段描述 id 自动编号 否 编号 name varchar 20 否 留言姓名 title varchar 20 否 题目 qq varchar 14 是 留言者qq
text varchar 500 否 留言内容
(2) 包房信息表(room)
表3-2 包房信息表
Tablet.3-2 Table of information cabins
字段名 字段类型 字段宽度 允许空否 字段描述 id 自动编号 否 编号 roomname varchar 10 否 包房名称roomsortID int 4 否 包房编号
(3) 管理员表(tAdmin)
表3-3管理员表
Tablet.3-3 Table of administrators
字段名 字段类型 字段宽度 允许空否 字段描述 id 自动编号 否 编号 fusername varchar 20 否 用户名 fpassword varchar 20 否 密码
(4) 员工信息表(Employee)
表3-4员工信息表
Tablet.3-4 Table of staff information
字段名 字段类型 字段宽度 允许空否 字段描述 id 自动编号 否 编号 employee Name varchar 20 否 员工姓名 employee Age int 4 否 员工年龄 employee Duty varchar 10 否 职务 employee Onwork datetime 20 否 上岗时间 employee Remark varchar 50 是 备注
(5) 贵宾用户表(User)
表3-5贵宾用户表 Tablet.3-5 Table of VIP users
字段名 字段类型 字段宽度 允许空否 字段描述 id 自动编号 否 编号 Loginname varchar 20 否 登录名 Usersname varchar 20 否 真实姓名 Userpsw varchar 20 否 贵宾卡号 Usertel varchar 20 否 贵宾电话
(6) 前台栏目表(tchannel)
表3-6前台栏目表
Tablet.3-6 Table of future columns
字段名 字段类型 字段宽度 允许空否 字段描述 id 自动编号 否 编号 fchannelname varchar 20 否 频道名称 freadme varchar 20 否 标题 fLinkurl varchar 20 否 链接地址 forderID int 4 否 栏目顺序
(7) 菜肴表(Food)
表3-7菜肴表 Tablet.3-7 Table of Dishes
字段名 字段类型 字段宽度 允许空否 字段描述 id 自动编号 否 编号 FoodName varchar 20 否 菜名 FoodPrice decimal 20 是 价格 FoodRemark varchar 20 是 备注 Foodclass varchar 20 是 菜系
(8)最新公告表 (tAnnounce)
表3-8最新公告表
Tablet.3-8 Table of the latest Notice
字段名 字段类型 字段宽度 允许空否 字段描述 id 自动编号 否 编号 fTitle varchar 20 否 标题 fContent varchar 500 否 内容 fAuthor varchar 10 是 作者 fDateAndTime datetime 20 否 时间
5 详细设计
员工基本信息:主要包括姓名、年龄、职务、上岗时间、备注。 网站公告信息:主要包括网站公告标题、网站公告内容,作者,时间。 房间(餐位)信息详情信息:主要包括房间编号、状态、容纳人数、备注。 贵宾详情信息:主要包括姓名、电话、贵宾卡号、备注。 网站栏目详情信息:主要包括栏目名称、序号。 菜肴信息:主要包括菜名、菜系、价格、备注。
留言信息:主要包括编号、姓名、题目、留言者qq、留言内容、时间。 教你一招列表信息:主要包括作者、内容、题目。 管理员信息:主要包括登录名、登录密码。 网站基本信息:主要包括位置ID、位置名称。 预定信息:主要包括编号、预定人、预定内容、备注。
6编码
<%@ page contentType=\"text/html; charset=gb2312\" language=\"java\" import=\"java.sql.*\" errorPage=\"\" %>
<% request.setCharacterEncoding(\"gb2312\");%> <%@ include file=\"..//ConnDB.jsp\"%>
<%String LoginName=request.getParameter(\"LoginName\"); String DD_Name=request.getParameter(\"DD_Name\"); String DD_Date=request.getParameter(\"DD_Date\");
String DD_Remark=request.getParameter(\"DD_Remark\");
Statement stmt_add=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_UPDATABLE);
String sql1=\"insert into diandang(loginName,DD_Name,DD_Date,DD_Remark) values ('\" +LoginName+ \"','\" +DD_Name+\"','\"+DD_Date+ \"','\"+DD_Remark+\"')\"; //out.print(sql1);
int add=stmt_add.executeUpdate(sql1);
//if(add>0){
stmt_add.close();
conn.close(); //}//关闭连接对象
response.sendRedirect(\"User_Article_Manage.jsp\"); %>
<%@ page contentType=\"text/html; charset=gb2312\" language=\"java\" import=\"java.sql.*\" errorPage=\"\" %>
<%@include file =\"../DT_inc/ChkPwd.jsp\"%>
<%@include file=\"../ConnDB.jsp\"%>
员工管理 <% Statement
stmt_Employee=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_UPDATABLE);
String SqlRsEmployee= \"Select * from Employee\" ;
ResultSet RsEmployee = stmt_Employee.executeQuery(SqlRsEmployee);
XHTML 1.0 Transitional//EN\"
\"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">
%>
序号 | 姓名 | 年龄 | 职务 | 上岗日期 | 备注 | 管理 |
<%=Number%> | <%=RsEmployee.getString(\"EmployeeName\")%> | <%=RsEmployee.getString(\"EmployeeAge\")%> | <%=RsEmployee.getString(\"EmployeeDuty\")%> | align=\"center\"><%=RsEmployee.getString(\"EmployeeOnWorkDate\")%> | <%=RsEmployee.getString(\"EmployeeRemark\")%> | <% int ID =RsEmployee.getInt(\"EmployeeID\"); %>\">修改 \" onclick=\"return confirm('确实要删除吗?')\">删除 |