版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Ⅱ基于SSM的校园共享单车管理系统的设计与实现摘要:当今社会,自行车在高校中会被绝大部分学生选择为代步工具出行,然而这些学生对自行车的使用率不高,而且存在着容易被盗窃的问题,荒废的自行车更是会造成公共空间的减少。对于自行车的使用效率不高、难以停放以及自行车一再被偷窃等问题,校园共享单车随之出现。 本人此次设计的就是校园共享单车管理系统,通过对系统的可行性和用户的需求进行分析,之后对各个操作模块进行相应的设计,便可以实现本系统。本系统将分配多个服务点,每个服务点可停放一群单车并配一个管理员,每个管理员可通过操作管理系统实现对单车的管理。技术方面,本系统使用了SSM框架,使用Jsp作为页面模板,服务器使用虚拟服务器tomcat,数据库选择Mysql,用Navicat进行数据库管理,编程语言选择Java,用IntelliJIDEA作为编译软件。本系统操作难度低,便于理解,可简单地对单车进行管理。关键词:共享单车,SSM,MySQL数据库目录TOC\o"1-3"\h\u前言 1第1章绪论 21.1课题研究背景及目 21.2设计原则 31.3开发技术 41.3.1Java语言 41.3.2MySQL数据库 51.3.3其他技术 6第2章需求分析 82.1功能需求分析 82.2用例需求分析 82.2.1前台客户用例模块 82.2.2后台管理员用例模块 102.3可行性分析 142.3.1技术可行性 142.3.2经济可行性 142.3.3操作可行性 14第3章系统功能概述 153.1系统总体功能 153.1.1前端用户 163.1.2后台管理 163.2数据库的设计与实现 17第4章系统详细设计 294.1前端用户操作模块 294.1.1网站首页模块 294.1.2注册页面 324.1.3用户登录页面 384.1.4商品详情页面 404.1.5购物车及订单提交页面 434.1.6搜索页面 474.1.7会员中心模块界面 474.2后台管理员操作模块 484.2.1管理员登录 484.2.2后台管理首页 484.2.3用户管理 494.2.4商品管理 494.2.5订单管理 514.2.6广告管理 514.2.7售后管理 524.2.8网站工具管理 52第5章系统测试 545.1运行环境 545.2系统测试 545.3系统测试用例 55参考文献 58前言自行车作为一种方便的交通工具,在学校中普遍是学生的第一选择,但它们存在使用率并不高的问题,这也就会造成校园内存在报废车的情况,这也会让学校的相关部门困扰。这些报废自行车大多是已经毕业的学生遗弃的,要么有所损坏而被搁置,要么已经生锈。这样不仅浪费了资源,还会占用位置,使公共面积减少。此外自行车也存在这容易被偷的问题。对于以上由自行车所引起的各种问题,校园共享单车开始出现并被投入在各大高校中。校园共享自行车顾名思义是指在大学校园可以被所有人共享的自行车。校园共享自行车是为了解决自行车在学校内不被常时间使用,容易为偷窃,不好停放等问题为存在的。可以通过为所有共享单车进行编号,从而更好地对它们进行管理,以便实现不论是老师还是学生还是校外人员都可以在校内用它们进行代步。不仅仅是在校园中,在城市中共享单车也对低碳生活起到了推动作用。它可以让人们在某些情况减少对机动车的使用,进而推动了绿色城市的建设。共享单车的出现使很多在城市生活的人们减少了对汽车的依赖,在交通拥堵或者出行距离不长时,他们比起开汽车更乐于骑单车,这样子更方便快捷,随着汽车的使用率变低,也减轻了空气的污染程度,做到了绿色出行。虽然共享单车的好处很多,但是共享单车在校园内的管理情况并不理想,所以本系统的目的是实现对学院内共享单车的管理。
第1章绪论1.1课题研究背景及目的1、课题背景随着我国综合国力和教育水平的的快速发展,对于教育资源的需求也越来越高,这样大学学校的面积也会随之扩大,由于自行车在学校中的代步工具方面还是第一选择,由它所引发的问题也是相当的多。随着学生的毕业,会留下大量的自行车等待处理,如果不能很好的处理掉他们,不仅会浪费资源,还会占用空间,更是对自然环境的一种破坏。其实同学们在日常生活中对自行车的还是存在需求的,以江理工为例,校内的自行车普及率约为四分之一,但有超过七成的同学认为有一辆单车可以方便自己的出行,在日常生活中可以增加行动范围,提高出行效率,但是新的自行车存在着价格偏高的问题,二手车又存在交易不保险等问题;据调查,校内的车棚内大约百分之十五的车处于报废状态。不高的使用效率和在毕业后的不便处理等原因使得大部分同学都不选择在大学期间买一辆自行车。不少学校对于这些问题的处理并不能符合理想的需求,少数学校更是把严禁自行车在校内出行,引起了学生的不满。虽然这些问题都随着共享单车的出现而被解决,但是在共享单车的管理上又引发了新的问题。2、系统目的本人此次设计的就是校园共享单车管理系统,通过对系统的可行性和用户的需求进行分析,之后对各个操作模块进行相应的设计,便可以实现本系统。本系统将分配多个服务点,每个服务点可停放一群单车并配一个管理员,每个管理员可通过操作管理系统实现对单车的管理。技术方面,本系统使用了SSM框架,使用Jsp作为页面模板,服务器使用虚拟服务器tomcat,数据库选择Mysql,用Navicat进行数据库管理,编程语言选择Java,用IntelliJIDEA作为编译软件。本系统操作难度低,便于理解,目的是实现对单车的借还情况进行管理,并可以统计租金信息。1.2设计原则此次项目开发,我本着让本网站的数据库设计的更加完善,操作更加方便,功能更加齐全的原则,最大程度地利用前沿技术和多个电商特色来提升本网站的综合技术运用指标,这样,才能满足网络消费者的购物需求及管理员的维护,在设计网站前应考虑下面的五大性能:(1)实用性网站前端应根据现代人的设计风格,使之更人性化,符合消费者的操作方式,购物流程简单明了,没有多余的操作。后台维护和管理应根据现实生活中商品管理方式来管理,能够处理商品应具备的要求。(2)适应性网站存在的价值就是为使用者提供价值,首先应确保使用者使用此系统时是能够在任意PC机上运行。随着互联网的飞速发展,网站的功能以及表现形式也需要适应需求变化而变化,因此,网站在设计架构上采用的PHP技术,在扩展上增加自定义的功能,来适应未来网络的运营环境。(3)易操作性网站主要是用户使用,在网站设计思路上,需以用户为主体,从用户的角度出发,功能齐全,界面友好,操作简单,操作有误时需以相关文字提醒并妥善处理当前操作。(4)准确性网站所发布的所有信息及文章内容必须真实准确,无虚假,并且保证无违反法律,文明等字眼,程序代码须有检查纠错,屏蔽等功能,确保整个网站信息准确无误,文章评论等文明遵法。(5)可读性为了便于相关开发人员理解代码及方便未来对代码的维护更新和升级维护,所有函数,功能代码皆因做好相应的注释。1.3开发技术1.3.1Java语言Java语言比起其他语言更加的简单,比如相比于C语言、C++语言。从编程者的角度看,Java的难度相比于其他语言更容易学习,而Java的面向对象性可以让开发者不必去关心一个类的东西和方法时怎么实现的,而是只需要把操作和成员变量封装在类中。Java的跨平台性相比于其他语言更是一种优势,其他语言如果更换了一个操作系统就无法运行,必须重新编译才能运行。Java拥有着如SSM,SpringBoot等许多知名的框架,好的框架能提高效率。但是Java优劣都是相对的,如它的跨平台性,虽然能使Java在任何操作系统运行,但是需要提前装好虚拟机如tomcat使用。Java是由SUN公司所开发的,该公司能提供及时的API更新,但是由于版本太多了,所以Java的兼容性不太行。虽然Java语言有优有劣,但总体上还是优大于劣,所以本系统选择Java作为开发语言。1.3.2MySQL数据库 MySQL数据库相比与其他数据库如Oracle数据库相比,虽然在可编程支持方面比不上,存在着功能有限等问题,但是在事务支持方面超过了其他数据库。从上手难度方面看,MySQL在安装时的难度非常低,比起其他数据库,它安装时只基本只需照着安装教程点击下一步即可;创建数据库时,MySQL只需要输入一条简单的代码,便可以一下子创建号数据库,而其他商业数据库在创建库时所需要的工作量非常繁琐。可靠性方面来说,据调查全球的大型网站大部分业务都通过MySQL数据库运行,同时MySQL也是十分适合Web开发的一款软件。虽然MySQL在功能上并不一定是最好的,其他方面也并不完美,但是我却是最适合本系统的设计的,所以本系统选择MySQL作为数据库。1.3.3其他技术1、Jsp页面Jsp相比于HTML需要等待被发布到Tomcat服务器才能打开,而HTML可以直接打开。但是由于Jsp是动态页面,所以可以做到静态的HTML做不到的直接进行Java的编写,这也是本系统选用Jsp技术的原因。Jsp技术基于Java,所以Jsp也有着跨平台性,这使得它的使用效率非常高。Jsp的多平台性更凸显了同类型的技术的局限性。2、MyBatis MyBatis是一个有关数据库的框架,该框架使一些有关数据库操作的代码和业务逻辑相关的代码分层。并且该框架的运用可以防止SQL注入[15]。IntelliJIDEA工具IntelliJIDEA简称IDEA,它自身拥有强大的整合能力,包含了如Maven,Spring等框架,相比于同类型的Eclipse能更好地支持Web页面的设计,但是相较于Eclipse自身的插件算不上多,实际有作用的插件数量更少,但是比起Eclipse插件安装过多后就会卡顿的情况并不会发生,最主要的是IDEA能够理解JSP的结构。作用于普通Java代码的众多功能同样适用于JSP(比如整合功能)。同时支持JSP调试。所以本系统选择IntelliJIDEA作为开发工具。第2章需求分析2.1功能需求分析在本基于SSM的校园共享单车管理系统中,对于每一辆单车的购入;每一辆单车的借出和归还时,管理员都可以进行相应的管理。还可以对在所有服务点中总的车辆数量进行统计,也能记录着每个订单的收入金额,并保存学生对单车的借还情况。普通管理员具备信息统计管理,信息统计汇总、更改自身密码等功能。超级管理员拥有普通管理员所有的功能之外,还拥有增加用户管理,服务点管理,分类管理功能。学生信息管理包括增删改学生信息,租赁信息管理包括添加订单归还和移出订单,信息统计管理包括车辆统计学生统计借车人次报废车辆,学生人数在库车辆用户管理包括单车管理员的管理,服务点管理包括单车服务点的管理,分类管理实现对单车型号的分类比如小黄车小红车等。2.2用例需求分析2.2.1前台用户用例模块1、登录/注册模块在首页中,用户可以进行注册和登录,注册时需要输入学号密码等必要信息。注册成功的用户可以登录系统进行下一步操作。注册登录模块示意图,如图2-1:图2-1登录/注册模块用例2、借车模块成功注册且登录后可进入借车模块,在这个模块中学生用户可以进行对单车订单的预约,在浏览可使用的单车后输入需要的单车号和自己的学号即可成功预约单车。借车模块的示意图,如图2-2所示:图2-2借车模块用例还车模块成功注册且登录后可进入还车模块,在这个模块中学生用户可以进行对单车订单的归还,选中订单后进行操作即可成功归还单车。还车模块的示意图,如图2-3所示:图2-3还车模块用例单车信息浏览模块在单车信息模块中,用户可以看到所有单车的状态是否可使用,也可以看到单车号,可以通过单车号进行借车。单车信息浏览模块的示意图,如图2-4所示:图2-4单车信息浏览模块用例5、个人信息管理模块在个人信息管理模块中,用户可以完善自身的个人信息,该模块的示意图,如图2-5所示:图2-5个人信息管理模块用例2.2.2后台管理员用例模块1、用户管理模块普通管理员有信息统计管理,信息统计汇总、个人信息管理即修改密码等功能,超级管理员给一个管理员分配一个服务点,一个管理员只能管理一个服务点,但一个服务点可以被多个管理员管理。超级管理员还可以对管理员的信息进行增加,删除等操作。如图2-6所示:图2-6用户管理模块用例图2、服务点管理模块服务点具有ID、名称、地址等属性,也可以设置客服电话登录成功的超级管理员,在服务点管理模块中只有超级管理员管理员可对这些已经登记的服务点进行编辑、删除等操作。如图2-7所示:图2-7服务点管理模块用例3、单车管理模块服务点在收录共享单车之前要先记录单车的信息,如单车的编号,单车的类型,单车的购入时间,单车图片,状态和备注等信息。在把这些信息添加之后再加入服务点。加入服务点后即可成为校园共享单车。在单车管理模块模块中管理员可对单车进行增删改等操作。如图2-8所示:图2-8单车管理模块用例4、分类管理模块管理员可根据单车种类及采购时的价钱的不同进行单车的分类,根据分类的不同可给每种单车不同的分类代号和分类名和不同的押金,如小蓝车为1号单车,小黄车为2号单车。普通管理员或超级管理员登陆后可以对根据单车的种类不同,进行分类管理,如图2-9所示:图2-9分类管理模块用例5、管理录入学生模块对于单车临时有需求但是又未注册同学需要在管理员处登记其个人信息,个人信息包括身份证号码,姓名,性别,学号,邮箱,个人电话,所在院系和专业等。管理员可为未录入的学生进行信息添加,也可以修改已经录入的学生的个人信息。如图2-10所示:图2-10管理录入学生模块用例6、单车租赁模块该模块的功能是当学生借取单车时,在此添加新的订单租赁的信息,需添加的信息有学生的学号,单车的单车号及备注等信息;当用户还车时,在租赁信息中通过查找学号、单车号或者备注等信息,快速找到该订单,然后将显示未归还的订单状态改为已归还。管理员操作的单车租赁模块的用例图如图2-11所示:图2-11单车租赁模块用例7、信息统计模块此模块用在统计收支时使用,该模块记录着总的收入租金,总的押金的数据,还记录着服务点中的总车辆数目,总的已录入学生个数,已借车的人数等信息。该模块的用例图如图2-12所示:图2-12信息统计汇总用例2.3可行性分析2.3.1技术可行性采用Spring+SpringMVC+MyBatis+Jsp页面来进行后台开发,选用SSM框架是因为它自带着大量的基础功能从而减少一部分编码,使得业务逻辑的实现更加轻松。数据库使用MySQL进行开发,服务器使用虚拟服务器Tomcat,Tomcat作为一款虚拟服务软件,最大的好处就是他是免费的。它默认占用8080端口,可更改,可在一个虚拟服务中部署多个项目,端口随机分配。页面采用html+css+jquery配合Jsp标签进行编写,可使用谷歌浏览器下运行该项目。2.3.2经济可行性本系统使用的软件有IntelliJIDEA和NavicatforMysql的MySQL可视化工具进行开发,这两款软件虽然均为付费软件,但是官方提供一年的学生免费试用,且在过期后可以使用破解工具进行破解,所以在开发软件上的经济可行性没有什么问题,开发软件方面的有关资料都在网上经过仔细学习和练习,在技术上基本可以使功能实现。2.3.3操作可行性在操作上,本系统采用了Jsp模板进行设计,每个页面的结构都很简洁干净,操作起来通俗易懂,十分方便。本系统在一个服务点只需要配一个管理员即可管理一个服务点,由于系统操作简单易懂,可比较容易实现车辆的管理。未注册的学生在服务点存取车时主动提供学号和车辆编号也可进行存取车。第3章系统功能概述3.1系统总体功能本基于SSM的校园共享单车管理系统的作为管理系统主要是为管理员设计的。对于学生用户来说,主要的功能包括用户注册登录,对借用单车的订单进行提交和归还;对于后台管理员来说,系统管理模块主要包括:系统用户管理、服务点信息管理、单车信息管理、学生信息管理、租金管理模块、信息统计模块、租赁信息管理,后台管理员拥有系统用户、服务点信息、单车信息、学生信息、租金/租赁信息、信息统计统等功能,管理模块的结构如图3-1所示:图3-1系统管理模块功能结构图3.1.1前端客户用户注册:可以注册新的用户。用户登录:用户输入学号和自己注册的填的密码加验证码进行登录。用户借车:用户可通过输入单车号后到服务点支付押金后借车。用户还车:用户可通过输入单车号后到服务点支付租金后还车。密码管理:用户可以通过这个模块来修改密码。个人信息管理:用户可在此模块中完善自己的个人信息如邮箱电话号码等。3.1.2后台信息管理管理员信息管理:超级管理员可以对普通管理员进行管理,可将一个管理员分配到一个服务点,每个服务点可拥有一个及以上的管理员进行管理,当管理员不必要时可以删除该管理员的信息。服务点信息管理:超级管理员可以实现对服务点信息的管理,服务点具有ID、名称、地址等属性,也可以设置客服电话,可对这些已经登记的服务点进行编辑、删除等操作。单车信息管理:管理员可在登录系统后中看到每辆单车的全部信息,也可以通过输入单车号来搜素到指定单车,从而对该单车的信息进行增删改等操作。单车的借还情况也会有标注。学生信息管理:对于未注册但有需求的学生,该学生可以向服务点的管理员报上学号、名字等最基础的信息,再告诉管理员想租借的单车号码,管理员便可录入该学生的信息,对于已经录入的学生管理员可对通过信息查询到该学生并对他的信息进行增删改等操作。租赁管理:用来添加新的租赁信息,当学生借取单车时,在此添加新的订单租赁的信息,需添加的信息有学生的学号,单车的单车号及备注等信息;当用户还车时,在租赁信息中通过查找学号、单车号或者备注等信息,快速找到该订单,然后将显示未归还的订单状态改为已归还。信息统计:此模块用在统计收支时使用,该模块记录租金流水,现有的押金,服务点总车辆,车辆总数量,已录入学生总数,车辆被借次数中等数据。管理员登录:管理员凭账号密码即可登录本系统,并使用所有功能。注销退出:点击“退出登陆”时便退出系统并回到主页。3.2数据库的设计与实现一个良好的数据库设计通常会对数据库的性能起到事半功倍的效果。数据库的模式对于数据的精确性和准确性起着重要的作用,并极大地影响着数据库的性能。一个数据库的模式可以从不同的关系模式中选择一种来设计,这也是关系数据库的目标。关系数据库可使本系统便捷地获得信息,并过滤掉没必要的重复信息。本人采用Mysql关作为本系统的系型数据库,系统中的每个模块都能在数据库中对应一张表。3.2.1数据库概念结构设计——E-R图本基于SSM的校园共享单车管理系统的数据库设计主要建立的表有管理员信息表(ad_information)、单车信息表(bike_information)、单车分类表(bike_category)、订单表(order)、服务点信息表(place_information)、学生信息表(stu_information)。其中管理员信息表与学生信息表之前的关系是一对多关系,一个管理员可以对应多个学生;管理员信息表与订单表也是一对多关系,一个管理员可以管理多个订单;单车信息表与单车分类表之前的关系是,一个单车分类中可以有多种单车,但是一种单车只能属于一个单车分类;管理员表与服务点信息表的关系是一对多关系;本系统整个数据库设计的E-R图,如图3-5所示:3.2.2数据库逻辑结构设计——关系模式数据库的作用就是把系统中的每个模块的功能,用数据来实际体现到每一张表格中,而关系模式就是将数据库的概念模型转换为关系模型:管理员(管理员ID、管理员账号、分配服务点ID、手机号);学生(学生号码、登录密码、姓名、性别、身份证、学生号、院系、手机号);单车(单车号码、品牌型号、购入日期、图片、借还状态);服务点(服务点ID、服务点名称、服务点地址、服务点电话)租赁订单信息(订单号、学生学号、单车号码、单车押金、实付租金、借车日期、还车时间)3.2.3数据库表设计在本基于SSM的校园共享管理系统的设计的数据库中,一共创建了6张表,分别为管理员信息表(ad_information)、单车信息表(bike_information)、单车分类表(bike_category)、订单表(order)、服务点信息表(place_information)、学生信息表(stu_information)。数据表的结构属性包括:字段名称、数据类型、字段长度、是否为空、是否为主键。以下是各个表的属性:管理员信息表(admin):用来存储管理员的各种信息如id和密码。表3-1管理员信息表(ad_information)字段名数据类型字段长度是否为空是否为主键注释aidint11是是管理员表ida_pidint11否否管理的地方id超级管理员此处为空a_usernamevarchar12否否登录账号a_passwordvarchar64否否登陆密码a_real_namevarchar10否否管理员姓名a_phonevarchar13否否管理员电话a_rolevarchar20否否普通管理员/超级管理员a_iconvarchar64否否管理员头像a_login_timedatetime0否否登陆时间a_create_timedatetime0否否该列创建时间a_update_timedatetime0否否该列更新时间a_commentvarchar300否否备注单车信息表(bike):用于后台管理员添加宠物时存储的宠物信息。表3-2单车信息表(bike_information)字段名数据类型字段长度是否为空是否为主键注释bidint11是是单车表id;单车编号b_namevarchar20否否单车名字b_iconvarchar64否否单车图片b_cidint11否否单车分类b_in_timevarchar30否否入库时间b_statevarchar10否否单车状态b_create_timedatetime0否否该列创建时间b_update_timedatetime0否否该列更新时间b_commentvarchar200否否备注单车分类表(category):用于存储宠物的分类信息。表3-3单车分类表(bike_category)字段名数据类型字段长度是否为空是否为主键注释cidint11是是单车分类表idc_namevarchar20否否品牌名称c_remainint11否否剩余数量c_rentfloat0否否租金,单位:元/小时c_cashfloat0否否押金c_create_timedatetime0否否该列创建时间c_update_timedatetime0否否该列更新时间c_commentvarchar200否否备注c_pricefloat0否否单车采购单价订单表(order):用于存储一些宠物新闻的信息。表3-4订单表(order)字段名数据类型字段长度是否为空是否为主键注释oidint11是是订单表ido_snovarchar30否否学生号o_bidint11否否单车ido_borrow_timevarchar64否否借车时间o_return_timevarchar64否否还车时间o_real_rentfloat0否否租金o_cashfloat0否否押金o_statevarchar10否否归还状态o_create_timedatetime0否否该列创建时间o_update_timedatetime0否否该列更新时间o_commentvarchar200是否备注服务点信息表(place):用于存储一些名人名犬的文章信息表3-5服务点信息表(place_infromation)字段名数据类型字段长度是否为空是否为主键注释pidint11是是服务点idp_namevarchar64否否服务点名称p_addressvarchar200否否地址p_phonevarchar13否否服务电话p_create_timedatetime0否否该列创建时间p_update_timedatetime0否否该列更新时间p_commentvarchar200否否备注学生信息表(student):用于存储宠物训练的一些知识:表3-6学生信息表(stu_information)字段名数据类型字段长度是否为空是否为主键注释sidint11是是学生表idsnovarchar20否否学号s_namevarchar20否否学生姓名s_sexchar2否否学生性别s_id_cardvarchar20否否学生身份证s_emailvarchar64否否学生邮箱s_phonevarchar13否否学生电话s_iconvarchar64否否学生头像s_departmentvarchar20否否院系s_majorvarchar20否否专业s_create_timedatetime0否否该列创建时间s_update_timedatetime0否否该列更新时间s_commentvarchar300否否备注系统详细设计之前通过需求分析和可行性分析后,通过系统功能的大概描述划分出了本系统的模块,并介绍了每个模块所具有的功能和各个模块之间的关系,然后将模块的功能通过数据库体现出来。本章将从系统的详细设计和实现方面,通过各个模块的划分以及主要模块的源代码分析,来介绍本系统。4.1用户操作模块4.1.1系统首页模块1、网页首页图本管理系统由于主要以管理员的需求为主,系统首页虽然只有登录窗口,但是外观简洁,可使用户清楚的看到登录窗口,管理员也可以通过首页进入系统最终实现对校园共享单车的管理功能。校园共享单车的首页如图4-1所示:图4-1网页首页界面4.1.2注册页面1、系统注册界面图用户由首页可进入注册界面,填写相应的用户信息,注册成功后便可以登录本校园共享单车管理系统。注册时,会有相应有权限选择,前台用户可以注册学生类型,学生在注册的时候需要填写学生姓名、学生号、密码、电话等信息,标红的为必填信息,注册成功后便可通过登录解面进入系统。用户注册页面如图4-2所示:图4-2用户注册界面2、用户注册流程图用户在注册时会在后台用户数据库增加新数据,系统会通过form表单判断是否有重复用户名,并判断数据是否符合相应的数据类型,如不符合,则会提醒错误,成功注册的学生用户可以进行登录,用户注册的流程如图4-3所示:图4-3用户注册流程图3、用户注册源代码分析Jsp文件建立相应的表单控件,分别用username代表用户名、userpwd代表密码,点击注册按钮提交form表单,action参数指向admincontroller层来执行register方法,admincontroller层中的register方法调用adminService层的中的add方法登录成功注册后后回到系统的首页Jsp页面。主要源代码如下:
publicJsonResultregister(MultipartFileadminIcon,Adminadmin,HttpServletRequestrequest){
System.out.println("进入方法");
Studentstudent=newStudent();
student.setSno(admin.getaUsername());
student.setsName(admin.getaRealName());
student.setsPhone(admin.getaPhone());
if(admin.getAid()==null){
studentService.add(adminIcon,student,request);
returnadminService.add(adminIcon,admin,request);
}
returnadminService.update(adminIcon,admin,request);}4.1.3用户登录页面1、用户登录界面注册成功的用户然后进行登录的相关操作。未注册的用户在注册成功就会回到登录界面。用户登录时系统也会对账号和密码进行检测,验证数据库中是否有该用户的账号和密码,两者是否正确。登录时也需要输入正确的验证码,验证码通过随机取数生成。用户登录页面如图4-4所示:图4-4用户登录界面2、登录流程图本系统可分超级管理员、管理员、学生用户三种情况登录,这三个不同角色登录后拥有不同的权限。登陆时需要正确输入账号密码和验证码,如果有一项输入错误就会提醒报错然后返回登录界面。具体流程如图4-5所示:图4-5登录流程图2、用户登录源代码分析Jsp文件建立相应的表单控件,分别用username代表用户名、userpwd代表密码、valicode代表验证码,点击登录按钮提交form表单,action参数指向admincontroller层来执行login方法,admincontroller层中的login方法调用adminService层的中的checkUserPwd方法登录成功后进入Jsp页面。主要源代码如下:
publicStringcheckUserPwd(Adminadmin){
Stringpassword=MD5Util.getMD5(admin.getaPassword());
AdminrealAdmin=findByUsername(admin.getaUsername());
if(realAdmin!=null){
if(password.equals(realAdmin.getaPassword())){
return"成功";
}
return"密码错误";
}
return"没有此账号";
}4.1.4密码管理页面1、更改密码面图用户点击更改密码后,可以进入更改密码页面进行密码的更改,如图4-6所示:图4-6更改密码界面2、更改密码源代码分析Jsp文件建立相应的表单控件,,点击更改密码按钮提交form表单,action参数指向studentcontroller层来执行update方法,studentcontroller层中的update方法调用adminService层的中的resetpwd方法进行密码的更改。主要源代码如下:publicJsonResultsubmitResetPwd(Stringpassword,StringnewPassword,HttpSessionhttpSession){
Adminadmin=(Admin)httpSession.getAttribute("student");
if(!admin.getaPassword().equals(MD5Util.getMD5(password))){
returnnewJsonResult(false,ResultEnum.OLD_PASSWORD_ERROR);
}
admin.setaPassword(MD5Util.getMD5(newPassword));
admin.setaUpdateTime(newDate());
booleanisSuccess=adminService.upDate(admin);
if(isSuccess){
returnnewJsonResult(isSuccess,ResultEnum.UPDATE_SUCCESS);
}
returnnewJsonResult(isSuccess,ResultEnum.UPDATE_FAIL);
}4.1.5单车租赁界面MyOrder.jsp文件建立相应的表单控件,点击提交订单按钮按钮提交form表单,action参数指向myordercontroller层来执行submit方法,myordercontroller层中的submit方法调用myorderService层的中的add方法进行订单的添加。用户进入单车租赁界面后,点击添加订单后输入自己的学生号和单车号后可以添加订单,如图4-8所示:图4-8单车租赁界面Order.jsp文件建立相应的表单控件,点击提交订单按钮按钮提交form表单,action参数指向ordercontroller层来执行submit方法,ordercontroller层中的submit方法调用orderService层的中的remove方法进行订单的归还。用户在使用完单车后可以点击归还订单,会根据单车状态和租赁时间来计算租金,如图4-9所示:图4-9订单归还界面4.1.6个人信息管理界面Myinfo.jsp文件建立相应的表单控件,点击修改个人信息按钮提交form表单,action参数指向studentcontroller层来执行edit方法,studentcontroller层中的edit方法调用studentService层的中的update方法进行个人信息的更改。用户可以点击个人信息管理,进入个人信息管理界面,之后能看到自己的信息,如邮箱,所在院系等信息。如果有想要补充的就可以进行补全,如图4-10所示:图4-10个人信息管理界面4.2后台管理员操作模块4.2.1管理员登录Login.jsp文件建立相应的表单控件,点击提交订单按钮按钮提交form表单,action参数指向admincontroller层来执行login方法,admincontroller层中的login方法调用adminService层的中的checkpwd方法进行登录的验证。本系统拥有超级管理员和管理员两种管理员,前者只有一个,后者可以由前者添加多个,他们都可以通过登录进入管理系统,对系统中的各个功能进行操作和实现。管理员登录页面,如图4-12所示:图4-12管理员登录页面如果输入的密码或者验证码有错误,就会有对应的显示,如图所示:4.2.2系统页面系统页面是管理员登录成功后显示的页面,在此页面中,最左边一条显示了管理员拥有的权限,如可以管理服务点或者管理员的信息,或者对自己的密码进行更改等,系统页面如图4-13所示:图4-13系统页面4.2.3单车信息管理Bike.jsp文件建立相应的表单控件,分别用bcid代表单车号码、bcount代表单车数量、bstate代表单车状态,点击修改按钮提交form表单,action参数指向bikecontroller层来执行edit方法,bikecontroller层中的edit方法调用bikeService层的中的update方法修改单车信息。单车信息管理页面直观地显示了每一辆单车的具体信息、借还状态和自身状态。具体信息包括单车号码,单车分类,单车购入时间等信息,单车信息管理页面如图如图4-14所示:图4-14单车信息管理界面4.2.4增加单车信息Bike.jsp文件建立相应的表单控件,分别用bcid代表单车号码、bcount代表单车数量、bstate代表单车状态,点击增加按钮提交form表单,action参数指向bikecontroller层来执行edit方法,bikecontroller层中的edit方法调用bikeService层的中的add方法增加单车信息。增加单车信息就是对新购入的单车在加入服务点之前进行信息的完善,出了单车分类和单车号码外,还可以添加备注,使要租车的学生更加了解单车的信息。如图4-14所示:图4-14添加单车信息修改单车信息,可以先择要修改的单车信息,可在操作中修改单车来修改单车的详细信息。对于不需要的单车,可以直接删除,页面如图4-15所示:图4-15修改单车信息4.2.5学生信息管理Student.jsp文件建立相应的表单控件,点击修改按钮提交form表单,action参数指向studentcontroller层来执行edit方法,studentcontroller层中的edit方法调用studentService层的中的update方法修改学生信息再学生信息管理页面下管理员可直接看到该页面下的所有学生的信息,包括学号,姓名,性别等信息,此页面管理员可以任意地修改或删除学生的信息。是管理员所有权限中非常重要的权限。学生信息管理页面如图4-16所示:图4-16学生信息管理界面4.2.6增加学生信息Student.jsp文件建立相应的表单控件,分别用sno代表学生号、ssex代表学生性别、sname代表学生姓名,点击增加按钮提交form表单,action参数指向studentcontroller层来执行edit方法,studentcontroller层中的edit方法调用studentService层的中的add方法增加学生信息。增加学生信息就是当未注册的学生临时想要借车时,由管理员增加他的个人信息,由于是临时添加,学号和姓名是必要的信息,其他信息可以在后续进行添加完善。管理员在此模块可进行的信息添加如图4-17所示:图4-17增加学生信息修改学生信息,可以先择要修改的学生信息,可在操作中点击修改学生来修改学生的详细信息。对于不再需要使用单车的学生,可以直接删除如图4-18所示:图4-18修改学生信息4.2.7租赁信息管理Order.jsp文件建立相应的表单控件,oid代表订单号,osno代表学号,ostate代表订单状态,点击提交订单按钮按钮提交form表单,action参数指向ordercontroller层来执行submit方法yordercontroller层中的submit方法调用orderService层的中的add方法,点击移除则是remove方法最终调用delete方法进行订单的移除。进行订单的添加租赁管理页面中单车的订单信息会随时间由久到近依次从下往上排序。订单信息包括订单号,单车号码,该单车所对应的学生学号以及所需押金和所付租金。也包括借还时间,租金会随着时间的长短而变化。管理员也是通过此页面进行订单的收回和借出。租赁信息页面如图4-21所示:图4-21租赁信息管理界面4.2.8信息统计模块Total.jsp文件为信息统计模块的页面文件,此文件中调用了head.jsp中的算法,将各个模块的信息通过计算展示了出来。信息统计模块的页面会对本系统的租金往来流水,已收押金等信息进行展示,在此页面还可以看到所有服务点的单车总数量,已录入学生的总人数,借车人次等信息,通过需要维修和已报废车辆个数也可在单车管理中通过找到这些单车进行回收,还能通过各部分收支计算出总盈利。如图4-21所示:图4-21信息统计界面
系统测试社会上网站的测试一般都看服务器的运行及回掉响应速度和在大量的访问下的高并发率,这仅考率网站的基础性能。网站的另一项重要测试是针对系统的各项功能是否完善,能否完成测试用户的各项流程正确运行,在系统的研发阶段会产生各种大大小小的各种隐藏性Bug,因此会忽视或者遗漏。这时系统测试就发挥它的重要作用,一个功能的完善度是靠反复的测试得出的结论,所以网站系统的测试在设计时期就是必须考虑的环节。5.1运行环境操作系统:Windows10系统类型:64位操作系统,基于x64的处理器CPU:(英特尔)Intel(R)Core(TM)i7-7700HQ内存:8GB(1600MHZ)Web容器:Tomcat网页浏览器:谷歌浏览器数据库:mysql-5.6.33-winx64数据库连接工具:Navicat105.2系统测试 系统的测试标志着一个系统正进入即将完成的最后阶段,通过系统测试可以反映出这个系统所具备的功能以及未来可能遇到的各种问题,系统测试是一个开发过程中不可或缺的部分,通常系统测试会使用以下两种方法:黑盒测试和白盒测试。通常的系统测试主要以黑盒测试为主,白盒为辅,本次测试主要通过黑盒测试。黑盒测试黑盒测试就是让测试者把系统当成一个封闭的黑盒子,在不了解内
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 译林版(三起)四年级英语上册课件Unit What we wear第2课时(Cartoon time Sounds in focus)
- 矿业权评估师考试资产评估试题(完整版)
- 译林版(三起)三年级英语上册课件Unit 8 I can do this for you第1课时(Get ready)
- 2026导游证笔试全真模拟试题库
- 公路水运工程试验检测专业技术人员职业资格考试《水运材料》真题(含解析)
- 幼儿远离电子产品护眼科普课
- 自然养生顺应天时科普
- 2026 年汛期灾害风险分级防范科普讲解
- 2026 年暴雨山洪塌方常见错误避险方式科普
- 人工智能辅助金融机构决策
- 合作生育子女协议书
- (高清版)DG∕TJ 08-2433A-2023 外墙保温一体化系统应用技术标准(预制混凝土反打保温外墙)
- 眼科器械处理流程及质控要点
- 医保基金检查合同范本
- DB51 T1996-2015四川公路工程超声回弹综合法 检测结构混凝土强度技术规程
- 《宠物美容与护理》课件-梳毛工具
- 护理查房特发性突聋
- GB/T 44370-2024系统和软件工程软件产品质量要求和评估可用性通用行业格式用户需求说明
- 《建筑排水塑料管道工程技术规程 CJJT29-2010》
- 食品安全与日常饮食智慧树知到期末考试答案章节答案2024年中国农业大学
- 海南省民族教育发展提升行动计划(2023-2025年)
评论
0/150
提交评论