基于ssh 酒店管理系统(含源文件)

上传人:第*** 文档编号:57319069 上传时间:2018-10-20 格式:DOC 页数:44 大小:775.50KB
返回 下载 相关 举报
基于ssh 酒店管理系统(含源文件)_第1页
第1页 / 共44页
基于ssh 酒店管理系统(含源文件)_第2页
第2页 / 共44页
基于ssh 酒店管理系统(含源文件)_第3页
第3页 / 共44页
基于ssh 酒店管理系统(含源文件)_第4页
第4页 / 共44页
基于ssh 酒店管理系统(含源文件)_第5页
第5页 / 共44页
点击查看更多>>
资源描述

《基于ssh 酒店管理系统(含源文件)》由会员分享,可在线阅读,更多相关《基于ssh 酒店管理系统(含源文件)(44页珍藏版)》请在金锄头文库上搜索。

1、信息系统课程设计报告基于ssh 酒店管理系统 班级:学号: 姓名: 小组成员: 二0一一 年 十二 月 对基于SSH的酒店管理系统摘要随着计算机的普及和计算机科学技术的飞速发展,人们开始越来越多地利用计算机解决实际问题。酒店面对大量的预定,入住以及人员管理和历史记录的查询等问题,采用原始方式处理既浪费时间、又浪费人力和物力,并且数据的准确性低,所以酒店管理系统的出现起到了很重要的作用。因此,总结前人的经验,开发交互性好,易于操作的酒店管理系统进行自动化处理变得十分重要,这正是本系统开发的目的和意义。本文介绍了酒店管理系统的开发过程。论文详细介绍了从系统的需求分析、可行性分析、概要设计、详细设计

2、、系统实现的整个开发过程。此系统实现了用户对客房的预定、用户自身信息的查询、用户对系统的留言、管理员对预定的处理、管理员对入住的接收,管理员对信息的查询,管理员对历史记录的查询,管理员对人员的管理,以及员工的签到等功能,实现了易安装性、易维护性和易操作性,并且系统运行稳定、安全。酒店管理系统的应用对酒店起到了重要的作用。此系统是对酒店前台的业务进行管理,对某些环节进行了优化,提高了工作效率,使酒店管理者能够及时了解收费状况的许多必要的信息,提高酒店的工作效率和竞争力。本系统是以Java平台作为开发环境,后台采用Mysql数据库,全面系统的介绍了整个软件的开发全过程,介绍了如何进行数据库连接,以

3、及如何构建成熟的系统。在酒店收费系统的设计过程中结合运用了SSH技术,实现一套适合中小型酒店的酒店管理系统。经历了一个比较完整的开发过程,并总结了开发过程中的实际经验和体会。关键词 酒店管理;Java语言;Mysql数据库;SSH框架The hotel management system based on SSHAbstractWith the popularity of computer and rapid development of computer science and technology, more and more people are using computers to s

4、olve practical problems. The application of hotel management plays a very important role. In the face of a large number of reservations and occupancy, as well as personnel management, and historical recordsquery, human processing can absolutely waste time, along with human and material resources, wh

5、ere the accuracy of the datais low. Therefore, developing a friendly interface, easy operation of the hotel management system for automated processing becomes very important, which is the purpose and significance of this system development.This paper introduces the process of hotel management system

6、 development.This paper introduces the process ranging from the requirements from the system analysis, feasibility analysis, outline design, detailed design to system implementation.it plays an important roles in the system.This system enables customers to book hotel rooms, ask for information, leav

7、e message for system. It also enables the administrator to treat reservations, receive the check-in, look for information and historic records, and manage staff, which also includes the functions like staff attendance. It realizes the goal of easy installation, easy maintenance and easy to operate,

8、and the system is stable and safe.This system deals with the business of the hotel, optimizes some segments, improves efficiency which enables hotel managers to keep abreast of charge status of many information. It not only improves efficiency but also enhances the competitiveness.The system is base

9、d on Java as the development environment, with the background using Mysql. It introduces a comprehensive system of the whole process of the entire software development, describes how to manage the database connection, and how to build sophisticated systems. Charging system in the hotel design proces

10、s using a combination of SSH technology, makes a hotel management system for small and medium hotels.After a more complete development process, it summarizes the practical experience of the development process.Keywords: Hotel management; Java language; Mysql database; SSH frame目录摘要IAbstractIIThe hot

11、el management system based on SSHIIIAbstractIII第1章 绪论11.1 课题背景11.2 研究目的11.3 研究意义21.4 研究现状21.5 研究内容31.6 论文结构3第2章 相关知识简介52.1 JAVA简介52.2 JAVA概况52.2.1 JAVA的特点52.2.2 JAVA的优势62.2.3 JAVA的应用范围62.3 MySql简介72.3.1 MySQL应用概述72.3.2 MySQL的优势72.4 SSH框架概述72.4.1 SSH的机制82.4.2 SSH的特点92.4.3 SSH的工作流程92.5 本章小结10第3章 需求分析1

12、13.1 系统需求分析113.2 可行性分析123.3 开发模型133.4 本章小结13第4章 概要设计154.1 项目规划154.1.1 系统模块154.1.2 系统构架164.2 项目设计174.3 设计目标184.4 开发及运行环境184.5 本章小结18第5章 详细设计195.1 系统总体分析195.1.1 系统工作流程分析195.1.2 系统总体架构205.2 系统模块划分205.3 数据库设计215.4 本章小结25第6章 系统实现266.1 系统结构实现266.2 管理员模块实现286.2.1 房间刷选实现286.2.2 立即入住实现296.2.3 预定入住实现306.2.4 用

