【基于Java EE技术宾馆客房管理系统的设计与实现8200字(论文)】_第1页
【基于Java EE技术宾馆客房管理系统的设计与实现8200字(论文)】_第2页
【基于Java EE技术宾馆客房管理系统的设计与实现8200字(论文)】_第3页
【基于Java EE技术宾馆客房管理系统的设计与实现8200字(论文)】_第4页
【基于Java EE技术宾馆客房管理系统的设计与实现8200字(论文)】_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于JavaEE技术宾馆客房管理系统的设计与实现目录TOC\o"1-3"\u绪论 1第一章关键技术简介 21.1JSP技术 21.2JavaEE技术 21.3MYSQL数据库 2第二章系统分析 32.1系统功能分析 32.2系统流程分析 32.2.1新用户注册 32.2.2用户登录 42.3系统结构分析 42.3.1系统的网络逻辑结构 42.3.2系统的物理结构 5第三章系统设计 63.1系统结构设计 63.2系统操作顺序图设计 63.2.1用户登录操作顺序图 63.2.2信息添加顺序图 73.3数据库基本设计 83.3.1各实体的E-R图 83.3.2数据库表设计 10第四章系统各界面的实现 144.1用户功能模块界面的实现 144.1.1网站首页 144.1.2用户登录页面 144.1.3客房详细信息界面 154.1.4客房预订界面 154.1.5用户个人信息管理界面 164.1.6用户订单界面 174.2管理员功能模块的实现 174.2.1管理员登录界面 174.2.2用户管理界面 184.2.3站内新闻管理界面 184.2.4房间信息管理界面 194.2.5预订管理界面 204.2.6预订统计界面 20第五章系统测试 225.1用户注册登录功能测试 225.2用户个人后台功能测试 225.3管理员综合功能测试 23第六章结论 24参考文献 25绪论当今社会的经济发展越来越迅速,衣食住行四个字中的“住”字在前三个字都能得到很好的解决的情况下变得越来越重要。这里的“住”不仅仅指的是作为刚需的商品房,而且也涵盖了人们平时出行时所需要宾馆等短期住宿的需求。人们越来越追求环境好、服务好、并且收费低廉的宾馆。而这种需求就推进了各大品牌的产业链进行升级,要做到提供良好的服务的同时还能保持合理的价格,就必须加快各种信息的转化效率,提升宾馆后台处理信息的速度。这就又刺激了在线宾馆管理系统的诞生,但是在信息化时代来临之前,要开发一个在线的宾馆宾馆客房管理系统十分的昂贵,所以只有很多高档的奢华宾馆才有资本来进行宾馆后台管理的升级,但是信息化时代来临之后,有很多轻量级的技术,能够在保证成本合理的情况下为中小型宾馆提供后台的数据管理和前台的在线订房等服务。本基于JavaEE的宾馆客房管理系统就是专为中小型宾馆所设计,开发技术和需要用到的软件全是开源免费并且表现稳定的版本,适合应对数据量中等,但价格要求低的系统开发要求。以往的人工管理数据的方法虽然价格不高,但是有着速度慢,出错率高等显著缺点,有了互联网的加持以后,各种数据,包括客户订房数据,新闻推送数据以及后台员工数据都能自动的从网页上的文本框中一口气传输并保存到数据库中,省去了中间环节因为人工的参与而导致的人力资源浪费和时间浪费,最重要的是还能显著降低错误率,保护客户的数据安全。在权限管理方面使用本系统也能相比于人工参与有很大的提升,只要一个用户的账号没有某一个权限,那么他就必定不能进行相应的高权限操作,这也能防止很多误操作的出现。客户在网页前端输入的数据会毫无保留的被保存在后台的数据库中,凡是按照正确格式输入的数据,均不会引发系统的问题。本系统还有很多除了数据处理方便安全之外的优点,例如权限分工明确,等级制度分明,能很好的适应一个宾馆的垂直化管理和扁平式的延伸。不仅是客户,员工的信息也能得到高效的管理,每个员工的信息都互不干扰,相互独立,而且管理员对员工信息不能拥有绝对的控制权,只有系统内部的超级管理员才能拥有全盘的控制,虽然也不能完全防范一些操作失误的出现,但是将这些失误出现的机率已经尽可能地降到了最低。 第一章关键技术简介1.1JSP技术JSP技术简单来说就是一种能够让程序开发者在HTML静态网页中嵌入可运行的Java代码的一种编程规范,与ASP技术有很多相同的地方。并且通过之后的JSTL可以将嵌入网页中的Java代码转化为标签的形式,更加方便系统的编写。JSP技术的优点:(1)系统的多平台支持。由于Java自带JVM(Java虚拟机),所以Java语言自身就有很强的可移植性,所以Java的这个特点也就自然而然地成为了JSP技术的特点。JSP可在大部分主流的操作系统上运行,基本不必担心因为更换操作系统平台而出现问题。(2)可塑造性很强。只需要几个jar包即可编写和运行多种多样的JSP页面,集群和负载平衡也能通过服务器进行实现,多个应用程序能在JSP技术的支持下相互配合。Java在由单到多台服务器的过程中显示了强大的能力。(3)来自开发工具的支持很大,Java已经是久经历史考验的语言,各种稳定的开发方式层出不穷。Java已经有了浩如繁星的编程方法,其中很大部分工具是无成本的,其中有很多都能在各种开发中游刃有余。1.2JavaEE技术系统的后端采用JAVAEE(JAVA企业版)开发软件。JavaEE即Java企业开发技术,主要就是针对网页版应用的开发,相比与其他两个Java开发版本,其更适用于作为本系统的后台开发技术,对大型的web应用开发提供了很多方便且使用的工具JAVAEE多用于企业的开发,具有较高的权威性,是存在于JAVASE平台上的,JAVAEE能够提供满足各种代码环境以及部署环境,并已经开始成为通用标准对于企业级Java开发。可管理的块能够被优化批处理操作所实现,OLTP的性能大幅度提高,多线程并发任务有了hendade优化。1.3MYSQL数据库MYSQL是很主流的数据存储系统,不仅体积小,速度较快,并且成本较低,所以MYSQL成为了本系统采用的数据库,MYSQL经常被中小型网站用来保存自己的数据。MYSQL数据库中的各种数据是存放在附带各种关系的表中的,所以它的速度较快,而且也较为的灵活。因为需要契合开发成本低,功能稳定的本系统的特点,所以选用拥有开源,免费,稳定等特点的MYSQL数据库作为所采用的数据存储软件。第二章系统分析2.1系统功能分析经过简单的分析,此毕业设计的宾馆客房管理系统的初步定为两大模块:系统后台管理员模块和前台用户模块。(1)后台管理员功能分析后台管理员的主要任务是负责系统后台的数据处理,保存,修改等动作,管理员在点击后台登录后需要输入用户名和密码,才能进入后台管理界面,而且管理员还分为超级管理员和普通管理员,普通管理员只有一个,通过数据库表中的字段相区别,超级管理员能手动添加普通管理员,并且有整个网站的最高管理权限。(2)用户功能分析用户在未登录是可以以游客的身份浏览网站的基础页面,查看房间,查看推送的新闻,但是要在线预定房间的话必须要注册账号后才能操作。如果不在登录状态直接预定房间的话,系统会在弹出提醒后自动跳转到首页。2.2系统流程分析2.2.1新用户注册未登录的用户只能浏览信息,不能进行预定操作,需要在注册页面注册一个账号,下图2-1为新用户的注册了流程。图2-1新用户注册流程图2.2.2用户登录登录主要是普通用户和管理员用户的分权限登录,每个角色对应不同的数据表,不同权限的用户登录时只需查询不同表即可,下图2-2为总概括的用户登录流程。图2-2总概括的登录流程图2.3系统结构分析2.3.1系统的网络逻辑结构本系统的前端就是一个web页面,可以使用户不经过很复杂的操作就能登录进系统并且开始想要的操作。在进行了对应的操作之后,用户的信息就会插入到数据库对应的表中,例如在用户订房后,用户id和所被预定的房间id就会插入到订单表中,管理员查看订单的过程就是系统从数据库中查询数据,然后经过一系列的传输,显示在前端页面上的过程。在本系统的网络流程中,最重要就是系统服务器,它负责处理用户从前端传过来的数据信息和操作信息,简而言之就是得到对应的信息,然后根据要求从后台数据库中提取数据以显示在网页上或者将网页上文本框中的数据插入到后台的数据库中。本系统的网络流程示意图如图2-3所示:图2-3系统的网络流程示意图2.3.2系统的物理结构此基于JavaEE的宾馆客房管理系统的业务逻辑较为简单,功能逻辑也不复杂,所以相应的物理结构也就不会很复杂。总的来说就是多个浏览器与一个web服务器形成一个多对一的关系,然后一个web服务器只对应一个数据库服务器,这种发散式的物理结构虽然比较容易造成服务器阻塞,但是对于一个还在开发和初步实现阶段的系统,因为数据量的规模不大,所以非常的适用。系统实现的物理结构如图2-4所示:图2-4系统实现的物理结构图第三章系统设计3.1系统结构设计在开始着手开发之前,首先本人分析了以下系统所需的基本模块,结合了实际的需求和目前的技术上的约束,主要将本系统初步划分为了两大模块:管理员模块和用户模块。管理员模块又再次细化分为:管理员登录,系统用户管理,新闻数据管理,系统简介设置,变换图管理,客房管理,预订单管理,订单统计等小型模块;用户模块也细分为:用户登录,用户注册,个人信息管理,房间预订,密码修改,评论客房等基础操作模块。以下为设计好的系统细化结构图图3-1系统细化结构图3.2系统操作顺序图设计3.2.1用户登录操作顺序图登录的操作顺序基本所有正常的系统都大同小异,由用户从前台页面输入自己注册好的用户名和密码,然后通过对应的servlet经过简单的格式验证后传输到后台与数据库中的数据进行比对,比对验证通过后后台给前端返回一个正确标记,才能往下一个对应的页面跳转。如下图所示。图3-2用户登录顺序图3.2.2信息添加顺序图不论是管理员还是用户都能对自己的注册信息进行基本的添加,用户可以添加自己所预定房间的信息(订房功能),而管理员可以添加的信息就比较多,有新闻信息,客房信息,用户信息和订单信息。这些信息添加操作的本质都是将前端输入的数据在简单的格式检查之后由对应的servlet传输到后台,并且存入数据库,存入成功之后后台也会返回一个正确标识,表示此条数据已经正确地保存在系统数据库中了。图3-3信息添加顺序图3.3数据库基本设计3.3.1各实体的E-R图系统E-R图即实体-联系图,主要是用来表现系统或者数据库中各个实体之间的联系的以及实体与其属性之间的联系的,但是因为本系统的功能要求很简单,逻辑并不复杂,所以实体与实体之间联系很少且无很大用处,所以以下只列出了各实体与其对应的属性之间的关系。(1)管理员信息实体属性图如图3-4所示。 管理员分为超级管理员和普通管理员,区别就在于超级管理员在数据库中的权限字段与普通的不同,其他的属性都差不多,就不一一介绍。图3-4管理员信息实体属性图(2)新闻推送实体属性图如图3-5所示。 新闻实体用于将管理员添加好的新闻从数据库显示到网站首页上,因为数据库的字段长度有限,所以不能添加长度大于255个字符的新闻。 并且每当有用户点击了该新闻后,该新闻的点击率会上升,这个小功能往后可以作为广告精准投放的一个支点。而且此新闻实体的属性非常详细,能够让后续的管理员的系统维护工作变得很方便。图3-5新闻推送实体属性图(3)订房用户实体属性图如图3-6所示。 订房用户的属性是本系统中最为复杂的,因为涉及到预定房间,所以很多关于身份验证的信息必不可少,例如身份证,出生年月和确保关键时候能联系到本人的联系方式等。所以在申请账号时不仅要求填写身份证号和电话,还要求填写QQ号码和邮箱地址,以备不时之需。图3-6用户信息实体属性图(4)房间信息实体的属性是除了用户的属性之外最复杂的,本系统的所有实体的属性都是结合了本人的自身体验,所以会比较贴近实际生活,也因此会比较的复杂,好在毕业设计的时间比较充分,所以能有足够的时间来处理很多的数据字段信息。这些信息主要也是为了以后更好的维护数据所建立的,除了客房信息外,所有的实体也基本有插入时间的字段,对于后期的维护来说十分方便。而且也符合日常生活中预定房间时的信息要求。图3-7房间信息实体属性图(5)预订单信息实体的属性看起来很多,但是基本上就是预定用户实体和房间信息实体的属性总和,所以对应的只需要在数据库中,将提交预定的用户的信息和被预定的房间的信息一起插入订单表,就能保存一条对应的订单信息了。图3-8预订单信息实体属性图3.3.2数据库表设计本基于JavaEE的宾馆客房管理系统的数据库实现是使用的MYSQL数据库,简洁高效,但是由于本人实际开发经验不足,所以在数据库表设计上还有很多不足的地方,例如数据冗余重复等缺点,希望在以后的开发中加强自己的开发技术,学习如何优化数据库结构。表3.1allusers管理员信息表表3.2xinwentongzhi新闻信息表表3.3yonghuzhuce用户信息表表3.4kefangxinxi客房信息表表3.5yuding预订信息表第四章系统各界面的实现4.1用户功能模块界面的实现4.1.1网站首页用户在浏览器键入网站地址时就可以看到这个页面,并且下拉后还能查看到新闻推送,客房简介以及关于本系统的一点介绍。图4-1网站首页4.1.2用户登录页面用户在申请了新账号之后就能用申请通过的账号来登录进入系统。图4-2用户登录界面图4.1.3客房详细信息界面用户可以点击首页的房间图片或者进入客房信息页面选择到合适的房屋信息后再点击进入客房详细信息页面。房间详细信息页面不仅会显示房间号,地址,价格等信息,也会显示所有有关此房间的所有评论以及评论人和时间,帮助用户对自己正在预定的房间提前建立一个心理预期。图4-3客房详细信息界面图4.1.4客房预订界面用户在客房预订的时候需要填写相关信息,这里所需要填写的信息主要是根据现实生活中所需要的信息来设置的,所以稍稍的有点繁琐,不过前端会将一些信息预先填写好默认值,所以对于用户的操作来说也很简单,即使是不太懂电脑的人也能很好的完成预定操作。图4-4客房预订界面图4.1.5用户个人信息管理界面用户输入正确的账号密码登录成功后,系统会返回首页,此时用户可以点击右上角的个人后台按钮进入到独有的信息管理界面,可在左边的菜单栏中选择想要的操作,可以修改密码和查看其他基本信息。图4-5个人资料管理界面图4.1.6用户订单界面用户在个人后台页面还可以点击页面左侧的预定查询按钮查询自己已经预定成功的房间和订单信息。并且可以直接在此界面选择是否去支付未支付完成的订单。图4-6用户订单界面图4.2管理员功能模块的实现4.2.1管理员登录界面管理员在未登录时点击页面上的后台管理按钮跳转到如下页面,输入正确的账号,密码以及验证码就能进行登录。图4-7管理员登录界面图4.2.2用户管理界面用户管理功能是普通管理员和超级管理员共有的功能,超级管理员在功能上只是比普通管理员多了一个添加管理员的功能。管理员可以在此界面查看到用户注册时的所有信息,包括真实姓名,头像,积分和等级等。图4-8用户管理界面图4.2.3站内新闻管理界面所有管理员都拥有对站内新闻的增删改查权限,在查询界面只能看到新闻的标题,不能看到正文,避免了数据量太大形成页面混乱的问题。正文可以在添加界面添加,还能插入图片等附件,确保了新闻信息的生动,准确。图4-9新闻数据管理界面图4.2.4房间信息管理界面所有管理员都能对房间信息进行增删改查,前端显示的客房信息主要是编号,类型,名称,星级,地址,电话,照片等基本信息,还可以点击详细按钮进去某个客房的详细介绍页面。管理员还能对每个客房的评价进行操作,客房的积分能够让预定它的用户增加相同的积分,积分数达到一定程度可以提升用户等级,然后管理员会给与其相应的折扣,为后续的预定省下很多钱。图4-10客房管理界面图图4-11添加客房界面图4.2.5预订管理界面管理员可查看用户预订信息,并可对其进行修改和删除操作,预订管理界面展示如图4-12所示。图4-12预订管理界面图4.2.6预订统计界面管理员可以点击后台界面左边菜单栏的预定统计界面来查看可视化的统计信息,包括按客户流量统计(图4-13)以及按营业额统计(图4-14)。图4-13按客户流量统计界面图图4-14按营业统计界面图第五章系统测试一个系统的逻辑和代码完整与否,就要看这个系统能通过多少的测试案例,能通过多少边缘数据的检验,系统测试的主要方法有白盒测试,黑盒测试和灰盒测试,黑盒测试主要是功能测试,白盒测试主要是逻辑结构和功能测试,本次测试主要还是进行黑盒测试,因为时间上和技术上都存在不小的困难,所以只能进行基本的功能测试,以下为各个模块具体的测试细节。5.1用户注册登录功能测试用户的登录注册功能是所有系统的基本功能,主要的测试任务就是考验在注册时输入不符合格式要求的数据和在登录时输入错误的密码能否继续操作。表5.1用户登录注册功能测试表输入用户类型预期输出实际输出正确的注册信息普通用户注册成功注册成功用户名重复的信息普通用户注册失败,提醒重复注册失败,提醒重复注册成功的账号密码,正确的验证码普通用户成功登录成功登录错误的验证码,其余均正确普通用户登录失败登录失败未注册的账号密码,正确的验证码普通用户登录失败登录失败5.2用户个人后台功能测试个人后台功能主要是用户修改个人密码,查看个人信息,增删改查个人订单等功能,以下是对这几个功能的测试结果。表5.2用户个人后台功能测试表输入用户类型预期输出实际输出点击个人后台普通用户成功进入个人后台页成功进入个人后台页修改密码,两次输入不同普通用户修改失败修改失败修改密码,两次输入相同普通用户修改成功修改成功查看个人订单普通用户成功展示个人订单成功展示个人订单删除订单普通用户删除后继续展示删除后继续展示修改个人信息普通用户成功修改成功修改5.3管理员综合功能测试管理员的功能比较复杂,所以在此总和在一张表中,避免混乱。表5.3管理员综合功能测试表输入用户类型预期输出实际输出添加管理员超级管理员添加成功添加成功站内新闻查询所有管理员正常显示正常显示站内新闻添加所有管理员添加成功且显示正常添加成功且显示正常添加首页轮播图所有管理员添加成功且显示正常添加成功且显示正常添加用户所有管理员添加成功且显示正常添加成功且显示正常添加客房所有管理员添加成功且显示正常添加成功且显示正常查询预订单所有管理员成功显示成功显示预订单统计所有管理员与实际数据一样与实际数据一样第六章结论要说这个毕业设计,其实我真正开始写代码的时间非常的不足,前期准备时主要都是在学习一些JavaWeb方面的基础知识(例如jsp规范和servlet技术),在跟着网络上的教学视频做了一点小的操作之后才着手开始毕业设计的实现,但是之后又发现自己对前端的知识也很匮乏,所以又学习了js和jquery的一点东西,然后才开始着手实现毕业设计。在做毕业设计之前,我只是从感官和理论的水平上上建立了对一个在线管理系统的认识,是“井底之蛙”,只有很局限的一点点了解,但是一旦落到实处,对一些细节的掌控和实现便会无从下手,这也是缺乏开发经验的一种体现。这次通过该基于JavaEE的宾馆客房管理系统毕业设计的制作,也成为了我磨砺自己的一个很好的机会。一些从未遇到的问题在开发时都会出现,但困难就是应该被战胜的,通过在CSDN,github等代码开源网站以及和老师,同学的讨论,遇到的问题基本上都得到了顺利的解决。在设计的过程中,在代码的着手实施编写方面,本人有较大的不足,在指导老师的推荐下,我也找到了不少的学习书籍和资料。对要实现的代码有了很多的新认识,进一步熟悉了JSP的代码实现。通过分析,计划出了网站的基本过程的图像,并且了解了网站设计的很多步调和框架,经历了很多细致规划的阶段。更正了自己的对于在线管理系统的不太准确的认识。了解到了逻辑上的细节才是决定后期用户体验的关键因素这个深切的道理,而且进一步认识到在动手写代码之前一定要多想,多推导才能在逻辑上无懈可击这个道理。基于JavaEE的宾馆客房管理系统设计过程中,因为缺少经验,出现了很多之前没预料到的问题,程序这方面大家都知道,有时少了一个等于号,或者疏忽下打成了中文的分号,程序就一定运行不成功,本人通过这次的系统设计,有一次真切的认识到一个真理:只有细致的进行每一步,自己的努力才能在最后关头得到体现。总的来说,此宾馆客房管理系统已经对毕业设计的要求进行了基本满足,不过因为本子自身的代码能力不太足够,虽然已经发现了一些问题,但是由于时间和个人技术等诸多因素的影响,尚未解决的问题还有一部分,有些尚未发现或者已经发现的错误没有得到解决。另外如果自己以后的方向是往参考文献[1]李燕.关于宾馆管理信息化实现的方法分析[J].中国管理信息化,2019,22(01):98-100.[2]杨丹,王志毅.论现代宾馆管理信息系统的构建[J].旅游纵览(下半月),2016(10):71.[3]吕春林,马丹.SSH框架整合实战教程[M].北京:清华大学出版社,2016:208.[4]张雨晨,石宇灏,姜攀.共享经济背景下共享单车数据库的分析与研究[J].电脑编程技巧与维护,2017(13):45-47.[5]董明明.企业级MySQL数据库在线监控系统的设计与实现[D].华中科技大学,硕士学位论文,2014.[6]王佳新,黄晓光,张蜜蜜.关系型数据库开源产品技术的应用[J].电子技术与软件工程,2019(18):172-174.[7]李彦鹏,邓爱珍,何希纯,陆金平.基于.NET的宾馆预订管理系统的设计与实现[J].电脑与电信,2019(07):

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论