资源描述
酒店住宿管理系统摘要随着客房数量与客房种类的不断增加,客房事业的不断发展,酒店业务的管理难度也越来越大,根据这种现实需要,设计制作一套酒店管理系统便成为一件非常有价值的工作。应用酒店管理系统对酒店进行管理具有传统管理模式不可比拟的优点,它凭借其信息更新速度快,信息存储量大,安全性高,应用简便等特点为酒店业务的管理带来了极大的方便。随着客房事业的不断发展,人们对精神生活要求的不断提高,酒店管理系统在客房事业发展中必将发挥越来越大的作用。本论文就毕业设计的内容,系统地阐述了整个酒店业务管理系统的功能及实现。实现了从客房管理,客房分类和查询,到购物车实现,用户订单处理,管理员系统。基本上实现了电子商务的功能流程,能够实现用户与商家在网上进行客房交易。本系统界面简单直观,易于操作和使用,交互性强,完全基于Internet网络。此系统设计上采用三层结构、Web Service技术,使之在选用平台、采用技术上具有先进性、前瞻性、扩充性,从而保证建成的系统具有良好的稳定性、可扩充性。系统设计按标准化、规范化,分层设计,构件化实现。采用软件构件化的开发方式,使系统结构分层,业务与实现分离,逻辑与数据分离;以统一的服务接口规范为核心,使用开放标准。从功能上来说,系统是比较完备的,系统以Web界面与用户交互,为用户提供信息并接受其操作,同时通过数据库管理系统来存储信息数据。系统实现了对信息数据的浏览、查询、编辑和管理等基本数据库操作,采用了模块化设计方法,根据用户的需求及程序的应用与维护的易用性,将各个部分置于不同的模块当中,方便了程序的扩展与维护,同时建立了程序功能复用的基础。关键词:数据库 Internet 客房预订AbstractWith the room number and room type growing room cause of the continuous development of the management of difficult movie is also growing, according to the practical needs, design the production of a hotel management system has become a very valuable work of . Application of hotel management system hotel management has incomparable advantages of the traditional management models, which, with its update speed, large amount of information storage, high security, application characteristics for easy management of movie has brought great convenience to . With the room cause of the continuous development of peoples spiritual life demands continuous improvement, the hotel management system in the room cause of the development will play an increasing role. In this paper, the content of the graduation project, systematically expounded the entire hotel business management function of the system and implementation. Achieved from the merchandise management, commodity classification and queries to the shopping cart implementation, the user order processing, admin system. Basically realized the function of e-commerce processes, enables users to conduct business online commodity trading. This system simple and intuitive interface, easy operation and use of interactive, network based entirely on the Internet. This system is designed using three-tier architecture, Web Service technology, making the choice of platform, using technically advanced, forward-looking, scalability, thus ensuring the completion of the system has good stability and scalability. System design according to standardized, hierarchical design, component-based implementation. Use of software component-oriented development mode, the system hierarchical structure, operations and implementation of separation logic and data separation; with a unified service interface specification as the core, the use of open standards. From the functional point of view, the system is relatively complete, the system Web interface and user interaction for the user to provide information and receive its operation at the same time through the database management system to store information and data. System implementation of information and data browsing, query, editing, and manage the basic database operations, using a modular design method, based on user requirements and procedures for application and maintenance ease of use, each component will be placed in different modules which to facilitate the program expansion and maintenance, while establishing a foundation for reuse program feature. Key words: database, Internet Reservations 目录第一章前言11.1 课题的来源及意义11.2 国内外发展状况21.3 可行性研究2第二章 相关技术介绍42.1 JSP技术简介42.2 JSP工作原理42.3 JSP体系结构42.4 JSP的特点52.5 SQLSERVER 2000 数据库62.6 系统数据库连接7第三章 系统分析153.1 系统功能分析163.2 需求分析163.3 业务流分析203.4 数据流分析223.5 数据字典243.6 需求分析复审24第四章 系统总体设计254.1 系统总体功能结构图254.2 系统ER图254.3 系统功能设计目标264.4 系统功能模块划分274.5 系统的体系结构28第五章 数据库设计295.1 数据库系统概述295.2 数据库表设计30第六章 程序设计346.1 程序说明346.2 具体模块划分35第七章 软件安装与调试397.1 软件的安装与配置397.2 软件调试407.3 软件测试:407.3.1 测试的重要性及目的407.3.2 测试的步骤427.3.3 测试的主要内容43结 论45致 谢46参考文献48第一章前言1.1 课题的来源及意义 随着国民经济快速发展,人们生活的要求越来越高,对服务的快捷、便利性要求也越来越高。从而对酒店行业的建设与管理提出了更高的要求。为适应和推动酒店行业的发展,各酒店公司和部门开始广泛采用计算机管理系统,推出网上客房销售服务,大大减轻了订、售、检、调度、款管理等部门工作人员的劳动强度,提高了各部门的工作效率,而且能够在很大程度上减少顾客的长时间排队购的时间和由此而带给顾客的疲劳,为广大顾客提供了更加快捷、优质、有序的服务,提高了中心酒店的服务水平,也逐步树立了企业形象。然而传统的销售方式存在着很多方面的不足,比如实时差、交易时间过长、运营成本高、信息不共享等。随着客房数量与客房种类的不断增加,客房事业的不断发展,中心酒店的管理难度也越来越大,根据这种现实需要,设计制作一套酒店管理系统便成为一件非常有价值的工作。应用酒店管理系统对酒店进行管理具有传统管理模式不可比拟的优点,它凭借其信息更新速度快,信息存储量大,安全性高,应用简便等特点为酒店业务的管理带来了极大的方便。随着客房事业的不断发展,人们对精神生活要求的不断提高,酒店管理系统在客房事业发展中必将发挥越来越大的作用。以SQL Server2000数据库为基础,应用当今最为流行的网络编程语言之一JAVA配合JSP语言共同制作而成。因此,越来越多的各酒店公司都想利用动态电子商务的优越性来进行网上售交易。本系统为中心酒店酒店业务管理系统。11.2 国内外发展状况目前,国内中高级酒店的数量和规模都在扩大,国外星级酒店也纷纷着陆中国,这些酒店之间的竞争可谓日益激烈。配备一个安全、高效、灵活、可靠的酒店业务系统对于酒店加强客户服务质量,提高客户服务水平,维护公众形象,提高工作效率必将发挥重要作用。对酒店来说,业务系统既能扩大服务范围,扩大酒店影响,减少营业费用,又对稳固酒店最重要的客源有着重要的辅助作用;站在前来观看客房的观众的角度,酒店提供的这种服务提供了更多的方便,能不受时间空间限制地享受酒店所提供的服务。 酒店作为一个快速增长的经济行业,在提高国民生活质量和发展地区经济中发挥着越来越重要的作用。人们在网上预订酒店,机越来越普遍,为了提高企业的效率,依靠现代化的计算机信息处理技术,能够合理的利用网络资源,快速反映出用户对客房价及酒店信息的查看,并且能够针对用户的不同要求,酒店管理员可以依靠会员管理功能,第一时间提供准确,精细,迅速的服务。从而大大的节省了人力、物力资源,不仅为酒店创造了良好的经济效益,也为广大客户提供了一个方便快捷的购平台。1.3 可行性研究 网络平台已经成为企业经营管理中不可忽视的一个重要的方面,拥有一个全面的、功能强大的、操作简单的网络购物中心已经成为企业营销发展的一个必然趋势。网络购物中心的建立从销售方面讲,不仅给企业增加了一个新的销售渠道,而且方便了客户预订与了解公司的客房及新的销售方向;从企业宣传方面来讲,不仅扩大了企业知名度,还更直观地展示出企业的客房。拥有一个B2C的网络购物中心,已经成为企业网络销售进程中的一个重要环节。可行性研究的目的是用最小的代价在尽可能的时间内确定问题是否能够解决。一般我们都是从经济可行性,技术可行性以及操作可行性来研究一个系统是否具备开发的基本条件。在经济可行性中最重要的内容之一是成本与效益分析。对于一个基于计算机系统的研制项目要在经济方面评价其是否合理,成本与效益分析要估计研制开发的花费并与收益衡量比较。现在,计算机的价格已经十分低廉,性能却有了长足的进步。本系统属单机系统,需购置电脑,各种相关软件的网络资源十分丰富,一般都可以免费使用。如果采用自主开发方式,系统开发成功后,正常运转将加快资金周转,减少货物积压,更有效地保障企业的正常运行,所产生的效益远大于所需费用,正所谓“小投入,大产出”。所以,本系统在经济上是可行的。信息化发展的今天,计算机技术被广泛应用于各个领域中。对于企业管理而言,实施本系统只需要企业内部互联的计算机网络,配以先进的数据库技术与数据管理技术,使数据的准确性与安全性得到了很大的提高,且在用户的并行操作与用户管理方面也有了极大地改善。在现有成熟的Microsoft SQL Server 2000数据库为设计工作提供了必要的保证。经过调研以及需求分析得出此次系统开发的技术完全能实现最终系统。因此,它在技术上是可行的。本系统为一个中小的酒店业务管理系统,所耗费的资源非常少,企业的电脑无论是硬件还是软件都能够满足条件,因此,本系统在操作上也是可行的。38第二章 相关技术介绍2.1 JSP技术简介JSP(Java Server Page服务器网页)是从1998年开始出现的新技术。由Sun公司倡导、许多公司参与一起建立的一种动态网页技术标准,是基于JavaServlet以及整个Java体系的web开发技术。在传统的网页HTML文件(*.htm,*.html)中加入脚本片段和JSP标记(Tag),构成JSP网页(*.jsp)。JSP技术为创建显示动态生成内容的web页面提供了简便的方法。JSP作为Java家族的一员,承袭了Java的特点,即跨平台的特性,也即一次编译,到处运行。在国外,己经大量使用JSP作为网络应用程序的开发工具,而在国内,尽管JSP还不是主流开发技术,但是由于JSP的强大优势,许多网站都已经准备转向JSP,利用JSP来开发动态网站。 2.2 JSP工作原理JSP是面向服务器的,因此支持任何浏览器。当Web服务器和JSP引擎遇到访问JSP网页的请求时,JSP引擎将请求对象发送给服务器端的相关组件,比如JavaBean组件、Servlet或EJB等,然后由服务器端组件处理这些请示,可能需要从数据库或数据存储中检索信息,然后服务器端组件再将响应对象返回JSP引擎。JSP引擎将响应对象传递给JSP页面,根据JSP页面的HTML格式完成数据编排,最后Web服务器和JSP引擎将格式化后的JSP页面以HTML格式返回客户浏览器。这就是当前网站构建中广泛采用的浏览器Web服务器后台数据库的三层架构模式。因为JSP所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果。2.3 JSP体系结构JSP网站开发标准给出了两种使用JSP的技术,可以归纳为模式一、模式二。模式一:JSP+JavaBeansm。在这种模式中,JSP页面独自响应请求并将处理结果返回给客户。Bean处理所有数据访问,JSP实现页面的表现,以实现内容生成与显示相分离。当处理复杂的大型应用时,页面被嵌入大量的脚本或Java代码段,当需要处理的商业逻辑复杂时,这种情况会变得非常糟糕,大量的内嵌代码使得页面程序变得复杂,对于前端界面设计人员,这是不可思议的事情。所以模式一可用于小型应用,不能够满足大型应用的需要。模式二:JSP+Servlet+JavaBeans。Servlet技术是一种采用Java技术来实现CGI功能的一种技术,Servlet技术非常适于服务器端的处理和编程,并且Servlet会长期驻留在内存。从开发的观点看,模式二具有更清晰的页面表现,清楚的开发者角色划分,在大规模项目开发中,模式二更被采用,模式二也更符合当前流行的MVC结构(Model/view/controller),其中Servlet对应controller,处于控制者的位置,处理HTTP请求,负责生成JSP中使用的Beans组件或对象,并判断应将请求传递给哪个JSP等,JSP对应view,负责生成最终的动态网页并返回给浏览器。而JavaBeans对应的是Model,实现各个具体的应用逻辑与功能。2.4 JSP的特点1. 简化的页面生成技术。JSP页面用标准的HTML或XML命令来处理页面的格式化和布局设计,而用类似HTML、XML的标记和Java语言编写的脚本程序生成页面内容。这使得页面形式与页面内容互相独立,非常有利于大型项目的分工合作。2. 与Java平台有机集成。JSP技术是Java 2平台的重要组成部分,JSP使用Java语言作为它的脚本语言。在JSP页面中可以使用几乎所有的Java组件和Java API,这就能充分发挥出Java语言的强大功能。使用JSP技术可以创建具有高度可伸缩性和可靠性的Web应用程序。3. 硬件平台和服务器无关性。JSP作为Java家族的一员,秉承了Java技术的“一次编写,随处可用(Write Once,Rum Anywhere)”的特性,可以运行于大多数流行的操作系统平台及Web服务器,这种与服务器硬件和操作系统平台的无关性是JSP相对于其它动态网页技术最大的一个优点。4. 功能可扩展性。如同Microsoft的JSP技术可以通过ActiveX/COM组件来扩展功能一样,JSP可以通过JavaBean和EJB(Enterprise JavaBean)以及自定义的标记来扩展功能。JSP可以通过JDBC,与诸如Oracle、SQL Server这样的大型关系数据库进行连接。JSP提供了一些隐含对象。这些隐含对象在JSP页面中可以直接引用,而不必首先声明。利用JSP提供的这些隐含对象,可以使脚本功能更加强大,并且编程更加容易、方便。例如,利用request对象,可以很容易地接收用户在HTML表单中提交的信息。2.5 SQLSERVER 2000 数据库SQL Server是由Microsoft开发和推广的关系数据库管理系统(DBMS),它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的,并于1988年推出了第一个OS/2版本。 SQL Server近年来不断更新版本,1996年,Microsoft 推出了SQL Server 6.5版本;1998年,SQL Server 7.0版本和用户见面;SQL Server 2000是Microsoft公司于2000年推出的最新版本。 SQL Server 特点:1真正的客户机/服务器体系结构。 2图形化用户界面,使系统管理和数据库管理更加直观、简单。 3丰富的编程接口工具,为用户进行程序设计提供了更大的选择余地。 4SQL Server与Windows NT完全集成,利用了NT的许多功能,如发送和接受消息,管理登录安全性等。SQL Server也可以很好地与Microsoft BackOffice客房集成。 5具有很好的伸缩性,可跨越从运行Windows 95/98的膝上型电脑到运行Windows 2000的大型多处理器等多种平台使用。 6对Web技术的支持,使用户能够很容易地将数据库中的数据发布到Web页面上。 7SQL Server提供数据仓库功能,这个功能只在Oracle和其他更昂贵的DBMS中才有。2.6 系统数据库连接JDBC技术是Java DataBase Connectivity的缩写,它是SUN公司提供的一种支持基本SQL功能的通用的应用程序接口(Application Programming Interface)。它由一组用Java语言编写的类和接口组成。通过这些类和接口,程序开发人员可以在Java语言中方便地建立与数据库的链接,通过执行相应SQL语句,完成对不同数据库的访问。因此,开发人员使用JDBC API可以不必编写一个应用程序来访问Sybase数据库,又另外编写一个应用程序去访问Oracle数据库,再写一个应用程序访问Microsoft的SQL Server。不但如此,使用Java语言编写的应用程序可以在任何支持Java的平台上运行,不必在不同的平台上开发不同的应用程序。简单地说,JDBC能完成下列三件事:1. 同一个数据库建立连接;2. 向数据库建立连接;3. 处理数据库返回的结果。JDBC是一种通用低层的应用程序编程接口,它在不同的数据库功能模块的层次上提供一个统一的用户界面。说JDBC是一处低级的API,是指它直接调用SQL命令,它比其他的一些数据库连接API要容易使用些,但它有同样可以作为更高级的,用户办面更友好的API或开发工具基础。很多可视化的Java开发工具,如Visual Age For Java、Visual Caf、J+等都提供了基于JDBC的更面向用户的类和包,直接将关系数据库的表或视图映射为Java类,程序员通过可视化工具直接对Java对象进行操作,而真正需要的SQL调用则根据程序员发出的对对象的各种属性、方法的操作来自动产生。另一种使用JDBC API 的方式为,用户程序可以提供一个界面(如菜单等)让用户选择对数据库进行的操作,选中一个任务后,提示用户输入一些必要的信息,然后根据用户的输入产生相应的SQL命令以及Java程序。通过这处方式,用户可以完成对数据库的操作,即使他并不了解SQL语法以及JDBC编程。数据库访问的三层结构如图2-1所示,浏览器端程序要访问数据库,首先通过中间件,然后由中间件对数据库操作权限进行认证,认证通过才能对数据库进行操作。图2-1 使用中间件的数据库访问三层结构用户对数据库的存取权限认证是中间件中完成,对数据库的查询、插入、更新和删除操作等都封装在中间件中,该中间件位于服务器端,中间件对数据库进行操作后,再将处理结果通过Web服务器返回到浏览器端用户。这样,在用户端输入的用户名和密码,可以通过加密算法进行加密后在网络上传输,在中间件中进行解密认证,然后再进行数据库的存取操作,数据库存取权限的用户名和密码出现在位于服务器端的中间件中,这样就更加安全。本系统采用的正是这样的三层结构的数据库访问模式。在三层模型中,命令将被发送到服务的:中间层,而“中间层”将SQL语句发送到数据库。数据库处理SQL语句并将结果返回“中间层”,然后”中间层”将它们返回用户。其模型如图2-2所示。图2-2 JDBC的三层模型因为”中间层”可以进行对访问的控制并协同数据库的更新,并且可以使用一个易用的高层API,这个API可以由“中间层”进行转换,转换成低层的调用。所以在许多种情况下,三层模型可以提供更好的性能,本系统中所采用的就是此种模型。JDBC是JAVA应用程序与数据库的沟通桥梁。它提供了三项服务功能:一、与数据库建立连接。二、将SQL语句传递给数据库。三、从数据库取得SQL语句的执行结果。当JDBC要与数据库建立连接前,首先,它必须先取得连接此数据库的JDBC驱动程序,Class.forName()即是在执行此项工作。建立数据库连接的第一步骤就是将JDBC驱动程序的类载入至JVM(Java VirtualL Machine)中,本系统中利用java.lang.Class类内的forName()静态函数依据指定的类名称,将JDBC驱动程序载入进来。完成载入驱动程序的步骤后,必须使用java.sal.DriverManager类所提供的getConnection()静态函数,取得与数据库间的连接对象。此连接对象的类类型为java.sal.Connection,必须通过它才能将SQL指令传递给数据库,而执行结果也需要通过连接对象来取得。当取得连接对象后,还必须取得Statement对象才能对数据库执行SQL指令。Statement主要实现两个功能:执行SQL语句以及取得执行结果。在java.sql.Statement的sql对象中执行查询或修改命令的函数后传回的是一个ResultSet 对象,这个对象提供了一个存取SQL执行结果的管道,以便通过它将表格数据从数据库中取出。每个Statement对象只能产生一个ResultSet 对象。数据库连接如图2-3所示:图2-3 数据库的连接处理数据库的连接处理具体实现如下:/建立JDBCODBC桥sun.jdbc.odbc.JdbcOdbcDriver;/桥建立不成功时的错误处理catch(ClassNotFoundException event)/建立与数据库的连接,并发送SQL查询语句,将结果保存到rs对象中Con=建立JDBCODBC桥Sql=SQL查询语句执行查询Rs=返回结果/SQL出错处理 catch(SQLException e1)有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事。换言之,有了JDBC API,就不必为访问Sybase数据库专门写一个程序,为访问Oracle数据库又专门写一个程序,或为访问Informix数据库又编写另一个程序等等,程序员只需用JDBC API写一个程序就够了,它可向相应数据库发送SQL调用。同时,将Java语言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是Java语言“编写一次,处处运行”的优势。Java数据库连接体系结构是用于Java应用程序连接数据库的标准方法。JDBC对Java程序员而言是API,对实现与数据库连接的服务提供商而言是接口模型。作为API,JDBC为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法。JDBC使用已有的SQL标准并支持与其它数据库连接标准,如ODBC之间的桥接。JDBC实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口。Java 具有坚固、安全、易于使用、易于理解和可从网络上自动下载等特性,是编写数据库应用程序的杰出语言。所需要的只是 Java应用程序与各种不同数据库之间进行对话的方法。而 JDBC 正是作为此种用途的机制。 JDBC 扩展了 Java 的功能。例如,用 Java 和 JDBC API 可以发布含有 applet 的网页,而该 applet 使用的信息可能来自远程数据库企业也可以用 JDBC 通过 Intranet 将所有职员连到一个或多个内部数据库中(即使这些职员所用的计算机有 Windows、 Macintosh 和UNIX 等各种不同的操作系统)。随着越来越多的程序员开始使用Java 编程语言,对从 Java 中便捷地访问数据库的要求也在日益增加。 MIS 管理员们都喜欢 Java 和 JDBC 的结合,因为它使信息传播变得容易和经济。企业可继续使用它们安装好的数据库,并能便捷地存取信息,即使这些信息是储存在不同数据库管理系统上。新程序的开发期很短。安装和版本控制将大为简化。程序员可只编写一遍应用程序或只更新一次,然后将它放到服务器上,随后任何人就都可得到最新版本的应用程序。对于商务上的销售信息服务, Java 和JDBC 可为外部客户提供获取信息更新的更好方法。简单地说,JDBC 可做三件事:与数据库建立连接、发送 SQL 语句并处理结果。下列代码段给出了以上三步的基本示例: Connection con = DriverManager.getConnection(jdbc:odbc:wombat,login, password); Statement stmt = con.createStatement(); ResultSet rs = stmt.executeQuery(SELECT a, b, c FROM Table1); while (rs.next() int x = rs.getInt(a); String s = rs.getString(b); float f = rs.getFloat(c); 上述代码对基于JDBC的数据库访问做了经典的总结。第三章 系统分析为了最终实现目标系统,必须设计出组成这个系统的所有程序和文件(或数据库)。模块是数据说明、可执行语句等程序设计对象的集合,它是单独命名的而且可通过名字来访问。模块化就是把程序化分成若干个模块,每个模块完成一个子功能,把这些模块集起来组成一个整体,可以完成指定的满足问题的要求。3.1 系统功能分析首先对现有系统进行分析,现有系统是信息的重要来源。分析已有系统的功能和实现,从而确定新系统的设计目标和模型。由于条件有限,调研主要是在网上进行。即通过在网上已有的客房预订网站注册成会员来了解其具备的功能。从网站的角度看:(1)网站应该包含客房搜索功能:按客房名(模糊)查询。(2)订单处理功能,确认订单方式(3)管理员管理:查看用户信息,并根据用户信息和用户订单对客房进行发派。(4)客房浏览3.2 需求分析需求分析的任务是通过详细调查现实世界要处理的对象,充分了解系统的工作概况,明确用户的各种需求,然后在此基础上确定新系统的功能。新系统必须充分考虑今后可能的扩充和改变。1在这里我们需要了解用户有什么样的具体要求和对系统性能的要求。(1)客户信息管理(2)客房信息介绍(3)客房预订管理(4)入住消费管理(5)特色菜品介绍(6) 餐桌预订管理(7) 餐饮消费管理对数据的安全性、完整性要求:用户信息保密,只有管理员可见(可查),但不能任意修改。确保网上支付安全。客房信息、用户信息必须保证其完整性。防止恶意删改。以下是系统性能需求:(1)准确性和可靠性高(2)页面友好,功能齐全,且可以使用(3)系统便于维护和升级。(4)数据库访问效率高3.3 业务流分析网上酒店售系统工作流程为:系统启动并进入登录界面,根据不同的用户进行登录,所有用户都可以浏览系统主页面。通过权限判断,普通用户只能浏览、阅读和查询信息,注册用户除了可以完成普通用户的操作外,还可以进行对自己注册资料的操作(包括对自己的资料的录入、修改和删除的操作)。管理员可以对系统信息进行添加、修改和删除的权限,及对系统管理的所有功能进行操作。所有用户均可以实现查询功能。本系统的业务流程图如图3-1所示:查询 发布 修改 添加 删除 登录系统 已注册用户 未注册用户 注册 各种信息系统管理员所有用户 统计 自动写入后台数据库 保存 图3-1 系统业务流程图 本系统是将现代化的计算机技术与销售管理服务模式相结合,按照销售管理的服务流程设计完成的。同时为扩展服务范围,初步设计一个销售平台以利于信息发布和管理。为了使系统在各项管理中发挥更大的作用,实现工作过程的计算机化,提高工作效率和工作质量,现提出如下系统开发目标:具体目标如下:(1)操作简单、界面友好:完全控件式的页面布局,使得信息的录入工作更简便;许多选项包括信息类别、来源、作者等只需要点击鼠标就可以完成;另外,跟踪出现的提示信息也让用户随时清楚自己的操作情况。(2)即时可见:对信息的处理(包括添加、修改、删除)将立即在主页的对应栏目显示出来,达到即时发布、即时见效的功能。(3)功能完善:不仅包括常见系统的信息管理的各个方面:信息录入、浏览、删除、修改、查询等各个方面,完整地实现了系统对即时信息的管理要求。而且,还能进行对会员的管理,对会员的资料进行审核,以及上传文件的管理。同时,为了能有效方面的更新系统的界面。(4)方便移植:系统应具有实用性、可靠性和适用性,同时注意到先进性。针对不同的用户,只需要稍作修改就可以开发出适合自己特点的网上书店。系统界面中所需的条目,图片等数据都存放于数据文件中,只要对该文件做部分修改,就能在系统界面上实现及时更新的效果,减少了更改系统源代码的复杂性。(5)动态管理:对系统数据库实行动态操作,能实现对数据库信息的动态查询、动态更新修改和动态录入数据。3.4 数据流分析管理业务的调查中绘制的管理业务流程图虽然形象地表达了管理中信息的流动和存储过程,但仍没有完全脱离一些物质要素,为了用计算机进行信息管理还必须进一步的舍去物质要素,收集有关的资料,绘制出系统的数据流程图,为进一步的分析做准备。3.4.1 数据流程图的符号说明 外部实体 数据处理 数据流 数据存储l 数据流(Data Flow):指具有名称且有流向的数据,用标有名称的箭头表示。一个数据流可以是记录、组合项或者基本项。l 数据处理(Process):表示对数据所进行的加工和变换,在图中用矩形框表示。指向处理的数据流为该处理的输入数据,离开处理得数据流为改处理的输出数据。l 数据存储:表示用文件方式或数据库形式所存储的数据,对其进行存取分别以指向或离开数据存储的箭头表示。l 外部实体:表示数据的来源及数据的去向,可以是一个组织或人员,他处于系统范围之外与系统有关的外部事物或外部环境。3.4.2顶层数据流程图客人的入住过程是通过酒店前台管理系统进行,前台将现金和报表给财务部。经理可以对前台管理系统进行查询,主要是对报表和财务状况的查询。前台管理负责把各种报表存档,以方便经理进行查询工作。财务部客人前台管理系统 客户请求信息 现金经理查询请求 报表D1存档 房态表 图3.2 顶层数据流程图3.4.3第一层数据流程图 将前台管理系统分为预订管理,入住管理。收银管理,和查询管理来进行分析。 图3.3 第一层数据流程图3.4.4 将各个模块逐一分解进行分解P1.1预订接待P1。2预订登记 客人 房间状态表 预订库 预订信息 预订客人信息 订单 P2 图 3.4 预订管理数据流程图客人将预订信息给预订部,预订部根据房间状态表为客人进行预订登记,并登记客人信息,将预订单给接待部,入库保存。 房间状态表 房号P2.2入住登记P2.1前台接 待客人 入住请求 房间号,应付账 客人帐单 客人登记单 P3 图3.5 接待管理数据流程图客人将入住请求给前台,前台根据房间状态表来分配客房,将房间号,和客人信息登记。并将客人帐单给收银部。P3.1收银管 理财务部客人 退房结账 帐单库P3.2退房管 理 P4图 3.6 收银管理数据流程图客人要求退房,收银人员根据账单内容来结账,把首联账单保存入库,将第二联给财务部,并修改房间状态。3.5 数据字典字典的作用是给词汇以定义和解释。在结构化分析中,数据字典的作用是给数据流图上每个成分以定义和说明。换句话说,数据流图上所有成分的定义和解释的文字集合就是数据字典。数据字典对数据流图和各种成分起注解说明作用,给这些成分赋以实际的内容。除此之外,数据字典还要对系统分析中其他需要说明的问题进行定义和说明。数据字典描述的主要内容有:数据流、数据元素、数据存储、加工、外部项。其中数据元素是组成数据流的基本成分,在系统分析中,数据字典起着重要的作用。数据结构条目名称:入住登记单说明:客人入住酒店的时候所要填写的单据。结构:姓名年龄性别国籍入住日期证件类型证件号码客房编号总编号:002有关数据流。数据存储,入住登记单库 名称:预订单说明:客人预订房间是所填写的单据结构:联系人姓名 房间数量电话号码 房间种类传真号码 宾客数量预订日期 房价预到达时间预离店时间付款方式宾客姓名总编号001数据流向:有关数据,数据存储,预订单库 名称:帐单说明:客人在结帐时候,前台所要出示的报表结构:客房编号 客房种类 客房位置 客房单价 客户姓名 证件类型 证件号码 入住时间 折扣 结帐时间 备注信息总编号;003数据流向:数据存储,帐单库 3.6 需求分析复审需求分析说明书完成后,应由用户和开发人员共同复审,复审小组对需求分析说明书的各个部分逐个进行认真的复查,确认文档所描述的系统模型符合用户的需求,复审结束后双方签字确认。 本次需求分析有老师布置并指导。小组成员亲自调查,并经小组分析讨论后制定系统需求功能目标。第四章 系统总体设计4.1 系统总体功能结构图如图4-1 为系统功能结构图图4-1 系统功能结构图4.2 系统ER图如图4-2 为系统ER图图4-2 系统ER图4.3 系统功能设计目标理论系统功能设计目标如下:(1)实用性强:我们努力使系统符合实际操作流程的习惯,并尽量减少用户的输入,易学易用的友好的用户界面,满足各层次的用户使用的需求;(2)先进的程序结构:使用当代前卫的软件编程,能延长其生命周期,易于维护与管理;(3)安全可靠性高:后台维护功能齐全,根据平台在各个阶段不同的使用情况,管理人员可以设置相应的操作权限,增加系统注册,分配各个栏目的管理权限,实现系统的维护,保证系统的安全、可靠;(4)使用模块化设计的方法:使系统具有良好的可扩充性,以适应其不同阶段的发展需要,便于后来者分析、维护;(5)操作简单,维护方便:每个子系统都具有相对独立的系统维护功能对可变化的项目可自行维护;(6)查询功能强大:可以对客房的基本情况、用户基本情况,书评信息,用户留言等按各种方式查询,可形成各种表单,同时还可对其进行汇总,使管理人员能及时准确地掌握用户和客房等的基本情况。4.4 系统功能模块划分根据需求分析与系统功能设计目标,结合实际情况本系统功能模块设计分为如下几个模块:1主页:在这里我们可以看见本系统的主要功能和信息。2用户注册:在这里我们可以注册我们的基本信息,其中电话和Email是比较重要的,因为我们需要对这些信息进行处理,以方便用户的付款和邮购。3用户登录:为了方便用户的付款,邮购和管理,我们需要变成会员后才可以进行消费。4客房浏览:成功登录后的用户可以分页浏览客房,并将想要的客房提交到填写订单页面。如果用户还没有注册就直接进入或者没有成功登录就进入页面,将被连接到“用户登录页面”。5预订客房:成功登录的用户可以在该页面定购所需要的客房。如果用户还没有注册就直接进入或者没有成功登录就进入页面,将被连接到“用户登录页面”。6查看订单:成功登录的用户可以在该页修改已经预订的客房。如果用户还没有注册就直接进入或者没有成功登录就进入页面,将被连接到“用户登录页面”。7修改订单:成功登录的用户可以在该页修改或删除已经预订的客房。如果用户还没有注册就直接进入或者没有成功登录就进入页面,将被连接到“用户登录页面”。8客房查询:成功登录的用户可以在该页查找自己需要的客房。如果用户还没有注册就直接进入或者没有成功登录就进入页面,将被连接到“用户登录页面”。9修改密码:成功登录的用户可以在该页修改自己的密码。如果用户还没有注册就直接进入或者没有成功登录就进入页面,将被连接到“用户登录页面”。10修改个人信息:成功登录的用户可以在该页修改自己当初注册时的信息。如果用户还没有注册就直接进入或者没有成功登录就进入页面,将被连接到“用户登录页面”。11管理员:查看用户订单,查看用户信息,并根据用户信息和用户订单对客房进行发派。4.5 系统的体系结构如图4-3为三层结构图:数 据 库逻辑处理视 图图4-3 三层结构图即:JSP技术 + JavaBeans + SQLServer2000 数据库就是从视图进行逻辑处理后进入数据库。第五章 数据库设计5.1 数据库系统概述数据库系统是在文件系统的基础上发展而来的,经历了层次数据库、网状数据库、关系数据库三个阶段。由于关系数据库采用人们比较容易理解和接受的二维表格来组织数据,发展迅速,已成为数据库客房的主流。本系统的前端开发是使用JSP技术,通过JavaBeans进行逻辑控制和数据库连接,而后台数据库采用的是SQLServer2000。SQLServer2000数据库管理系统是一项全面完整的数据库与分析客房。SQLServer2000非常容易学习、使用,介绍、学习资料比较多,SQLServer2000全面支持Web功能的数据库解决方案,与此同时,SQLServer2000还在可伸缩性与可靠性方面保持着多项基准测试纪录,而这两方面特性又都是企业数据库系统在激烈市场竞争中克敌致胜的关键所在。无论以应用程序开发速度还是以事务处理运行速度来衡量,SQLServer2000都堪称最为快捷的数据库系统。对比SQLServer2000和其他的大型数据库管理系统,SQLServer2000 具有可靠的安全性,较快的存储速度,高度的兼容性,简单易用,应用SQLServer2000作为后台数据库为系统的开发提供了强有力的支持,并对以后软件的运行提供了坚实的基础,因此,我们采用了SQLServer2000作为后台数据库。5.2 数据库表设计数据库的概念结构设计完毕后,现在可以将上面的数据库概念结构转化为某种数据库系统所支持的实际数据库模型,也就是数据库的逻辑结构。在酒店业务管理系统数据库中各个表的设计结果如表所示。每个表格表示在数据库中的一个表。表5-1为管理员信息表,存储系统中的管理员信息。表5-1 管理员信息表(Admins)列名数据类型字段大小必填字段默认值说明Account文本20是无管理员帐号(主键)Name文本20是无管理员姓名Pwd文本20是无管理员密码表5-2为会员信息表,记录系统中注册用户的详细信息。表5-2 会员信息表(Member)列名数据类型字段大小必填字段默认值说明MemberID文本20是无会员帐号(主键)Name文本20是无姓名Sex文本20是男性别Pwd文本20是无密码Question文本20是无忘记密码问题Answer文本20是无忘记密码答案Email文本20是无E-mailPhone文本20是无电话Address文本20是无地址ZipCode文本20是无邮编表5-3为客房信息表,记录系统中已有客房客房的信息。表5-3 客房信息表(Product)列名数据类型字段大小必填字段默认值说明ID自动编号长整型是无客房编号(主键)ProductType数字长整型是无客房类型编号Name文本
展开阅读全文