13、户退房实现316.3 本章小结31第7章 系统测试327.1 测试背景及方法337.2 测试过程337.2.1 测试登录功能337.2.2 管理员管理模块测试357.3 本章小结36结论37第1章 绪论1.1 课题背景如今酒店管理系统已经成为一个酒店不可缺少的部分,它的功能对于企业的用户和管理者来说都是至关重要的,因此,酒店管理系统应该能够为用户提供方便的服务,充足的信息和快捷的查询手段,以往人们一直使用传统的人工方式管理,这种管理方式存在着许多缺点,诸如效率低,保密性差等,而且时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。随着科学技术的不断提高,计算机科学不断发

14、展,其强大的功能已经被人们深刻认识,它已经进入了人类社会的各个领域并发挥着越来越重要的作用。基于SSH的酒店管理系统实现了信息及人员的全过程追踪和动态管理,从而做到简化预定客房过程,优化入住客房速度,改变以往排队多、等候时间长、秩序混乱的局面。同时酒店管理系统的实施也强化了酒店内部管理,降低了员工的工作强度和时间,人为因素造成的漏现象可以解决,也加速了处理速度,减少用户流程。酒店管理系统为管理者提供了收费状况和历史记录等许多有用的信息,也由于许多因素的影响:如提供的信息是否充足,数据的处理是否快捷等,使得繁琐的管理在酒店运营中的地位越发重要,越来越多的人都在关心酒店管理的重要性问题。本系统作为

15、一个管理信息平台,在一定程度上便是适应这样的发展的需求。1.2 研究目的在信息高速发展的今天,使用快速有效的工具和设备是所有行业保持领先优势的必须手段,为了更好的对酒店业务进行管理和协调,所以使用酒店管理系统是对酒店和宾馆有很多益处的,为了使系统能够很好的适应业务变化系统具有了良好的业务扩展和业务定制能力,解决了用户需求经常变化软件系统长期难以定型的问题,我对此进行了一些相关调查并开发实现了一个适用于中小型酒店和宾馆的管理系统。1.3 研究意义信息化的今天,酒店管理收费系统的应用,使高效率的酒店管理模式成为可能。通过本酒店管理系统,酒店的相关工作人员通过签到可以提高自身的工作效率,并且通过历史

16、记录和收费纪录能够做好金钱的查询和协调工作;通过本酒店管理系统,酒店的决策者可以直接管理和运营相关的业务,有效地发现和挖掘前景,及时与自己的上级、下属、同行业单位进行的沟通与交流,同心协作,积极为酒店事业的发展与决策贡献力量。使酒店管理适应时代的发展要求,大大提高了在大量服务机构中的核心竟争力。1.4 研究现状国外的酒店管理系统最早是于70年代初发展起来的,到了80年代,国外的酒店管理系统,如EECO(Electronic Engineering CO)、HIS(Hotel Information System)、CLS、Lodgistix等,整个模式已基本定型,技术较成熟,功能也较齐全。现在

17、,国外酒店正向个性化方向发展,酒店按其经营方式可分为商务型酒店、长住型酒店、度假型酒店等等;按其经营形式可分为独立经营饭店、集团经营饭店等。而且产生了一大批国际级的联号饭店,如希尔顿(Hilton Hotels Corp)、谢拉顿(Sheraton Corp)、假日(Holiday Corp)、凯悦(Hyatt Hotel Corp)等集团公司的世界饭店。国内的酒店计算机管理系统最早是在80年代初开始的,从事该方面工作的有清华大学自动化系的金国芬教授、西安交大和浙江省计算技术研究所。到了80年代中后期,随着国外饭店计算机系统和先进管理技术的大规模引进,进一步促进了我国酒店管理技术的发展。国内酒

18、店管理系统正是在充分吸收国外管理系统的精华,结合国内实际的情况下逐步发展成熟,到90年代初期形成了几个较成熟的软件系统,同时产生了许多专职从事酒店计算机管理系统的公司。其中比较有影响的有杭州西欧Foxhis饭店管理系统、北京中软好泰CSHIS管理系统、北京华仪饭店管理系统和广州万迅千里马饭店管理系统。到了90年代中期,随着计算机在饭店中的普及应用,以及计算机技术的不断发展,酒店计算机系统的发展到了一个新的时期,新的系统平台、新的软件功能、新的系统特点及发展方向不断涌现。1.5 研究内容在项目开发之前,我做了认真仔细的需求调查,考查了一些酒店的实际需求,和具体工作流程,进行详细的分析,然后经过整

19、理,列出了软件的需求及应该完成哪些模块和功能。在本系统中我实现了对酒店的各项管理,具体功能如下: 1管理员对预定房间的入住,退订,退房。 2管理员对未预定房间的入住,退房。 3管理员对用户信息的查看,删除。 4管理员对员工信息的查看,删除。 5管理员对系统留言的查看,删除。 6管理员对历史信息的查看。 7管理员对收费信息的查看。 8系统最大限度地实现了易安装性、易维护性和易操作性。 9系统运行稳定、安全可靠。1.6 论文结构 1分析研究目的以及研究意义,最终确定研究内容。 2简述程序设计所用相关知识以及语言,数据库和框架等。 3仔细研究,进行系统需求分析。 4明确项目模块,系统框架,进行系统概

20、要设计。 5仔细对功能进行分析,进行详细设计。 6系统的具体实现,并详细讲述每个功能。 7尽可能全面的进行系统测试,找出不安定因素。第2章 相关知识简介2.1 JAVA简介 Java是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台的总称,是一种简单的、面向对象的、分布式的、解释型的、健壮安全的、结构中立的、可移植的、性能优异、多线程的动态语言,很多软件就是用这个开发出来的。Java分为三个体系:JavaSE标准版,JavaEE企业版,JavaME微型版。2.2 JAVA概况Java的诞生是对传统计算机模式的挑战,对计算机软件开发和软件产业都产生了

