主页 > 案例大全 > 论文在线分享-于SSM框架的网吧管理系统的设计与实现

论文在线分享-于SSM框架的网吧管理系统的设计与实现

2021-06-01 13:42:55

  在现如今这个被各种电子、科学技术充斥的社会下,每个行业都或多或少地涉及到先进的技术领域中,利用先进的技术来突出自己的优势壮大自己的业务范围和稳定业务,这其中就包括网吧管理系统。在互联网市场不断更新和丰富时,网吧的管理方式也随着改变,丢弃了以往的管理方式,不仅使降低了网吧管理系统管理难度,还提高了管理者的工作效率。网吧管理系统利用交互的方式让管理者方便使用系统和系统一起管理网吧。利用系统来管理网吧可以减少很多繁琐的事情,比如:数据的记载,费用结算问题。所以有专业的管理系统来管理对网吧是有很大好处的。

  本网吧管理系统主要包括前台展示模块和后台的系统的管理模块。是基于现在比较主流的SpringMVC+Spring+MYbatis(SSM)框架下利用jsp技术开发的。数据库这一部分是利用MySQL来实现的。系统的页面和功能的设计主要根据使用者的需求和对其他系统取长补短来完成的。最后设计出了简洁美观容易操作的界面。

  这次做的项目主要从管理端和用户端两大方面入手。其中管理端具备的功能有管理员管理、部门管理、订单管理、商品信息管理,维修记录管理,计时结算管理等功能。客户端主要是给用户来完成上下机结算时间费用,以及可以在这里进行店内商品点餐购买的功能。

  系统管理也都将通过计算机进行整体智能化操作,对于网吧管理系统所牵扯的管理及数据保存都是非常多的,例如部门管理、电脑信息、商品信息、维修记录、订单管理、会员管理、计时结算等,这给管理者的工作带来了巨大的挑战,面对大量的信息,传统的管理系统,都是通过笔记的方式进行详细信息的统计和记账,后来出现电脑,通过电脑输入软件将纸质的信息统计到电脑上,这种方式比较传统,而且想要统计数据信息比较麻烦,还受时间和空间的影响,所以为此开发了网吧管理系统;为用户提供了一个网吧管理系统平台,方便管理员查看及维护,并且可以通过需求进行设备信息内容的编辑及维护等;对于用户而言,可以随时进行查看上网记录信息和在线购买商品,查看订单信息,管理员可以足不出户就可以获取到系统的数据信息等,而且还能节省用户很多时间,所以开发网吧管理系统给管理者带来了很大的方便,同时也方便管理者对使用者的信息进行管理。

  本项目网吧管理系统的论文主要涉及到程序,数据库与计算机技术等。广泛涉及相关知识,系统人员工作效率有了很大的提升。

  1.2项目意义

  据数据调查显示,对于电子商务的营业销售额达到5.6亿,相比往年增长较快,人们通过网购方式已经形成了一种依赖,不管需要什么产品,直接上网查找,参考比较大,对商品品的特点和其他产品的优势有了详细的了解,让用户有了更有针对性的选择。这也给用户带来非常大的方便,用户可以不用像传统的方式还要去看实体店进行查看,比对,这样不仅耽误自己的时间,而且比对过程比较单一,商品的优势也了解不那么透彻,所以对于网吧管理系统是人们现在所依赖的一种购物方式。

  网吧管理系统的开发和使用对于用户而言是非常有利的。 侯选,用户可以查看商品信息、订单信息,并且通过网上进行购买商品,或查看上网记录等等,不受空间和时间的限制,弥补了其在实体店上的销售管理疏漏。如此一来,用户不仅可以查看上网记录还根据自己的需求进行在线购买自己所需要的商品信息,在闲余的时间还能进行有针对性的对商品信息进行了解,与过去传统的网吧管理方式相比,这种网络互动更具灵活性和新鲜感,更容易激发用户的需求。在网络平台上,还可以进行在线上网记录、查看商品信息、订单状态等[1]。网吧管理系统实现了用户商品信息的交易、订单信息共享和存储,使得网吧管理效率得到了极大的提高。

  1.3国内外研究现状

  随着时代的发展,SpringMVC+Spring+MYbatis(SSM)框架是继SSH框架之后Java EE企业级框架的使用主流,对于大型企业级应用系统的搭建比较适合[2]。Spring框架是的产生是从Rod Johnson发表的著名的作品中的某些理念和原型延伸拓展得来的。从2003年起它开始作为开发框架被广泛运用到级别较轻的Java开发中。而SpringMVC是负责获取资源和转发资源的,同时SpringMVC处理请求的方法是通过拦截来完成的,而且在处理过程中是不和其他共同享用请求资源的方法数据。并且SpringMVC是专门处理方法类的请求。这也是SpringMVC+Spring+MYbatis(SSM)框架替代SSH框架成为大型企业级应用系统的搭建成为主流的原因之一,也是我选择这个框架来开发系统的原因。

  1.4研究的内容

  本网吧管理系统,使用的是技术体系比较完善的JSP技术和被用来当做数据库的MySQL数据库以及SpringMVC+Spring+MYbatis(SSM)框架,提升了网络网吧管理系统的信息管理系统的安全性和技术性也具备了网站所有信息的处理[3]。

  网吧管理系统主要实现了管理员模块、用户模块两大部分。使用了网吧管理系统可以减少管理人员的工作负担,也可以促进管理人员做事的效率的提高,在进行数据整理时也更加规范,按照一定格式进行数据整理和存放,也方便调出想要的数据,再查看时也一目了然。

  详细内容介绍,将在以下五章中详细阐述:

  第一章、绪论,介绍了项目选择的背景及意义、研究现状,简要介绍了本文的章节内容。

  第二章、引入技术知识,通过引入关键技术进行开发,向系统中涉及直观表达的技术知识。

  第三章、重点分析了系统的分析,从系统强大的供需市场出发,对系统开发的可行性,系统流程以及系统性能和功能进行了探讨。

  第四章、介绍了系统的详细设计方案,包括如何完成系统结构和如何完成数据库。

  第五章、系统设计的实现,通过对系统功能设计的详细说明,论证了系统的结构。

  第六章、系统的整体测试,评判系统是否可以上线运行。

  1.5本章小结

  本章节主要介绍了本项目系统的开发背景和意义,其中项目意义分析了为什么选择开发这个系统。还介绍SSM框架在国内和国外的使用现状和产生的原因,以及使用这一技术的好处。本篇论文所描写的内容和设计出什么样的系统得部分主要在研究内容部门完成了叙述。

  2技术简介

  2.1 Spring技术

  Spring框架是的产生是从Rod Johnson发表的著名的作品中的某些理念和原型延伸拓展得来的。从2003年起它开始作为开发框架被广泛运用到级别较轻的Java开发中。它的产生是为了解决企业在开发项目中的复杂性。Spring的主要框架包括DAO,ORM,JEE,WEB,AOP,CORE。Spring并不局限于应用到服务器的开发,与Java应用有关的项目都可以从中获取好处。Spring框架图如下:

  图2-1 Spring框架图

  2.2 Spring MVC技术

  Spring MVC是具有代码的框架,而它的代码也让人容易理解和使用。在测试时由于其使用了IOC,使测试工作更加容易。在实现与其他的view框架合并时也比较容易[4]。

  2.3 MyBatis技术

  MyBatis技术被多人使用的原因是因为这个技术相对比较简单而且容易学习,占用的空间也比较少。不仅如此MyBatis还是一个持久层框架。此外不会影响到原有的程序和数据库。在xml中就可以使用SQL语句来实现操作数据库的需求。MyBatis技术的结构如下图所示:

  图2-3 MyBatis框架图

  2.4 JSP技术

  JSP(Java脚本页面)是Sun和许多参与建立的公司所提倡的动态web技术[5]。将Java程序添加到以往的web页面HTML文件(*)。htm,*。Html)。

  JSP技术允许使用JSP开发Web应用程序的web开发人员和网页是跨平台的[6]。因为jsp是在Java平台上构建的,所以开发出来的web应用程序不止在一个平台上实现。除了普通网页之外,相同的标准标记语言元素(如HTM标记)还会被JSP页面使用,但也包含特殊的JSP标记。因为jsp可用于检索数据大概会被数据库写入数据,因此开发人员利用JSP将动态内容加入到网页中。

  所以结合网上网吧管理系统的需求及功能模块的实现,使用JSP技术是最合适的,而且JSP的拓展性比较好,对于学习系统在后期使用过程中可以不断对系统功能进行拓展,是系统更完成,更方便的满足系统管理[7]。

  2.5 JAVA技术

  Java主要采用CORBA技术和安全模型,可以在互联网应用的数据保护。此外可以利用Java来实现的技术有:XML,JSP,java servlet API,EJB技术[8]。

  JAVA语言功能:

  面向对象:在开发软件时已经广泛运用面向对象这个方法了,与此同时他已经变成了Java编程的标志之一了。面向对象最主要的优点是方便使用者理解现实世界和系统、代码之间是如何转换,如何实现的。它的原理是把现实世界的事物转换成对象,关系转换成类[9]。

  跨平台:Java流行的一个关键特性是它的跨平台特性,这使得用Java编程变得容易。Java具备同时运行和同时编写的功能,并不用重新编写[10]。

  2.6 MyEclipse简介

  MyEclipse支持广泛、兼容性高并且功能强大,是一个Eclipse插件集合,普遍适应于JAVA和J2EE的系统开发,支持JDBC,Hibernate,AJAX,Struts,Java Servlet,Spring,EJB3等市面上存在的几乎所有数据库链接工具和主流Eclipse产品开发工具[11]。

  MyEclipse在业内是所熟知的开发工具,该平台在开发的过程中运用的就是该工具。MyEclipse又被称之为企业级的工作平台,它是以Eclipse IDE为基础的[12]。MyEclipse可以帮助我们进行数据库的研发和J2EE的使用,除此之外,还可以提高系统的运营能力,这突出表现在服务器的整合过程中。MyEclipse的功能相当完备,能够为J2EE的集成提供必要的环境支持,从而完成编码、测试、调试及发布等功能。它可以支持JSP、HTML、MySQL、Javascript、Struts、CSS等。

  2.7 Tomcat服务器

  Tomcat属于一种轻型的服务器,所以说在中小企业中并不具有普适性。但是当程序员需要开发或调试JSP程序时,则通常会将该服务器作为 侯选[13]。对于一个仅具有计算机基础知识的人来说,计算机系统具有一个好的Apache服务器,可以很好的对HTML页面进行访问。Tomcat虽然是Apache的延伸开展的,但是它们都是可以独立运行的,二者是不互相干扰的。当配置正确的时候,Apache服务器为HTML页面的运行提供技术支持,Tomcat的任务则是运行Servle和JSP页面[14]。Tomca也具有一定的HTML页面处理功能。

  2.8 MySQL数据库

  MySQL的语言是非结构化的,用户可以在数据上进行工作,并且学起来比较容易,功能大,储存量也大,MySQL主要应用于数据的查询、编辑,现在普遍存在的关系数据库有很多,并被广泛应用[15]。此外MySQL数据库的语言简洁明了,在使用MySQL数据库的时候,我们只需要通过编写较少的代码就可以实现某项功能。在使用数据库的过程中我们可以不用了解MySQL存储数据的方式和方法就可以使用。操作使用起来也比较灵活方便简单[16]。此次的项目开发利用MySQL来作为数据库管理正是因为其功能齐全且操作简单。

  2.9本章小结

  本章节主要介绍了本项目系统运用的相关技术工具。其中技术包括:Spring技术,MyBatis技术,MyBatis技术,JSP技术,JAVA技术。开发工具为MyEclipse。服务器使用了Tomcat。数据库为MySQL数据库。还附上了一些相关技术的结构图来帮助理解。

  3系统分析

  3.1可行性分析

  1、技术分析

  网吧管理系统采用了B/S结构模式,开发了功能完备、使用简单的前端应用程序,并建立、维护了一个数据完整、安全、稳定性强的后台数据库系统。

  系统使用JSP技术和MySQL数据库作为设计工具,可简单易行地学习操作。不用用户角色之间的相结合开发一套网吧管理系统是值得尝试的,数据的功能支配和处理把数据完善性和很多品质作为依据。它也是数据库安全平台的重要组成部分,是提高和增强数据安全性的重要手段。此外,为了提供更平滑,更智能和更有效的基本控制方法,定义了同时构建对安全计算环境的支持所需的步骤,并帮助维护安全性。因为在这两种开发工具中,功能强大且免费且界面良好,所以网吧管理系统在技术方面是可行的。

  2、经济分析

  因为网吧管理系统软件开发是开源代码的选择,这种低成本的选择使得开发很多简单,并且开发人员就是自己,不需要其他开发人员费用,也不用购买什么软件,而且还要改进设计。这个系统对电脑配置要求不高,应该没有经济问题。

  3、操作分析

  可操作性主要是对网吧管理系统设计完成后,用户的使用体验度,对于管理员可以通过系统随时管理相关的数据信息,并且对于管理员、用户两个用户角色,都可以简单明了的进入到自己的系统界面,通过界面导航菜单可以简单明了地操作功能模块,方便用户信息需求和管理员管理数据信息,对于系统的操作,不需要专业人员都可以直接进行功能模块的操作管理,所以在系统的可操作性是完全可以的。本系统的操作使用的也是界面窗口进行登录,所以操作人员只要会简单的电脑操作就完全可以的。

  4、法律分析

  网吧管理系统是通过我自己开发设计的信息处理的一款网吧管理系统,具有很高的实用性。没有知识产权纠纷,这是合法的。

  3.2系统性能分析

  系统的性能主要是确保系统功能的安全及系统功能模块的操作及用户的使用度。

  当用户使用该系统一段时间后,它并不总是能够正确使用所有功能,也就是说,用户所使用的功能模块或者点击某些菜单及使用操作功能会突然出现错误。

  在不同的模块、接口、环境和先决条件下都会影响系统的每个操作。

  因此,实现系统的运行和维护并不是一件简单的事情,要考虑系统的根本利益,系统是否值得运行和维护,这取决于系统的可扩展性和市场价值。

  实用性:在开发过程中,会根据使用者的需求来设定。尽量使开发的系统操作简单。当使用太多人时,大量的数据流量在服务器中产生,响应时间会有一些延迟。

  平台安全:网吧管理系统是开放的系统,涉及付款功能,涉及资金的交易,为了方便系统上的数据进行传输和保存,此系统主要是由管理者来管理,后台数据备份功能将不会透露任何信息。

  响应能力:系统对于用户的请求能很快的做出相对应的反应,能返回正确实时有效的信息,尽可能的避免卡顿和死机问题。

  处理能力:对于系统的异常能做到有效的处理,能对出现异常情况后进行及时的备份,恢复到之前的状态,数据不遭到破坏或者修改。

  平稳性:在持续运行系统的过程中,不会出现异常情况,系统能正常运行。

  可扩展性:系统能及时做出调整,优化出现的问题,在系统中会出现相应的补丁,弥补漏洞问题。

  3.3系统架构分析

  架构设计的目的是反映一个结构和其他元素之间的关系,抽象,通常用于指导大型软件系统。将一个巨大的任务细分为多个小任务的过程是系统架构的总体设计。完成小任务后,整个任务就可以完成了。具体的实现过程是分解系统,分析各部分的功能、接口和逻辑关系。页面是一个一个模块组建而成的,层次结构分明,思想运用的是面向对象,一个实体对应一个数据类型,还要对每个数据类添加一个实施类。

  网吧管理系统的系统项目的概述设计分析,主要内容有网吧管理系统管理的具体分析,进行数据库的是设计,数据采用MySQL数据库,并且对于系统的设计采用比较人性化的操作设计,对于系统出现的错误信息可以及时做出处理及反馈。

  对于网吧管理系统,主要包括管理员、用户两个用户角色,由于用户角色不同,所对应的功能模块不同,对于用户所使用的功能主要是用户成为网站会员,并且根据自己的需求进行查看商品信息和进行购买商品和上网查看记录并进行结算等操作,并且管理员可以根据中自己的需求进行用户和订单信息的详细了解和电脑信息和维修管理等。管理员主要是对系统所有的数据信息内容的整体数据信息的管理,并且根据需求对管理员管理、部门管理、电脑信息、商品信息、维修记录、订单管理、会员管理、计时结算的维护操作,根据需求对订单信息进行在线统计操作,系统的整体结构就是围绕用户的网吧管理系统,管理员对商品信息及上网记录、订单查询进行相应的管理操作。

  整个系统的功能框架由下图来展示:

  图:3-1功能结构图

  3.4系统流程分析

  3.4.1用户登录操作流程

  由于本项目所做的平台是在网吧中使用的,而有一些功能是需要使用者先进行用户注册有了该网吧的用户信息之后才可以进行使用操作的,甚至有些功能是对会员进行开放的。这种做法也保障了网吧管理系统的安全性,防止一些有非法想法的人员随便登录一致于窃取网吧的管理系统的一些重要信息。

   侯先系统的使用者进入到所指定的系统登录界面,管理者从后台的登录界面进入,网吧用户从用户的客户端进入到登录界面。进入到登录界面之后,输入提供的数据库中原有的账号和密码并选择登录类型,输入完毕之后系统会对输入的信息进行验证,如果输入的信息正确,则会显示登陆成功,并且进入到功能界面,可以开始使用系统的功能。其中信息的验证和功能使用处理都会通过数据库来实现。反之,如果输入的信息错误,则无法进入到功能界面会返回系统的登录界面,直到信息输入正确才可以登陆成功进入到功能界面。登录的详细过程如下图所示:

  图:3-2用户登录操作流程图

  3.4.2客户端使用操作流程

  客户端是给网吧的会员所使用的。会员用户登陆成功之后可开始用所具有的功能。其中所包括的功能为:用户登录功能,浏览 侯页功能,浏览订单记录功能,浏览上网记录功能,退出登录功能。账号已经有事先经过操作存放在系统的数据库中的用户可以直接使用进入到系统中,而数据中不存在的账号要先进行注册操作,存入数据库中才可以使用。登录成功之后,会员用户可以浏览 侯页展示的食物,当想要购买零食时可以在此页面进行浏览,并且可以浏览每一件商品的详细信息,如果有想要购买的时候还可以进行购买。此外会员用户还可以到订单记录中查看自己购买食物的订单详情,也可以从上网记录的功能中查看自己的上网记录,上网记录中会显示用户会员在此次上网过程中花费了多少金额以及此次上网过程中使用的时间,上网记录中还会显示用户每次来此网吧上网所产生的的每条上网记录。具体的网吧会员使用操作流程如下图所示:

  图:3-3客户端使用操作流程图

  3.4.3管理端操作流程

  管理员可以使用系统管理端的功能来管理网吧。管理人员通过使用账号密码进行登录,登录成功之后就可以获取到所有菜单功能。管理端所包括的功能有:用户登录、管理员管理、部门信息、电脑信息、商品信息、维修记录、订单管理、会员管理、计时结算。管理员可以在管理员管理功能中对用户ID、状态、创建时间这些信息进行修改添加删除或者查询。对新增管理员进行用户名、所属部门、密码、邮箱、手机号进行添加,也可以修改管理员的基本信息。对于不用的管理员还可以进行删除,删除其基本信息以及所有相关记录。管理人员在部门信息这一页面时可以选择要修改的记录进行部门信息的修改,修改包括部门名称和排序号的修改,其中上级部门是数据库中所规定的的无法修改。在电脑信息这一模块管理者完成了对每台电脑的记录进行新增信息或者删除记录修改信息查寻记录的操作。其中包括电脑编号和电脑信息的增加修改删除以及电脑的上下机情况和创建人员进行查询。商品部分通过添加商品名称,商品价格,商品单价等信息来完成商品的新增,还可以删除商品记录和修改商品信息以及查询商品记录。管理人员可以在这里进行商品详情,商品图片进行上传,也可以下架删除已经卖完的商品信息。维修记录主要记载了需要维修的电脑的信息,以及是否维修好了。订单管理主要是对网吧的所有订单进行查看管理。会员管理实现了会员信息的增删改查,在这里可以添加新的会员信息,其中包括了会员的身份证和密码的添加,还可以查询每个用户的状态以及创建时间。计时结算主要是对用户的上网时间进行结算,在这里只需要输入电脑的编码就可以完成结算,可以自动计算费用以及上机时间。管理员在使用管理端的流程由下图展示:

  图:3-4管理端操作流程图

  3.5本章小结

  主要通过系统的可行性分析、系统性能的分析、系统的整体架构、系统的流程的讲解来完成本章节。其中系统的流程中包括用户登录操作流程、客户端操作流程、管理端操作流程。并且每一个操做流程都附上对应的操作流程。

  4系统设计

  4.1客户端设计

  4.1.1 侯页设计

   侯页主要显示了网吧中上架的商品的信息,会显示商品的名称,价格,商品图片以及可以查看商品详情。 侯页所具备的功能如下:

  (1)浏览商品信息:用户通过账号密码登录之后进入到 侯页,用户可以根据自己的喜好浏览网吧上架的所有商品。 侯页上的每一个商品都会显示商品相关的图片,商品名称,商品价格,商品简介,查看详情按钮。

  (2)查看详情:用户在看到自己想要购买的商品的时候,可以点击商品的查看详情按钮,查看商品的具体信息。

  (3)购买商品:查看完商品信息之后,如果有想要购买的话可以选择购买的数量,并选择立即购买进行下单。

  4.1.2订单记录设计

  订单记录主要记录了用户在网吧管理系统购买的商品的详情,用户可以在这里查看自己所购买过的记录,以及查看记录详情。每条记录主要记录了购买的商品,购买的数量,商品单价,总价的信息。

  4.1.3上网记录设计

  上网记录主要记录了用户在此网吧的上网消费情况,在这里用户可以查看自己每次上网后生成的上网记录。上网记录包括所使用的电脑编码,开始时间,结束时间,产生的费用。

  4.2管理端设计

  4.2.1管理员管理设计

  在这个模块主要实现了管理员对信息是如何管理的。具体地可以通过输入用户名来查询相关管理人员的信息,包括:ID,用户名,状态,创建时间。可以通过添加新的管理员用户来创建新用户的用户名,密码,邮箱,手机号,状态,所在部门信息。也可以通过修改和删除功能来管理错误的管理员信息。

  4.2.2部门管理设计

  管理员可以在这里修改和查看部门信息,查看的部门信息包括部门ID,部门名称,上级部门,部门序号。修改的功能主要从对部门名称和排序号的修改来实现。

  4.2.3电脑信息设计

  电脑信息设计包括的电脑记录的增删改,以及可以查看电脑的信息的详情包括:电脑ID,电脑信息,电脑编码,上机时间,下机时间,创建人。可以对电脑信息和电脑编码进行修改。

  4.2.4商品信息设计

  商品信息设计包括的商品记录的增删改,以及可以查看商品的信息的详情包括:ID,商品名称,商品价格,商品图片,创建时间,创建人。可以对商品名称,价格,图片进行修改。可以添加新的商品和删除不想要的商品。

  4.2.5维修记录设计

  维修记录设计包括的维修记录的增删改,以及可以查看每条记录的详情包括:ID,电脑ID,维修原因,维修描述,维修时间,状态,创建时间,创建人。可以对ID,维修原因,维修描述,维修时间进行修改。也可以添加新的记录。

  4.2.6订单管理设计

  在这里可以查看所有订单记录,查看的详细内容包括:ID,商品名称,商品价格,商品图片,数量,总价,订单状态,创建时间,创建人。

  4.2.7会员管理设计

  在这个模块主要体现了管理者是如何管理用户的信息。可以通过输入用户名来查询相关用户的信息,包括:用户ID,用户名,状态,创建时间。可以通过添加新的用户的身份证,密码,状态来创建新用户。也可以通过修改和删除功能管理错误的用户信息。

  4.2.8计时结算设计

  在这个模块可以查看每一条结算的信息,具体的信息包括:ID,电脑编码,上机时间,下机时间,上机时长,上机费用,创建时间,上机人。也可以通过添加电脑编码来添加新的结算记录。

  4.3数据库设计

  4.3.1概念设计

  学习编程,我们都知道数据库设计是基于需要设计的系统功能,我们需要建立一个数据库关系模型,用于存储数据信息,这样当我们在程序中时,就没有必要为程序页面添加数据,从而提高系统的效率。数据库存储了很多信息,可以说是信息管理系统的核心和基础,数据库还提供了添加、删除、修改和检查,使系统能够快速找到自己想要的信息,而不是在程序代码中找到。数据库中信息表的每个部分根据一定的关系精确地组合,排列和组合成数据表。

  以下我对部分信息,画了信息实体属性图,并根据其信息实体属性图设计数据结构,并对数据结构进行分析。信息实体属性图主要从订单信息、管理员信息、电脑信息、商品信息的实体属性图来体现。

  根据管理员信息实体属性图,设计数据结构,该模块具有的数据结构如下:

  管理员(编号,用户名,密码)主键为:编号。

  其中对管理员信息的实体属性设计如下图所示:

  图:4-1管理员信息实体属性图

  根据订单信息实体属性图,设计数据结构,该模块具有的数据结构如下:

  订单信息(商品名称,介绍,价格,商品数量,地址,手机号,总价格,订单状态)主键为:手机号。对订单信息的实体属性图的设计如下图所示:

  图:4-2订单信息实体属性图

  根据商品信息实体属性图,设计数据结构,该模块具有的数据结构如下:

  商品信息(ID,名称,价格,商品图片,创建时间,创建人)主键为:ID。

  对商品信息的实体属性图的设计如下图所示:

  图:4-3商品信息实体属性图

  根据电脑信息实体属性图,设计数据结构,该模块具有的数据结构如下:

  电脑信息(ID,商品名称,商品价格价格,商品图片,创建人)主键为:ID

  电脑信息实体属性图的设计主要从下图来体现:

  图:4-4电脑信息实体属性图

  4.3.2数据表

  我们可以通过分析数据结构的需求和所使用的的数据量,得出我们应该使用什么表,数据结构之间的关系,我们可以验证,调整和完善,查询和浏览过程,可以实现数据库,以使用户对数据和功能有更多要求。

  表:4-1 news数据表

  列名数据类型长度约束

  id int 11 PRIMARY KEY

  title varchar 255 DEFAULT NULL

  content varchar 255 DEFAULT NULL

  img varchar 255 DEFAULT NULL

  create_by varchar 0 DEFAULT NULL

  update_by varchar 0 DEFAULT NULL

  Quartz主要提供了CronTrigger,CalendarIntervalTrigger,DailyTimeIntervalTrigger以及SimpleTrigger这几个triggers。其中blog类只会储自定义的triggers。本系统生成的qrtz_blob_triggers表如下面所示:

  表:4-2 qrtz_blob_triggers表

  列名数据类型长度约束

  SCHED_NAME int 120 PRIMARY KEY

  TRIGGER_NAM varchar 200 NOT NULL

  TRIGGER_GROUP`varchar 200 NOT NULL

  我们可以利用Quartz的日历功能自己定义时间段,可以控制触发器触发的时间;主要的Calendar类型有如下几类:AnnualCalendar,CronCalendarDailyCalendar,HolidayCalendar,MonthlyCalendar,WeeklyCalendar。本系统生成的qrtz_calendars数据表如下面所示:

  表:4-3 qrtz_calendars数据表

  列名数据类型长度约束

  SCHED_NAME varchar 120 PRIMARY KEY

  CALENDAR_NAME varchar 200 NOT NULL

  CronTrigger可以指定触发的时间表和选择指定的时间,其触发的事例代码为“0 30 09**?”这个示例代码表示每天早上9:30触发。本系统生成的qrtz_cron_triggers数据表如下面所示:

  表:4-4 qrtz_cron_triggers数据表

  列名数据类型长度约束

  `SCHED_NAME varchar 120 PRIMARY KEY

  `TRIGGER_NAME`varchar 200 NOT NULL

  TRIGGER_GROUP varchar 200 NOT NULL

  CRON_EXPRESSION varchar 120 NOT NULL

  `TIME_ZONE_ID varchar 80 NOT NULL

  fired已经触发的trigger信息主要利用fired来存储。Cron方式的Quartz触发时间的配置需要用到此表。在这种触发器中,trigge信息是否会被数据表删除,主要取决于trigger是否完成了执行,虽然在执行的过程中只要时间发生了变化trigge的状态就会发生变化,但是触发器还是可以进行判断。本系统生成的qrtz_fired_triggers数据表如下面所示:

  表:4-5 qrtz_fired_triggers数据表

  列名数据类型长度约束

  SCHED_NAME int 120 PRIMARY KEY

  ENTRY_ID varchar 200 NOT NULL

  TRIGGER_NAME`varchar 200 NOT NULL

  TRIGGER_GROUP varchar 200 NOT NULL

  INSTANCE_NAME varchar 11 NOT NULL

  PRIORITY`int 11 NOT NULL

  STATE varchar 16 NOT NULL

  `JOB_NAME varchar 200 NOT NULL

  JOB_GROUP varchar 200 NOT NULL

  `IS_NONCONCURRENT varchar 1 NOT NULL

  `REQUESTS_RECOVERY varchar 1 NOT NULL

  jobDetails的功能主要是被job用来存储特别指定的实例的信息和通过调度器来添加实例。不仅如此job的很多设置属性都是从jobDetails得来的。jobDetails实例是通过jobBuilder类静态导入所构建的。其实现代码为:import static org.quartz.JobBuilder.*

  本系统设计的qrtz_job_details数据表如下面所示:

  表:4-6 qrtz_job_details数据表

  列名数据类型长度约束

  SCHED_NAME varchar 120 PRIMARY KEY

  JOB_NAME varchar 200 NOT NULL

  DESCRIPTION varchar 200 NOT NULL

  JOB_CLASS_NAME varchar 250 NOT NULL

  IS_DURABLE varchar 1 NOT NULL

  `IS_NONCONCURRENT varchar 1 NOT NULL

  IS_UPDATE_DATA varchar 1 NOT NULL

  REQUESTS_RECOVERY varchar 1 NOT NULL

  scheduler存储的所有节点都会定安排固定的时期检查是不是还可以用,有没有失效。本系统设计的qrtz_scheduler_state数据表如下面所示:

  表:4-7 qrtz_scheduler_state数据表

  列名数据类型长度约束

  SCHED_NAME`int 120 PRIMARY KEY

  INSTANCE_NAME int 200 NOT NULL

  4.4本章小结

  本章节主要介绍了系统的设计,主要包括三个大方向:客户端设计,管理端设计,数据库设计。客户端设计又分成: 侯页设计,订单记录设计,上网记录设计。管理端设计分成:管理员管理设计,部门管理设计,电脑信息设计,商品信息设计,维修记录设计,订单管理设计,会员管理设计,计时结算设计

  5系统实现

  5.1登录功能模块

  用户通过进入网站,可以进行点击登录页面,进行填写用户名、密码、验证码,输入无误后,进行登录操作,如果没有账号的必须要先注册账号,在进行登录,如下图所示:

  图:5-1登录界面图

  在这里登录界面运用了spring控制反转技术来实现,其实现的代码如下:

  var vm=new Vue({

  el:'#rrapp',

  data:{

  username:'manager001',

  password:'manager001',

  captcha:'',

  error:false,

  errorMsg:'',

  src:'captcha.jpg'

  },

  beforeCreate:function(){

  if(self!=top){

  top.location.href=self.location.href;

  }

  },

  methods:{

  refreshCode:function(){

  this.src="captcha.jpg?t="+$.now();

  },

  login:function(event){

  var data="username="+vm.username+"&password="+vm.password+"&captcha="+vm.captcha;

  $.ajax({

  type:"POST",

  url:"sys/login",

  data:data,

  dataType:"json",

  success:function(result){

  if(result.code==0){//登录成功

  parent.location.href='index.html';

  }else{

  vm.error=true;

  vm.errorMsg=result.msg;

  vm.refreshCode();

  }

  }

  });

  }

  }

  });

  5.2管理员系统功能模块

  管理员使用账号登陆成功获取功能菜单,可以使用以下功能:管理员管理、部门管理、电脑信息、商品信息、维修记录、订单管理、会员管理、计时结算。

  管理员管理:通过列表进行获取用户名,用户ID,状态,创建时间的记录,也可以对列表进行增删改查。如下图所示:

  图:5-2管理员管理界面图

  部门管理:通过列表可以进行获取部门ID、部门名称、上级部门、排序号的记录,也可以查询和修改其内容,如下图所示:

  图:5-3部门管理界面图

  电脑信息:通过列表可以进行获取ID、电脑编码、电脑信息、上机时间、下机时间、创建时间、创建人等信息,并对信息进行增删改查,如下图所示:

  图:5-4电脑信息界面图

  商品信息:通过列表可以进行获取商品信息的ID、商品名称、商品价格、商品图片、创建时间、创建人等信息,进行信息的增删改,如下图所示;

  图:5-5商品信息界面图

  维修记录:通过列表可以进行获取ID、电脑ID、维修原因、维修描述、维修时间、维修状态、记录创建时间、创建人等内容,进行新增、修改或删除操作,如下图所示:

  图:5-6维修记录界面图

  订单管理:通过列表可以进行获取ID、商品名称、商品价格、商品图片、数量、总价、订单状态、创建时间等信息,进行订单查看,如下图所示:

  图:5-7订单管理界面图

  会员管理:通过列表可以进行获取用户ID、用户名、状态、创建时间等信息,进行信息的增删改,如下图所示:

  图:5-8会员管理界面图

  计时结算:通过列表可以进行获取ID、电脑编码、上机时间、下机时间、上机时长、上机费用、创建时间、上机人等信息,进行结算操作,如下图所示:

  图:5-9计时结算界面图

  在管理端系统的视线中,每个功能模块的增删改查功能使用的技术都是通过mybatis的SQL映射,通过controler控制器,调用service接口实现数据库持久化。其中查询功能使用了<select id="queryByKey"parameterType="string"resultType="com.system.modules.sys.entity.SysConfigEntity">select*from sys_config where param_key=#{paramKey}</select>语句来实现。

  删除功能使用了下面的语句来实现。

  <delete id="deleteBatch">

  delete from sys_role_dept where role_id in

  <foreach item="roleId"collection="array"open="("separator=","close=")">

  #{roleId}

  </foreach>

  </delete>

  5.3用户功能模块

  用户通过进入网站,可以查看 侯页、请登录、订单记录、上网记录等功能模块,进行相对应操作,如下图所示。

  图:5-10网站界面图

  用户通过点击商品详情,可以查看商品名称、图片、价格、数量等信息,进行查看或立即购买操作。如下图所示。

  图:5-11商品详情界面图

  订单记录:通过订单页面,可以进行查看商品、单价、数量、总价等信息内容,进行查看订单操作,如下图所示:

  图:5-12订单记录界面图

  上网记录:通过上网记录,可以查看电脑编码、开始时间、结束时间、费用等上网记录,进行查看操作,如下图所示:

  图:5-13上网记录界面图

  5.4本章小结

  本章节主要介绍了系统的实现,主要包括三个大方向:登录功能实现,客户端实现,管理端实现,数据库实现。客户端实现又分成: 侯页实现,订单记录实现,上网记录实现。管理端实现分成:管理员管理实现,部门管理实现,电脑信息实现,商品信息实现,维修记录实现,订单管理实现,会员管理实现,计时结算实现。并附上了各个部分界面实现图,还附上了系统所用技术的代码。

  6系统测试

  6.1测试目的

  程序设计不能保证没有错误,这是一个开发过程,在错误或错误的过程中难以避免,这是不可避免的,但我们不能使这些错误始终存在于系统中,错误可能会造成无法估量的后果如系统崩溃,安全信息,系统无法正常启动,导致安装用户手机屏幕等,为了避免这些问题,我们需要测试程序,并发现这些问题,并纠正它们,并使系统更长时间稳定成熟,本章的作用是发现这些问题,并对其进行修改,虽然耗时费力,但长期非常重要和必要系统的开发。

  软件测试与开发过程是一样的,都必须按照软件工程的正规原理进行,遵守管理学理论。不过,目前国内的软件测试已经积累了大量经验和方法,步骤相对成熟,软件测试的效率也越来越高。

  网吧管理系统的实现,对于系统中功能模块的实现及操作都必须通过测试进行来评判系统是否可以准确的实现。在网吧管理系统正式上传使用之前必须做的一步就是系统测试,对于测试发现的错误及时修改处理,保证系统准确无误的供给用户使用。

  6.2测试方法

  1、功能测试

  从用户的角度来看,测试时不了解新开发软件的内部结构,因此可以将系统与黑匣子进行比较,盲目输入后可以查看系统给出的反馈。这种测试属于黑盒测试,在测试中如果输入错误信息系统会报错。

  2、性能测试

  测试软件程序的整体状况(称为性能测试)通常使用自动化测试工具来检测系统的整体功能,在负载测试和压力测试之间进行分配,在某些情况下,将这两种情况结合起来。虽然压力测试可以检测到系统可以提供的最高级别的服务,但负载测试可以测试系统如何响应增加的负载。

  当该函数正确完成时,该测试被考虑通过并且操作不会导致任何其他特性或系统错误。

  6.3测试用例

  (1)登录模块测试:当用户使用未注册过的账户进行登录时,会有弹出框显示登陆失败,这就相当于无法登陆系统;当用户使用注册过,并存入数据库中的账号进行登录,会弹出框显示登陆成功,登陆成功即可使用系统。通过测试。

  (2)管理员模块新增功能测试:管理员成功进入系统之后,在添加新的管理员的信息时需要填入符合格式的字符串内容才可以添加成功;当在添加信息格式不正确,会弹出弹框显示添加失败。通过测试。

  (3)计时结算模块测试:管理员要添加新的结算时,点击结算输入电脑编码就可以完成结算。结算失败的原因主要是因为输入了错误的电脑编号,系统和数据库无法识别才会出现错误;当输入的电脑编码是正确的,系统和数据库就会成功识别并且完成结算。通过测试。

  测试的测试用列表由下表展示:

  表:6-1测试用例表

  测试用例操作的内容操作过程及数据预期结果用例类型测试结果

  登录输入已经存在的账号信息进入登录界面,在登录窗口输入存在的账号信息,进行登录登成功功能点与预期一致

  管理员新增输入格式错误的信息进入新增页面,在创建日期栏输入不带—的数字,进行添加输入错误,添加失败功能点与预期一致

  计时结算输入不存在的电脑编码进入结算界面,输入数据库中不存在的电脑编码结算失败功能点与预期一致

  6.3测试结果

  本次系统的测试主要针对系统的登录模块以及新增和结算功能进行测试。在一个系统中登录是在开始的环节也是最重要的环节,只有登录系统可以使用了,才有办法使用系统。在网吧管理中心结算功能也是重要的一环,为了防止结算功能出现错,所以对其进行测试。

  测试后得到的性能和用例,系统具有足够的正确性、可靠性、稳定性,并且可以对输入数据进行准确的点击操作处理和响应测试用户的体验也得到了很好的反馈和响应时间。合理的范围,可以兼容所有主流浏览器,设计所需的效果。

  6.4章节小结

  本章节主要介绍了测试的目的,测试方法,测试用例,测试结果。主要针对了登录,管理员新增功能,计时结算模块进行测试,并把测试用例和结果以及测试操作,制作成表格展现出来。