21、深远的影响,基于构建开发方法的崛起,引出了CORBA国际标准软件体系结构和多层应用体系框架。在此基础上形成了Java平台和.NET平台两大派系,推动了整个IT业的发展。对软件产业和工业企业都产生了深远的影响,软件从以开发为中心转到了以服务为中心。中间提供商,构件提供商,服务器软件以及咨询服务商出现。企业必须重塑自我,B2B的电子商务将带动整个新经济市场,使企业获得新的价值,新的增长,新的商机,新的管理。对软件开发带来了新的革命,重视使用第三方构件集成,利用平台的基础设施服务,实现开发各个阶段的重要技术,重视开发团队的组织和文化理念,协作,创作,责任,诚信是人才的基本素质。总之,目前以看到了Ja

22、va对信息时代的重要性,未来还会不断发展,Java在应用方面将会有更广阔的前景。2.2.1 JAVA的特点 1语言简单 Java丢弃了C+中很少使用的、很难理解的、令人迷惑的那些特性,并提供了自动的废料收集,使得程序员不必为内存管理而担忧。 2面向对象 Java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制。 3语言是分布式 它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、 ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。 4语言是可移植的

23、 Java系统本身也具有很强的可移植性,Java编译器是用Java实现的,Java的运行环境是用ANSI C实现的。 5语言是多线程的 在Java语言中,线程是一种特殊的对象Thread类已经实现了Runnable接口,因此,任何一个线程均有它的run方法,而run方法中包含了线程所要运行的代码。 6异常处理机制 为了使Java程式更稳定、更安全,Java引入了异常处理机制。能够在程序中产生异常情况的地方,执行相对应的处理,不至于因突发或意外的错误造成执行中断或是死机。2.2.2 JAVA的优势Java编程是面向对象的,使用它编程,可以帮助我们了解需求,定制功能更为强大的软件更好地为客户服务。

24、并且拥有语言动态,语言可移植语言可拓展、通用性强和易于扩充等优势。2.2.3 JAVA的应用范围Java主要针对企业级用户,适合一些企业级的开发,可以开发优秀的企业级平台的的程序、高效灵活的文件操作程序、高效灵活的数据库操作程序。总之,Web应用、移动设备、嵌入式设备、Linux客户端管理工具等应用方面,Java有不可比拟的功能。2.3 MySql简介2.3.1 MySQL应用概述SQL的全称是Structured Query Language,即结构化查询语言。SQL 语句可以从关系数据库中获得数据,也可以建立数据库、增加数据、修改数据。1986年ANSI采用SQL语言作为关系数据库系统的标

25、准语言,后被国际化标准组织(ISO)采纳为国际标准。SQL语言是一种非过程化语言,它一次处理一个记录集合,对数据提供自动导航。SQL语言允许用户在高层的数据结构上工作,而不对单个记录进行操作。SQL语言不要求用户指定数据的存取方法,而是使用查询优化器,由系统决定对指定数据存取的最快速手段。SQL语言可以完成许多功能,例如:查询数据;在数据库表格中插入、删除和修改记录;建立、修改和删除数据对象;控制对数据和数据对象的存取。2.3.2 MySQL的优势1使用了多种编译器进行测试,保证源代码的可移植性。 2支持AIX、FreeBSD、HP-UX、Linux、Mac OS、Novell Netware

26、、OS/2 Wrap、Solaris、Windows等多种操作系统。 3为多种编程语言提供了API。这些编程语言包括C、C+、Python、Java、Perl、PHP、Eiffel、Ruby等。 4支持多线程,充分利用CPU资源。 5优化的SQL查询算法,有效地提高查询速度。6提供TCP/IP、ODBC和JDBC等多种数据库连接途径。 7提供用于管理、检查、优化数据库操作的管理工具。 8可以处理拥有上千万条记录的大型数据库。2.4 SSH框架概述针对当前Web应用程序开发面临的问题,结合目前比较流行的开源框架Spring、Struts和Hibernate,提出了一种开发J2EE Web应用的轻

27、量级解决方案,以帮助开发人员在短期内搭建结构清晰、可复用性好、维护方便的Web应用程序。并且,通过案例具体说明了如何将这一方案应用到实际项目中。大型企业级Web应用系统的开发通常要求有一个良好的软件架构、便于协作开发和扩展升级,而传统的开发模式不能很好地满足这些要求。本文针对当前Web应用程序开发面临的问题,结合目前比较流行的开源框架SSH,提出一种开发J2EE 企业级Web应用的轻量级解决方案,并通过案例具体说明如何将这一方案应用到实际项目中。目前,市场上出现了一些商业的、开源的基于J2EE的应用框架,其中主流的框架技术有:基于MVC模式的Struts框架和基于IoC模式的Spring框架以

28、及对象/关系映射框架Hibernate等。2.4.1 SSH的机制 Struts是一个在JSP Model2基础上实现的MVC框架,主要分为模型、视图和控制器三部分,其主要的设计理念是通过控制器将表现逻辑和业务逻辑解耦,以提高系统的可维护性、可扩展性和可重用性。 Spring是一个解决了许多J2EE开发中常见问题并能够替代EJB技术的强大的轻量级框架。这里所说的轻量级指的是Spring框架本身,而不是指Spring只能用于轻量级的应用开发。Spring的轻盈体现在其框架本身的基础结构以及对其他应用工具的支持和装配能力。 Hibernate有自己的面向对象的查询语言HQL,HQL功能强大,支持目

29、前大部分主流的数据库,如Oracle、DB2、MySQL、Microsoft SQL Server等,是目前应用最广泛的O/R映射工具。Hibernate为快速开发应用程序提供了底层的支持。2.4.2 SSH的特点典型的J2EE三层结构,分为表现层、中间层(业务逻辑层)和数据服务层。三层体系将业务规则、数据访问及合法性校验等工作放在中间层处理。客户端不直接与数据库交互,而是通过组件与中间层建立连接,再由中间层与数据库交互。表现层是传统的JSP技术,自1999年问世以来,经过多年的发展,其广泛的应用和稳定的表现,为其作为表现层技术打下了坚实的基础。中间层采用的是流行的Spring+Hiberna

30、te,为了将控制层与业务逻辑层分离,又细分为以下几种。Web层,就是MVC模式里面的controller,负责控制业务逻辑层与表现层的交互,调用业务逻辑层,并将业务数据返回给表现层作组织表现,该系统的MVC框架采用Struts。Service层(就是业务逻辑层),负责实现业务逻辑。业务逻辑层以DAO层为基础,通过对DAO组件的正面模式包装,完成系统所要求的业务逻辑。DAO层,负责与持久化对象的交互。该层封装了数据的增、删、查、改的操作。PO,持久化对象。通过实体关系映射工具将关系型数据库的数据映射成对象,很方便地实现以面向对象方式操作数据库,该系统采用Hibernate作为ORM框架。Spri

31、ng的作用贯穿了整个中间层,将Web层、Service层、DAO层及PO无缝整合,其数据服务层用来存放数据。 2.4.3 SSH的工作流程初始化COM库,引入ADO库定义文件,用Connection对象连接数据库;利用建立好的连接,通过Connection,Commend对象执行SQL命令或利用Recordset对象取得结果记录集进行查询处理,使用完毕后关闭连接释放对象。ADO编程模型被设计成你只需集中完成两项简单的任务,即可完成对数据的绝大部分的操作: 1初始化COM库,引入ADO库定义文件。 2用Connection对象连接数据库。 3利用建立好的连接,通过Connection、Comma

32、nd对象执行命令。 4利用Recordset对象取得结果记录集进行查询、处理。 5使用完毕后关闭连接释放对象。 2.5 本章小结本章开始介绍了系统开发所涉及到的语言,框架和数据库,并详细介绍了这些开发工具的相关信息,并根据这些深入研究,为程序实现奠定了基础。介绍了开发这套管理系统的技术相关框架及主要开发工具进行了概要的介绍,通过需求分析后,考虑到客户的各种具体要求,制定了系统的基本功能,确定了系统的用户,及不同用户的使用权限。方便管理员对相关环境的搭建及维护。第3章 需求分析 3.1 系统需求分析需求分析是软件开发目的的基础,只有正确的需求分析才能知道什么是要做的,也能明确今后的目标是什么,才

33、能去具体的实现,才能决定如何去综合设计,以规划项目开发进度。在项目开发过程中,需求分析是非常重要的。需求分析的主要任务是更详尽的定义系统应该完成的每一个逻辑功能4。随着科技的发展以及人们生活质量的提高,对酒店管理的优化与研究势在必行。酒店管理系统的用户可以是用户,可以是员工也可以是管理员,实例包括用户的预定,查询,员工的签到,管理员的管理,查询等主要功能。经过相关的调查,要求在实例中的系统具有以下功能:1管理员对预定房间的接收入住,对现场用户的直接入住,对离开用户的退房,对用户的信息查询和删除,对员工的信息的查询和删除,对留言的查看和删除,对历史记录的查看,对员工签到的查看,对入账资金的查看等

34、一系列功能。 通过需求分析调查以后,考虑到酒店在处理每天遇到的大量数据,比如查看人员、房间、资金、员工时的状况,每天花费大量的人力来进行这方面的耗费,而且对资源的共享,任务分配,收费前瞻方面更是缺乏科学的管理。所以本系统针对以上问题有针对地列出了解决方案。 图3-1 管理员角色用例图如图3-1所示。管理员是系统的高级使用者,能使用系统的所有功能,可以对系统的所有信息进行浏览和修改。3.2 可行性分析本次毕业设计的题目是运用SSH技术实现酒店管理系统,可行性分析是以相对短的时间和相对低的成本确定给定的问题是否可行。为此,在技术可行性、经济可行性、操作可行性、维护可行性、安全可行性等五个方面来进行

35、可行性分析。1技术可行性。计算机技术的飞速发展,Java技术的灵活,易用,功能强大,Java语言的方便实用以及现在流行的各种数据库访问技术的广泛应用,给本系统的设计和实现提供了技术上的支持。因此,要设计酒店管理系统可以用Java语言和Mysql结合MVC结构进行编辑来设计应用程序。2经济可行性。由于有Java等技术的支持,使得本系统易于实现,从而降低了开发成本;同时,在开发过程中充分利用Java的MVC,使得数据处理和页面现实分离开来,易于程序的开发和今后的维护;另外,及时处理各项费用迎合现代酒店机构的需求,有很大的发展潜力。3操作可行性。本酒店管理系统在房间预订上做了详细地分析。满足了中小型

36、企业的业务要求,同时提供了查询的功能,方便快速查找相关的信息。本系统的操作界面友好,拥护可以很快熟悉整个酒店管理系统的功能,便于操作。此外系统由于软件技术先进,所以稳定性强,便于维护。因此,本医院收费系统满足操作可行性要求。4维护可行性。Java技术的灵活,Java语言的方便实用以及现在流行的各种数据库访问技术的广泛应用,本系统利用利用SSH轻量级框架将逻辑层,业务层,表现层完美的分离,使得单独维护某一部分变得轻松而简单,并且可以减少考虑对其它层的影响。5安全可行性。本酒店管理系统需经过多方位的严格测试,会尽可能覆盖更多的测试路径,使其变得更加安全,更加适宜用户使用。3.3 开发模型软件开发模

37、型的种类繁多,有很多优秀的开发模型可供使用,我在开发的过程中使用的是瀑布模型,瀑布模型核心思想是按工序将问题化简,将功能的实现与设计分开,便于分工协作,即采用结构化的分析与设计方法将逻辑实现与物理实现分开。将软件生命周期划分为制定计划、需求分析、软件设计、程序编写、软件测试和运行维护等六个基本活动,并且规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下落。从本质来讲,它是一个软件开发架构,开发过程是通过一系列阶段顺序展开的,从系统需求分析开始直到产品发布和维护,每个阶段都会产生循环反馈,因此,如果有信息未被覆盖或者发现了问题,那么最好“返回”上一个阶段并进行适当的修改,开发进程从一个

38、阶段“流动”到下一个阶段,这也是瀑布开发名称的由来1。瀑布模型是最早出现的软件开发模型,在软件工程中占有重要的地位,它提供了软件开发的基本框架。其过程是从上一项活动接收该项活动的工作对象作为输入,利用这一输入实施该项活动应完成的内容给出该项活动的工作成果,并作为输出传给下一项活动。同时评审该项活动的实施,若确认,则继续下一项活动。否则返回前面,甚至更前面的活动。3.4 本章小结通过需求分析后,考虑到客户的各种具体要求,制定了系统的基本功能,确定了系统的用户,及不同用户的使用权限。并使用了原型开发模型进行系统开发,为以后的开发奠定了坚实的基础和理论依据。需求分析在软件的开发中是非常关键的,一个软

39、件开发成功与否需求分析起着很关键的作用。第4章 概要设计4.1 项目规划4.1.1 系统模块本次毕业设计的酒店管理系统功能结构图如下图4-1所示。酒店管理系统由会员管理模块和房间管理模块组成,按照需求分析,规划系统功能模块如下。图4-1 酒店管理系统功能结构图 1会员管理模块,该模块可以实现以下功能:(1)会员管理。(2)会员信息查看。(3)增加会员。(4)删除会员。2房间管理模块,该模块可以实现以下功能:(1)房间管理。(2)房间入住,并结账。(3)房间预订。(4)房间退订。4.1.2 系统构架酒店管理系统的开发采用的是B/S的体系结构,B/S(Browser/Server)结构即浏览器和服

40、务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过浏览器来实现,极少部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所谓三层结构。相对于C/S结构属于“胖”客户端,需要在使用者电脑上安装相应的操作软件来说,B/S结构是属于一种“瘦”客户端,大多数或主要的业务逻辑都存在服务器端,因此,B/S结构的系统不需要安装客户端软件,它运行在客户端的浏览器之上,系统升级或维护时只需更新服务器端软件即可,这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本。B/S结构系统的产生为系统面对无限未知用

41、户提供了可能。当然,与C/S结构相比,B/S结构也存在着系统运行速度较慢,访问系统的用户不可控的弱点。 以目前的技术看,它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN,WAN,Internet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。特别是在JAVA这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效5。目前,软件系统的改进和升级越来越频繁,B/S架构的产品明显体现着更为方便的特性。对一个稍微大一点的单位来说,系统管理人员如果需要在几百甚至上千部电脑之间来回奔跑,效率和工作量是可想而

42、知的,但B/S架构的软件只需要管理服务器就行了,所有的客户端只是浏览器,根本不需要做任何的维护。无论用户的规模有多大,有多少分支机构都不会增加任何维护升级的工作量,所有的操作只需要针对服务器进行;如果是异地,只需要把服务器连接专网即可,实现远程维护、升级和共享。所以客户机越来越“瘦”,而服务器越来越“胖”是将来信息化发展的主流方向。今后,软件升级和维护会越来越容易,而使用起来会越来越简单,这对用户人力、物力、时间、费用的节省是显而易见的,惊人的。因此,维护和升级革命的方式是“瘦”客户机,“胖”服务器。成本降低,选择更多。现在的趋势是凡使用B/S架构的应用管理软件,只需安装在Linux服务器上即

43、可,而且安全性高。所以服务器操作系统的选择是很多的,不管选用那种操作系统都可以让大部分人使用windows作为桌面操作系统电脑不受影响,这就使的最流行免费的Linux操作系统快速发展起来,Linux除了操作系统是免费的以外,连数据库也是免费的,这种选择非常盛行。 4.2 项目设计本系统主要用于对中小型酒店进行管理。具体讲,酒店管理系统就是通过对用户,员工,管理员相应的实现一系列的功能来提高酒店的工作效率,最终达到发展目标的一种管理行为。并且要求能达到快速实现用户和管理的需求来提高效率,减少人力和物理的投入。4.3 设计目标 具体实现目标如下:(1)管理员房间管理。(2)管理员人员管理。(3)管

44、理员记录查看。(4)管理员预订管理。4.4 开发及运行环境硬件平台: 1CPU:amd x4 3.2GHz 2内存:2048MB以上软件平台: 1操作系统:Windows XP/Windows vista 2数据库:MySQL 3开发语言:JAVA 4开发框架:STRUTS2 SPRING HIBERNATE4.5 本章小结本章开始介绍了系统功能模块和系统构架,规定了项目的设计目标及运行环境,初步定义了数据库,制定出具体的数据库中所包含的表及其保存的主要信息。第5章 详细设计5.1 系统总体分析5.1.1 系统工作流程分析经过需求分析和概要设计后的,认真的对系统进行了详细的设计,分析了各个模块

45、的流程和步骤,并进行了流程的系统分析和测试,绘出的系统工程流程图总体工作流程图,如图5-1所示。图5-1酒店管理系统的总体流程图5.1.2 系统总体架构系统开发使用了B/S结构,即浏览器/服务器结构。用户工作界面是通过浏览器来实现,极少部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所谓三层MVC结构。MVC将程序分成视图层,逻辑层,模型层,这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本1。综上,本系统的具体架构图如下图5-2所示。图5-2 系统架构图1 管理员操作主要包括:管理房间,管理用户,管理员工,管理信息,管理资金,管理留言,管理记

46、录。5.2 系统模块划分酒店管理系统是根据现代酒店和宾馆的实际需求开发而成,通过系统把将人员,资金,房屋,员工,顾客统一管理,形成了集成的信息源;既使得酒店管理人员的以摆脱繁重的日常工作,又使得酒店决策者集中精力从战略的角度来考虑当前和未来的经费规划和管理政策。酒店管理系统主要为管理员模块。5.2.1管理员模块管理员模块主要应能实现:接收预定入住、立即入住、预定退订、用户退房、用户信息管理、员工信息管理、签到管理、资金查看、历史记录查看、系统留言管理等相应管理,完善了酒店管理相应职能,并且最大限度的优化了人力和物力。此模块分为10个部分设计:1预定入住:顾名思义,该设计会显示所有预定的用户,用

47、回前来的时候查找相应用户,收完房费后,点击“入住”即完成入住相关操作,并且资金自动走账到资金账目,可以后期查看。2立即入住:立即入住就是对没有经过预定的用户入住的功能,收取房费后点击“入住”,完成入住。3用户信息管理:用户信息管理实现了可以查询用户的信息,并且可以进行删除操作。4员工信息管理:员工信息管理实现了可以查询员工的信息,并且可以进行删除操作。5历史记录:该功能可以查看房间入住的历史记录。5.3 数据库设计本系统采用MySQL数据库。数据的保存和保护是数据库的工作,所以底层的引擎以一种保持数据的完整性和有效性的方式运作是非常重要的,这意味着关系数据库管理系统必须检查并拒绝任何无效数据进

48、入无保护的实际数据库,所以在数据库端强制执行数据完整性是非常必要的3。本系统使用的数据库有很有效的数据保护功能,对数据安全有了基础的保证。系统数据库名为hotelmanagement,数据库ycdb中包括8个数据表。数据表分别为:1用户信息表(user),用来保存会员和管理员信息。2角色表(role),用来记录用户担任角色和权限,例如管理员,员工,会员。3房间信息表(room),用来保存房间状态,编号,楼层,类型等。4房间预订表(orderroom),用来保存房间的预订信息,预订人姓名等。5住房记录表(liverecord),用来保存住房记录。若住房人为会员,将保存他的id.6房间类型(roo

49、mtype),保存房间价格,相应名称等信息。具体的数据库中的数据表的信息如下。管理员信息表(user),用来保存用户登陆的账号,密码。表的结构如表5-3所示。表5-3 user表的结构字段名称数据类型长度是否主键描述idint是编号usernameVarchar50否记录账号passwrodVarchar50否记录密码sexint1否性别ageint3否年龄nameVarchar20否真实姓名idcardVarchar20否身份证roleidint2否角色idregtimedate否注册时间角色表(role),用来保存角色信息。表的结构如表5-4所示。 表5-4 role 表的结构字段名称数据

50、类型长度是否主键描述idInt11是编号nameVarchar20否角色名称quanxianint3否权限房间表(room),用来保存房间相关相关信息。表的结构如表5-5所示。表5-5 room表的结构字段名称数据类型长度是否主键描述idInt11是idnumberint4否房间编号typeInt11否房间类型idloucengint2否房间楼层idzhuangtaiint2否房间状态房间预订表(orderroom),用来保存房间预订信息。结构如表5-6所示。表5-6orderroom表的结构字段名称数据类型长度是否主键描述idInt11是编号uidint3否记录会员用户idroidint3否

51、房间idnameVarchar20否订房人名称telint13否订房人电话cometimedate否预订入住时间regtimedate否预订时间ifendint1否记录是否不生效住房记录表(liverecord),用来保存房间入住信息。表的结构如表5-7所示。表5-7 liverecord表的结构字段名称数据类型长度是否主键描述idInt11是编号roidDatatime3否入住房间iduidSmallint3否会员用户idnameVarchar20否入住名称ageint3否年龄sexint1否性别idcardVarchar20否身份证sfTypeint3否收费类型pricefloat否价格r

52、egtimedate否入住时间房间类型表(roomtype),用来保存房间类型和相关价格。如:单人普通房、单人豪华房、双人豪华房等。表的结构如表5-8所示。表5-8 Users表的结构字段名称数据类型长度是否主键描述idInt11是编号nameVarchar10否名称hourpriceSmallint6否每小时价格daypriceTinyint1否每天价格sppriceVarchar30否特价5.4 本章小结本章详细介绍了本系统使用的体系结构,在此之上具体分析每个用到的工具核技术之间的关系,使系统的整体体系构架清晰明了。然后划详细分了用户操作框架,细分了系统的各个功能模块,并且对每个功能模块的

53、功能细分到底层,用来与后台数据库进行连接,为下面的系统实现打下了坚实基础。第6章 系统实现本次课程设计开发工具选用的是JAVA,数据库是使用的是MySQL 数据库。该程序是建立在MVC三层结构基础之上的。本系统基于B/S结构,采用结合了JAVA、SSH、J2EE等技术模式进行开发,在底层使用SQL数据库管理系统实现。6.1 系统结构实现本系统采用MVC三层结构进行设计,这三层分别是表示层,业务层和持久层。表示层中所执行的内容主要有:利用JSP实现页面间的交互,Service用来接收用户提交的表单等信息,然后Struts-confing.xml将接收到的信息交给Action处理。在业务层中,Sp

54、ring向Action提供数据处理DAO完成业务逻辑,并提供事务处理,在持久层中,Hibernate对象化映射和数据,交互处理Dao请求的数据并返回结果。设计中涉及到了几个主要的Java文件,包括Action,Vo,Dao,Service,下面对这些文件做简单介绍。Action:提交表单后通过xml文件交给Action处理,先倒入User等一系列的类所在的包,其后实例化一个对象,数据从页面获取来之后执行set方法设置这个对象,然后执行save方法,执行save操作必须注入相应的Service才能调用相应的save方法。Service:该文件在需要用到的时候调用Dao接口实现增,删,改,查的相应

55、操作,完成与数据库的联动操作。Vo:该文件是做出的Java文件,定义了各个类的实例,并写入了相应的get和set方法。Dao:Dao是一个interface接口,该接口定义了增,删,改,查的方法,以及接口的实现。从系统目的出发按照一定规律组织起来的、相互关联的系统元素的集合。从最基本的意义来说,系统是由相互关联的元素构成的。在与数据库的联系过程中主要用到的是Service,它通过调用Dao实现了与数据库的联动,在Service中,写了相应的类以及成员函数等。通常状况下,类的成员变量与对应的表中的列名相同。绝大多数成员函数所实现的功能各不相同,但是他们的编码格式很多都是非常相似的,所以在这里只介

56、绍部分类中成员函数的基本功能,并不对所有成员函数进行具体的代码分析,下面介绍包括user类,worker类在内的部分类和类的成员函数及函数的功能。1UserDao类UserDao类用进行与表user表,room表,advice表等的数据库操作,它的成员函数如表6-1所示。表6-1 UserDao类的成员函数函数名具体说明saveUser该函数主要用于用户注册功能,用户填写个人资料后,进行相应的保存。removeUser该函数主要用于查询用户信息,在用户登录的时候用来判断账号密码是否正确。findUserById该函数根据id获取用户指定信息。findAllUser该函数主获取是所有用户信息列表

57、updateUser该函数主要用于更新用户信息。checkUser该函数主要用于检测用户账号密码2RoomDao类RoomDao类用对room表进行操作表6-3 AdminDao类的成员函数函数名具体说明saveRoom该函数主要用于新增房间removeRoom该函数主要用于删除房间findRoomById该函数根据id获取房间指定信息。findAllRoom该函数主获取是所有房间信息列表updateRoom该函数主要用于更新房间信息。findsearchRoom该函数主要用于刷选房间信息。6.2 管理员模块实现管理员模块是该系统中比较主要的一个模块,大部分关于用户和员工的实现功能都与管理员模

58、块密切相关,例如用户的注册信息和员工的注册信息都通过管理员模块来查看和控制,用户的系统留言也通过管理员模块来进行留言的查看和管理,员工的签到纪律等相关信息也都是通过管理员模块来查看,房间的各种记录更是通过该模块来进行相应的控制的,所以说本模块起着主导作用,本模块要实现立即入住,预定入住,用户退房,用户和员工的信息管理,历史记录,资金记录,查看留言,查看签到,房间管理等。6.2.1 房间刷选实现房间刷选功能实现,如图6-13所示。1选择房间类型,例如双人豪华套房2选择楼层。3点击相应状态刷选房间 图6-13房间刷选界面 6.2.2 立即入住实现房间列表界面上点击空置房间图标,转入立即入住界面。立

59、即入住功能实现了对直接来到酒店入住的客户的管理功能,输入登记人姓名,身份证相关信息,点击登记。即可记录入住信息,相应房间将改为已入住状态,如图6-13所示。图6-13立即入住界面6.2.3 预定入住实现预定入住功能实现了输入相应信息预订,如图6-14所示。图6-14预定入住界面6.2.4 用户退房实现用户退房功能实现了入住酒店的客户离开时的管理功能,并且当入并且同时将历史记录写入,点击右图结账按钮进入相关结账界面,如图6-15所示。图6-15用户退房界面6.3 本章小结本章对整个系统进行全面的开发和编码,根据之前的准备对各个模块进行了编码,实现了各模块的功能,并建立了数据库的数据表,对数据库进

60、行了连接。第7章 系统测试软件测试是软件质量管理中最实际的行动。软件测试是有组织性、步骤性和计划性的。软件测试的种类可以根据测试形态、测试技术及测试模式来进行划分。就测试模式而言,测试方法可分为两种:白盒测试和黑盒测试。这两种方法的测试方向是不同的,白盒测试以测试的深度为主,而黑盒测试则是以测试的广度为主。白盒测试:又称结构测试,透明盒测试、逻辑驱动测试或基于代码的测试。白盒测试是一种测试用例设计方法,盒子指的是被测试的软件,白盒指的是盒子是可视的,你清楚盒子内部的东西以及里面是如何运作的。严格来说白盒测试有两大方面:数据流面和控制流面。数据流面就是测试资料进出系统的程序所经过的流程,控制流程

61、面就是测试程序在执行过程中每个阶段的流程。控制流程面有以下四点:1语句覆盖:每一个程序句述都被执行到。2分支覆盖:每一个程序的进出点都至少被执行过一次。3条件覆盖:分支覆盖再加上所有判断情况都至少被执行过一次。4条件组合覆盖:不同的组合的判断情况都至少被执行过一次。黑盒测试:又称为功能测试或数据驱动测试,是把测试对象看作一个黑盒子。测试人员并不需要对软件的结构有深层的了解,所进行测试着重与软件的功能。为了控制黑盒测试的执行,测试人员必须按照测试用例逐一进行,所以测试用例设计的好坏会直接影响到测试结果。1测试用例覆盖:Test Cases的每一个用例都被测试过。2输入覆盖:测试过程中所输入的数据

62、或资料必须一再地实验。3输出覆盖:测试过程中程序所产生的行为、反映及数据都必须一再地试验。所谓的测试用例就是将软件测试的行为活动,做一个科学化的组织归纳。而实际软件测试用例的目的,就是为了能将软件测试的行为转换为可管理的模式。基于时间因素的考虑,软件测试行为必须能够加以量化,才能进一步让管理阶层掌握所需要的测试时程,而测试用例就是将测试行为具体量化的方法之一。简单来说,测试用例就是设计一个情况,软件程序在这种情况下,必须能够正常运行,并且达到程序所设计的执行结果。如果程序在这种情况下不能正常运行且重复发生,那就表示软件程序有缺陷存在。7.1 测试背景及方法项目名称:基于SSH的酒店管理系统的优

63、化与研究。本软件系统采用JAVA作为开发环境,连接SQL数据库进行使用。测试计划阶段:制定测试进度。测试设计阶段:依据程序设计说明书,按照一定规范化的方法进行软件结构划分和设计测试用例。测试执行阶段:输入测试用例,得到测试结果。测试总结阶段:对比测试的结果和代码的预期结果,分析错误原因,找到并解决错误。7.2 测试过程测试人员根据本系统的功能设计测试用例,并依据测试用例的内容对本系统的各个功能模块进行测试。7.2.1 测试登录功能测试系统的登录功能,对登录方式进行测试。设计登录测试用例,以管理员界面登陆为例,如表7-1和表7-2所示。表7-1 登录测试用例设计案例应产生行为结果失败原因在管理员

64、登录密码栏内输入正确密码后按“确定”键进入系统成功在管理员登录密码栏内输入错误密码后按“确定”键系统必须告知“用户名或密码错误,请重新输入!”成功在管理员登录密码栏内不输入密码后按“确定”键系统必须告知“用户名或密码不能为空!”成功 测试的输入和输出举例: 1输入用户名:admin; 密码:admin。登陆成功进入酒店管理系统! 2输入用户名:123;密码:123。输出用户名或密码错误,请重新输入! 3输入用户名:空;密码:空。输出用户名或密码不能为空!表7-2 登录测试用例设计案例应产生行为结果失败原因在注册页面中输入已存在的账号密码显示“该账号已存在”成功在注册页面中输入未存在账号密码显示

65、“该账号可注册”成功测试的输入和输出举例:1输入账号:张三。显示“该账号已存在”。 2输入账号:李四。显示“该账号可注册”。7.2.2 管理员管理模块测试测试系统的管理员管理模块,主要针对入住房间,退订房间,用户信息等管理员管理模块的几项功能为例进行测试,该测试功能尽可能的覆盖更广泛的测试区域,使系统变得更完善,减少错误的发生几率,如表7-5所示。表7-5 管理员模块部分测试用例设计案例应产生行为结果失败原因在历史记录的列表中选择已退房的用户记录进行删除操作显示“删除成功”成功在历史记录的列表中选择未退房的用户记录进行删除操作显示“该用户未退房,不能删除”成功 测试的输入和输出举例:1在历史记

66、录的列表中选择已退房的用户记录进行删除操作。 显示“删除成功”。2在历史记录的列表中选择未退房的用户记录进行删除操作。显示“该用户为退房,不能删除”。7.3 本章小结本章主要对此系统进行了各个模块的测试,对酒店管理系统的设计与实现的测试主要使用黑盒测试法和白盒测试法。第一阶段主要使用白盒测试法,测试的主要内容是:是否能正常登录;是否能正常操作;是否能正常查看各种信息、修改信息、查询和删除信息。第二阶段主要使用黑盒测试法,测试的主要内容是:是否实现了医院收费系统的各项功能等。结论本次课程设计的系统开发结束了,系统已经基本成型,功能也都已实现,此系统实现了对酒店管理系统的用户管理模块,员工管理模块

67、,管理员管理模块,可以为一些中小酒店和宾馆使用。系统开发的过程是采用瀑布型的开发模型,这种开发方式的好处是在软件需求上的沟通确认。因为我已经先确定了软件的各个功能,所以使用这个模型有利于系统的更快更好的实现。当然系统中也存在很多不足之处,可以在以后版本中进行补充和改进。在这里我做了一些系统的改进思考:1灵活性能分析一方面在各个模块中可以增加自动统计功能,记录各个模块的访问次数,以了解经常使用的功能模块,从而在系统中设置相应的快捷键,方便工作人员操作,增加系统的可用性,另一方面也增加了统计分析的灵活性。做法如下:可在数据库中再增加一个数据表,用来保存访问每个系统页面的数量,可定期进行数据统计并保存在数据库中。考虑进一步完善操作管理模块以增加程序的灵活性可扩展性和可维护性。2功能设计定义操作用户可进行操作定义和操作项目设置一个操作,可有多个操作项目操作执行,系统自动根据操作项目序号依次执行操作项目,然后将结果保存到操作字段。这个功能的特点是将业务操作简化为一系列操作,系统管理员只需简单定义即可,建立一个新的业务操作逻辑避免将错误业务操作写入程序,增加了灵活性并简化了维护和扩展。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件 > 高中课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号