【基于SpringMVC的共享单车管理系统设计】13000字(论文)_第1页
【基于SpringMVC的共享单车管理系统设计】13000字(论文)_第2页
【基于SpringMVC的共享单车管理系统设计】13000字(论文)_第3页
【基于SpringMVC的共享单车管理系统设计】13000字(论文)_第4页
【基于SpringMVC的共享单车管理系统设计】13000字(论文)_第5页
已阅读5页,还剩28页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

基于SpringMVC的共享单车管理系统设计在过去的45年中,公共自行车的运行管理系统已经经历了三次迭代更新。如今,互联网与计算机技术的高速发展为开发一个信息化的,现代化的单车系统提供了合适的条件。本次开发的共享单车系统的设计目标正是实现单车出租信息的信息化管理,提高管理效率,使得共享单车管理工作规范化、高效化、科学化。本系统的设计与开发是基于Java语言提供的SpringMVC框架,使用B/S结构,开发出了一个具有稳定性的单车系统。在本篇文章中,详细的研究了一个现代化的单车系统的可行性以及其开发的意义与起的优势所在。也展示了在开发的过程中,逐渐实现的管理用户信息,管理维修员信息,租借车辆,用户充值和车辆维修等功能。本次开发的系统在最终测试中,也表现出了运行稳定,操作方便的特性。证明了本此开发的共享单车系统是一个功能全面、实用性高、可维护性强的共享单车系统。共享单车系统;SpringMVC框架;设计与实现目录1绪论 绪论课题背景与意义在过去的几十年里,计算机技术经历了快速的发展,在当下,人们的生活各个方面都开始使用计算机进行信息管理。数十年的计算机技术发展时间,不仅仅给人们的生活带来了的改变,也为生产方式、信息获取方式和信息管理方式提供了西新的思路。在现代化的高信息量,高生活速度的社会中,传统的由人工进行管理的共享单车管理方法在面对现代化生活所推进的,大量的、高速的生成数据速度,信息无法及时更新的弊端愈发清晰,传统的共享单车管理方式过度的依靠人力资源来进行信息的管理,对信息的处理能力出错率相对高,效率也相对较低。如果开发一个以计算机技术与网络技术为基础的共享单车管理平台,就获得了一个能够更加高效的对单车信息进行处理的管理方式。互联网与计算机技术的快速发展,为开发一个简单高效的共享单车信息管理系统的设计与实现提供了大量的基础条件。同时,以互联网与计算机技术为基础的共享单车信息管理系统与传统的单靠人力资源对单车出租信息进行管理的管理方式相比存在很多显著的优点。例如,在网络平台上可以利用网络的传播速度快,信息浏览方式便捷等等的特点,使用户与管理人员可以实时的,迅速的,便捷的对数据进行操作,通过这些便捷之处可以极大的提高对单车信息进行管理的效率与系统运行的速率。国内外研究现状在过去半个世纪中,各个国家在对公共自行车的管理方式与运作方式进行研究,迄今为止公共自行车的运作流程与管理方式已经经历了三次换代变革。在上世纪的六十年代,有一些组织在荷兰的阿姆斯特丹实验并实行了一种较为原始的公共自行车系统,时隔30年后,在九十年代,第二代公共自行车交通系统也相继在欧洲的少数地区进行了实验与运行。第二代公共单车系统与第一代相比,第二代公共自行车系统更加的正式化与规范化。随后在九十年代的末期,使用最新的管理技术的新一代的公共自行车系统正式在欧洲的大量国家开始实行。我国也从九十年代起对公共单车系统越来越重视,经过多年的发展后,一个共享单车数据管理系统所需要涉及的方面已经更加的广泛,采用单纯的人工资源进行管理的管理方式已经无法满足当今社会发展与人们需求的需求,进入21世纪,中国也开始大力发展公共自行车系统,同时,互联网技术也在快速发展,因此,当前社会对一款能够在互联网上快速进行对公共自行车系统进行管理与使用的系统有着极大的需求。通过开发一个能够满足社会需求的基于计算机与网络技术的共享单车管理系统,既能够为管理人员提供一种全新的高效的管理方式,也可以为系统的用户提供了一个更加便捷的平台。一个良好的共享单车系统在当今社会具有良好的发展空间,具有很高的研发价值。课题主要研究内容本此的系统开发主要是采用Spring+SpringMVC+Mybaties整合框架技术,本次系统开发工作使用的是WINDOWS系统上的编译工具MyeEclipse。本课题主要目标是为公共自行车系统开发一个简单高效的基于计算机与互联网技术的共享单车信息管理系统。在本次开发的系统中,主要的实现的功能有:管理员与用户的登录,用户的信息管理,车辆的信息管理,车辆的租用,车辆的维修等内容。论文结构本文是对课题基于SpringMVC框架的共享单车系统的设计与实现的详细分析,共编写了六大章节用于对该课题进行刨析。第一章:绪论。在绪论章节中,主要是是对基于SpringMVC框架的共享单车系统的设计与实现这个课题的课题背景与意义、课题主要研究内容、国内外研究现状与本篇论文的论文结构的进行了一个简单分析,简单阐述了课题的研究内容,并说明了本此开发基于SpringMVC框架的共享单车系统的设计与实现课题的意义。第二章:相关技术介绍。在这个章节中,主要介绍在本次开发的共享单车系统中所使用到的主要的框架技术。第三章:需求分析。在这个章节中,主要是刨析开发基于SpringMVC框架的共享单车系统的可行性、系统的结构和功能等方面的内容。第四章:系统设计。在这个章节,详细分析了本次所开发的基于SpringMVC框架的共享单车系统的整体上的设计。主要分析了包括数据库结构模型、主要功能模块、基础框架设计等方面。第五章:系统实现。在这一个章节中,简单的介绍了系统完成开发后,其中的与管理员、维修员与用户等模块的具体功能的实现情况与运行情况,并且在这个章节中也简单的展示了少量的代码的设计与实现方式。第六章:系统测试。在这一个章节中主要是对本此开发的系统中的一些主要的功能进行了一些简单的测试,并且根据预测结果和测试结果对系统的实现完成度进行了简要的分析。相关技术介绍本系统的开发主要是基于Java语言中所开发出的SpringMVC框架进行的具体的代码实现,在数据管理方面则选用了开源免费的MySQL数据库来进行开发,在系统的开发过程中使用的是Mybaties框架连接数据库。接下来将简略介绍基于Java语言的SpringMVC框架技术、MySQL数据库、Mybaties框架技术以及其他的一些在开发的过程中具体应用到的技术与结构。B/S结构B/S(Browser/server)结构是当前网络应用开发中最常使用使用的主流结构,它可以将系统的一些核心功能集中在服务器上。基于该体系结构,用户的大部分操作都可以直接通过浏览器实现。前端浏览器(Browser)主要负责页面的呈现和显示,服务器(Server)主要负责具体的逻辑。在项目的开发中,只需要使用主流的浏览器和数据库,就可以完成简单的开发。B/S结构还支持脚本语言的应用,可以帮助程序开发节省开发成本和时间。目前,B/S结构已经成为程序开发的主流结构,它最好的地方就是没有地方限制,不需要安装专门的软件,电脑或移动端等可以进行网络交互的工具都可以上网访问系统。本系统采用B/s模式进行开发,便于以后的系统维护。它不需要操作服务器上的所有问题。简单的客户端处理可以解决一些问题。开发的程序和用户之间的交互也将得到加强。它还可以实时刷新浏览器,更新程序的部分数据信息。SpringMVC框架SpringMVC框架技术是一款在SpringFrameWork基础上开发出的一个更加便捷的开发控制器框架技术。在使用SpringMVC框架进行开发时,我们直接利用SpringMVC框架中所拥有的构建Web应用所需的模块进行开发,因此在开发的时候具有很高的方便性。SpringMVC框架在接收参数时使用控制器方法参数收集客户端所发出的请求数据。当请求数据发送到服务器后,SpringMVC框架的的核心DispatcherServlet(中央控制器)就会将请求分发到根据需求发送到设置好的处理器(handlers)上。在基于SpringMVC框架所开发的系统中,我们可以通过SpringMVC框架所提供的@RequestMapping和@Controller等注解来完成对处理器的配置,这也意味着我们不再需要通过撰写配置文件来引入一系列的依赖,这一举措让我们在使用该框架是更加简单,同时也提高了框架的灵活性。MySQL数据库MySQL是一种开源的关系型数据库管理系统,它使用了最常用的结构化查询语言,SQL语句来管理数据库。因为MySQL数据库是开源的,我们可以根据自己的需要修改MySQL数据库,以适应我们需要的功能。基于它的开源特性,很多人都在不断优化MySQL数据库,所以MySQL数据库的性能非常优越。因为MySQL数据库中的数据并非是直接视图化的,所以在使用MySQL数据库时,一般都是搭配Navicat软件进行使用。Navicat是一个非常方便的数据库管理工具,旨在简化数据库管理和降低系统管理成本。它的设计满足了数据库管理员、开发人员和中小企业的需求。Navicat是建立一个直观的图形用户界面,允许创建,组织,访问和共享信息。使用Navicat软件与MySQL进行结合使用,能够高效的加快开发进度。Mybatis框架技术Mybatis框架的主要功能在于替代传统的的JDBC,在代码的实现方面极大得简化了传统的JDBC代码。它是对现有JDBC-DAO层代码的合理封装,可以自动完成对象关系映射(ORM),在很大程度上简化了开发,提高了开发效率。在Mybatis程序运行时,它会使用SqlSession对象根据mapper文件动态生成接口的实现类不需要我们大量编码JDBC中较为冗余的代码。通过Mybaties框架,可以极大的简化与数据库的代码的编写,加快代码编写效率。需求分析想要开发一个功能完善的系统,在系统实现前,必须要对系统进行需求分析,通过需求分析,可以更好的确定开发中所要实现的功能。通过对本次开发的共享单车系统进行需求分析,可以清楚的了解到实现基于SpringMVC框架的共享单车系统所需要的开发环境。在开发开始前对系统进行一次详细的分析过程,能够极大的减少开发中的错误,提高开发效率。可行性分析每一个系统在开发之初都要要对系统开发的可行性进行多方面的详细分析,通过详细的分析得到结果,可以让我们在开发前期的准备过程更完善。在可行性这个章节里,简单的描述了基于SpringMVC框架的共享单车系统在开发前在操作可行性方面、经济可行性方面和技术可行性方面共计三个方面进行可行性分析,通过对这三个方面的可行性分析后,最终得到了整个系统的可行性分析结果。操作可行性分析操作可行性主要包含了一个系统开放后的可用性与使用时的简易性,一个良好的共享单车系统需要有着简单的操作流程与简洁的页面布局,太复杂的操作与使用流程时与开发理念背道而驰的。例如,在开发时,可以将有关联的功能通过代码的实现放在同一个菜单下,或按照一定的顺序依次展现,这样可以有效的提高基于SpringMVC框架的共享单车系统最终实现后的可操作性。通过对操作可行性的研究可以让用户顺利简单的使用开发的好的系统。本此开发的共享单车系统具有简单易操作的用户交互界面。在开发的过程中,充分的考虑了系统最终实现后用户所需要的便捷的操作流程,保证了操作的可行性。经济可行性分析本次所开发的共享单车系统的开发过程是在WINDOWS系统中进行的,在开始时使用的编译工具是常用的MyEclipse开发工具与MySQL数据库,降低大量的开发成本。本次共享单车系统的开发时使用了B/S结构,因此在开发时对计算机的要求很低。综上所述,本本次所开发的共享单车系统在经济方面是完全可行的。技术可行性分析在技术可行性进行分析时所考虑的时开发基于SpringMVC框架的共享单车系统所使用的技术条件能否完全完成对共享单车系统的开发。软件方面,本系统以较为成熟的MyEclipse编译工具为开发工具,数据库采用的是最为常见的,也是小型项目中最常使用的MySQL数据库。在开发时实现代码的语言选用的是成熟的Java语言技术来进行开发,非常方便快捷。因此,开发本共享单车系统在软件技术上时完全可行的。关于硬件方面,计算机技术与网络技术的高速发展使得开发一个小型项目将所需要的硬件条件越来越低,一个普通的笔记本电脑即可完成开发工作,所以在硬件方面开发一个基于SpringMVC框架的共享单车系统是完全可行的。综上所述,本次共享单车系统的开发,在技术上是完全可行的。功能需求分析本次的开发的目的是获得一份能过支持当今社会下的高数据量处理的共享单车系统系统。在这个系统中,主要存在着三个角色,依次是管理员、维修员和用户,下面将分别介绍其模块中所存在的主要的功能。管理员模块功能分析在本单车系统中,管理员这个角色主要是在系统的后台中,对整个共享单车系统中所包含的信息与数据进行全面的、详细的处理。因此,管理员在后台的主要信息管理内容要包括对用户的个人信息、网站的运行信息、维修员信息、车辆详细信息、租借评论等。1.用户个人信息管理员在登陆后,可以在网站的后台界面中查看已有用户的信息,也可以对用户的账户进行冻结操作。点击充值按钮,也可以选择用户对用户进行充值操作。2.网站的运行信息在后台中,管理员可以查看网站的登录信息日志,在公告管理中,可以对公告信息进行添加、删除、编辑等操作。3.维修员信息后台中,管理员角色可以对维修员角色的信息进行常规的管理操作。当管理员进入维修员信息界面后,可以对维修员的信息进行增加、删除、新增和修改操作。4.车辆详细信息在后台中,存在着车辆的类型管理界面与车辆的信息管理界面这两个界面,管理员进入这两个界面后可以查看车辆的信息并对每条车辆的的详细信息进行增加、修改、删除等信息处理操作。5.租借评论当管理员进入系统的在后台后,可以点击菜单栏中相应的选项查看每位用户在使用单车后留下的评论,同样的,也选择相应的选项查看用户的留言。用户模块功能分析在用户模块,主要提供了一些用户所需要进行的操作,在用户中心中包括个人信息、租借评论,车辆收藏与租借等功能。在这里,用户可以进行对单车的租借操作与消息的查询与交互。1.个人信息用户在登陆后,可以在个人中心查看自己的信息,也可以对自己的个人信息进行修改。2.车辆收藏与租借用户登陆后,可以在网站的首页查看车辆的信息,收藏车辆的信息后可以在个人中心中查看自己收藏的信息,并且在可以在收藏信息界面对车辆进行租借。3.租借评论用户可以在车辆租借时,在信箱中进行留言,也可以在车辆归还后,对车辆信息进行评价。这些信息管理员都可在后台进行查看。维修员模块功能分析在维修员中心,主要包括查看维修车辆信息、以及维修信息的处理两项功能。维修员模块中专注于对车辆的维修信息进行管理。1.查看维修车辆信息维修员登陆后,可以在维修界面查看管理员提交的维修信息。2.维修信息的处理维修员在登陆后可以根据在查看管理员提交的维修信息,在维修界面查看到管理员提交的维修信息后,可以通过维修信息选择相应的单车的信息进行处理。非功能性需求分析在系统的开发过程中,除了设计与实现的逻辑上的功能外,也要考虑一些非能性的需求。。可操作性每一个系统的设计的应该能够使用户方便快捷的使用的,在这个系统中的各种功能都应该操作简单使用方便。当用户打开本次开发的系统时,要面对的是一个高质量的用户界面,这个界面要易于操作,简单易懂。只有界面尽可能的简洁美观,才能提高系统的可操作性。可扩展性在现代化,数字化的条件下,共享单车系统中的数据的产生速度一定是会持续增长的,因此,在对系统开发时,要考虑到共享单车系统在未来的扩展,用以达到应对信息与数据的高速更新与发展的目的。本次所开发的系统在开发时使用的是B/S架构,使用了SpringMVC框架。在代码实现的过程中,预留多个扩展可能的功能部分,在日后,也可根据实际需求添加更多的功能,这正是本次所开发的基于SpringMVC框架的共享单车系统的可扩展性所在。稳定性共享单车系统需要一个稳定的操作流程,在运行的过程,要避免前端跳转错误,数据传输错误等问题。在开发时就要考虑稳定性的问题,在开发完成后,本次所开发的基于SpringMVC框架的共享单车系统需要在长时间的测试中运行稳定,以此来判断本次所开发的系统在真正运行时的稳定性。系统用例分析管理员用例分析在本此所开发基于SpringMVC框架的共享单车系统中,每位管理员都可以通过账号密码登录进入管理员后台界面,在后台界面中,管理员可以对系统存在的中维修员信息、用户信息、车辆信息与网站信息进行具体的操作与管理,也可以选择相应的选项对这些内容进行添加。管理员用例图如图3-1所示:图3-1管理员用例图用户信息管理用例描述,每当管理员登录系统并进入管理员后台页面中后,就可以点击相应的按钮就进入用户的信息界面和用户账户充值界面对与用户相关的信息进行操作。用户信息管理用例描述表如表3-1所示:表STYLEREF1\s3-SEQ表\*ARABIC\s11用户信息管理用例描述表用例名称用户相关信息管理用例参与者管理员目标管理员对用户相关信息进行信息管理操作前置条件管理员登录并进入系统后台用户信息相关页面基本事件流(1)管理员在登陆界面输入账户信息并点击登录。(2)管理员进入管理员的后台页面后,选择左侧菜单栏中功能点击并进入用户相关信息管理界面。(3)进入用户信息管理界面,点击操作按钮进行管理操作。(4)冻结用户账户,选择用户信息,点击冻结(5)用户账户充值,点击充值,选择用户与金额,点击提交车辆相关信息管理用例描述,管理员登录后进入后台页面后,可以点击菜单栏中按钮进入车辆类型界面和车辆信息界面,在这两个界面中,可以完成对车辆的信息的增加、删除、修改操作。用例描述表如表3-2所示:表STYLEREF1\s3-2车辆相关信息管理用例描述表用例名称车辆相关信息管理用例参与者管理员目标管理员对车辆相关的信息进行管理操作前置条件管理员完成登陆验证并登陆进入管理员后台界面基本事件流(1)管理员输入登陆信息完成信息验证后登录系统(2)管理员进入管理员的后台页面后,选择左侧菜单栏中功能点击并进入车辆相关信息管理界面。(3)进入车辆具体信息界面,点击管理按钮进行管理操作(4)对车辆类型信息进行操作,点击进入车辆类型界面,点击新增、修改、删除等按钮完成操作(5)对车辆信息进行操作,点击进入车辆信息界面,点击新增、修改、删除等按钮完成操作维修员相关信息管理用例描述:当管理员登录系统并进入后台页面后,通过菜单栏中按钮跳转到维修员信息管理界面,在这个几面中对对维修员信息进行在新增修改等管理操作。用例描述表如表3-3所示:表STYLEREF1\s3-3维修员相关信息管理用例描述表用例名称维修员相关信息管理用例参与者管理员目标管理员对维修员相关的信息进行管理操作前置条件管理员完成登陆验证并登陆进入管理员后台界面基本事件流(1)管理员输入登陆信息完成信息验证后登录系统。(2)管理员进入管理员后台界面并选择左侧菜单栏中功能点击并进入维修员相关信息管理界面。(3)进入维修员相关信息界面,点击相应的按钮进行操作。(4)对维修员的信息进行增加、删除、修改等有关信息管理的操作。用户用例分析普通用户用例图如图3-2所示:图3-2普通用户用例图用户信息注册用例描述,当普通用户进入单车系统的网站后,可以进行注册操作,注册成为网站的用户。用例描述表如表3-4所示:表STYLEREF1\s3-4用户信息注册用例描述用例名称用户信息注册用例参与者未注册的用户目标用户通过注册操作获取账号密码前置条件进入网站的注册界面基本事件流(1)进入网站。(2)点击注册,跳转到注册页面(3)依次输入各项信息并验证是否正确。(4)点击注册,完成注册用户个人信息管理用例,每位用户进入网站后,都可以进入个人信息界面查看并管理自己的个人信息,在个人信息界面也可以对使用操作按钮对自己的信息进行修改。用例描述表如表3-5所示:表STYLEREF1\s3-5用户个人信息管理用例描述用例名称用户个人信息管理用例参与者已登录的用户目标登录的用户对自己的信息进行修改前置条件用户已登录基本事件流(1)用户登录网站并进入个人界面。(2)点击菜单栏个人信息按钮。(3)勾选信息并点击修改按钮。(4)修改信息并保存车辆租借用例描述,用户进入网站后,可以通过首页的车辆信息跳转到车辆详细信息界面,提交车辆信息到个人收藏中,最终在个人收藏界面中完成对车辆的租借操作。用例描述表如表3-6所示:表STYLEREF1\s3-6车辆租借用例描述用例名称车辆租借用例参与者已注册用户目标用户浏览车辆信息并对车辆进行租借前置条件用户已进入网站基本事件流(1)用户浏览网站首页。(2)点击并查看车辆信息(3)登录后提交想要租借的车辆信息(4)在个人界面我的收藏中确认车辆信息。(5)勾选车辆并点击租借。系统设计系统概要设计本此的共享单车系统开发采用B/S结构,其用户可以通过互联网,在可以在任何时任意条件下访问。在整个系统中,主要包括的三个大的模块,在大的模块下有存在着这种功能小模块。三个大模块分别为用户功能模块、维修员功能模块和管理员功能模块共,在三个大模块中又分别有用户信息模块、用户充值模块、车辆信息模块等等各种功能小模块。这些模块组合在一起构成“基于SpringMVC框架的共享单车系统”。功能模块图如图4-1所示:图4-1功能模块图系统详细设计流程图是一种能够清楚的指出交互过程与期望的结果的图形化图表。在流程图中,可以清楚的看到多个分类器角色之间进行的交互序列。用户登录登录功能主要用于系统管理员与用户的登录操作管理,在登陆时,系统会对用户输入的用户名、用户密码和用户身份进行判断,当信息和已存在的信息符合时,登陆成功。登录成功后根据登陆时选择的不同角色身份进入不同信息展示界面。该功能的流程图如图4-2所示。图4-2登录流程图用户注册在本系统中,存在着注册功能,在注册页面,新用户可以在这里进行注册操作。在注册时,系统同样会对用户输入的账号密码信息与其他信息的格式进行验证。只有格式正确是,才能通过验证,提交注册。注册功能流程图如图4-3所示。图4-3注册功能流程图图车辆租借在本次开发的系统中实现了车辆的租借功能,在对车辆进行租借时,需要用户对车辆的信息进行收藏,收藏后可以在用户的个人中心浏览已经存在的单车的信息。在进行租借时,直接勾选已收藏的单车信息并提交即可完成整个租借流程,车辆租借流程图如图4-4所示。图4-4车辆租借流程图用户充值在本系统中,登录的管理员与用户都可以对特定的账户进行充值操作。在充值时,打开个人中心,选择充值,输入金额并提交即可完成充值。但是管理员充值功能月与用户充值功能的区别在于,每一位管理员可以选择进某位用户进行充值操作,而用户在进行充值操作时只能对自己的账户进行充值操作。用户充值流程图如图4-5所示。图4-5用户充值流程图添加维修员管理员在登录系统后,可以在后台界面中查看系统中的维修员的信息。在维修员信息界面,管理员可以对维修员进行维修员信息新增操作。维修员信息新增操作流程图如图4-6所示。图4-6添加维修员流程图公告发布在管理员模块中,管理员可以是实现一些对网站相关信息的管理操作,每一位管理员在登陆系统之后,都可以在管理员后台界面查看有关网站当前公告的信息,,也可以对公告内容进行增加、删除、修改等管理操作。公告新增流程流如图4-7所示。图4-7添加公告流程图数据库设计数据模型设计在本次开发的共享单车系统中,主要包括管理员的信息、用户的信息和车辆信息三个部分。在本次开发的系统之中,管理员可以对与用户相关的信息和与单车相关的信息进行管理规定的管理操作,在用户登陆系统中后,也可以在个人中心对单车信息进行一些操作,三者的关系具体E-R图如图4-8所示:图4-8管理员、用户、单车E-R图管理员信息的实体类主要是为了在系统运行中存储管理员信息,在这个管理员实体类中有三个属性,分别是管理员ID属性、管理员账号属性和管理员密码属性三个属性。管理员表实体书属性图如图4-9所示:图4-9管理员表实体属性图用户信息的实体类主要是为了存储用户的相关数据。在用户实体类中主要包括了八种属性。这八个属性此次为存贮用户ID的用户ID属性、存贮用户账号的用户账号属性、用户手机号属性、登录密码属性、用户名属性,用户性别属性,用户创建时间属性。用户表实体属性图如图4-10示:图4-10用户表实体属性图车辆信息的实体类在系统运行时存储着大量的单车的相关信息。在这个实体类中主要存在的属性有:车辆的ID编号、车辆的名称、车辆总数、车辆的图片、车辆的类型,车辆上线的时间等等。如图4-11所示:图4-11单车实体属性图数据库表设计在本次开发的共享单车系统中采用的是MySQL数据库来对数据进行储存与管理。在本次开发的共享单车系统中,有着大量数据需要存储,因此,设计有管理员表(t_admin),用户表(t_user),车辆数据表(t_shuju),车辆类型表(t_sjleixing),公告信息表(t_gonggao),车辆评论信息表(t_sjpinglun)等数据表。其中管理员表(t_admin)、用户表(t_user)、车辆数据表(t_shuju)结构如下所示:在管理员表(t_admin)中,主要存在三个字段,分别为存贮管理员ID信息的管理员ID(admin_Id),存贮管理员用户名的管理员账户名(admin_Name)和存贮管理员密码的管理员密码(admin_Password),其中管理员ID(admin_Id)为主键,如表4-1所示:表4-1t_admin管理员信息表字段名数据类型长度是否允许为空字段描述adminIdint11否管理员ID(主键)adminNamevarchar255是管理员账户名adminPasswordvarchar255是管理员密码在用户表(t_user)中,存在有例如用户的ID(user_Id),用户账号名(user_Name),用户的密码(user_Password),用户的姓名(user_Xingming),用户性别(user_Sex),用户年龄(user_Age),用户电话(user_Phone)等数据段,其中用户ID(user_Id)为主键,如表4-2所示:表4-2t_user用户信息表字段名数据类型长度是否允许为空字段描述userIdint11否用户ID(主键)userNamevarchar255是用户名称userPasswordvarchar255是用户密码userXingmingvarchar255是用户姓名userSexint1是用户性别userAgeint11是用户年龄userPhonevarcher255是用户电话userDatedatetime255是用户创建时间userIdint11否用户IDuserNamevarchar255是用户名称userPasswordvarchar255是用户密码单车数据表(t_shuju)以车辆ID(shujuId)为主键,该表的字段分别为车辆名称(shujuName),车辆总数(shujuZong),车辆图片(shujuImg),车辆类型ID(sjleixianId),车辆类型名称(sjleixingName),车辆信息创建时间(shujuDate)等字段,如表4-3所示:表4-3t_shuju车辆详细信息表字段名数据类型长度是否允许为空字段描述shujuIdint11否车辆ID(主键)shujuNamevarchar255是车辆名称shujuZongint11是车辆总数shujuImgvarchar255是车辆图片sjleixingIdint11是车辆类型IDsjleixingNamevarcher255是车辆类型名称shujuDatedatetime255是车辆创建时间shujuIdint11否车辆IDshujuNamevarchar255是车辆名称shujuZongint11是车辆总数shujuImgvarchar255是车辆图片系统实现用户功能模块的实现用户在进入本系统的首页后后可以看到显示在首页的信息,其中包括车辆相关信息、公告相关信息等主页信息,系统主界面展示如图5-1所示。图5-1系统前台主界面图 用户登录界面进入本次开发的共享单车系统的每位用户都可以在登录界面进行登录操作。在这个界面登录的人员可以选择不同的用户身份来实现不同登录需求。用户登录相关界面如图5-2所示。图5-2用户登录界面用户登录核心代码:if(loginType.equals("admin")){//当登录者为管理员时执行Adminadmin=newAdmin();admin.setAdminName(userName);admin.setAdminPassword(password);if(adminService.queryAdmins(admin,0,0).size()==1){//查询管理员信息session.setAttribute("admin",admin);response.sendRedirect("houtai/adminMain.jsp");}elseif(loginType.equals("yonghu")){//当登陆者为维修员时执行 Yonghuyonghu=newYonghu(); yonghu.setYonghuName(userName); yonghu.setYonghuPassword(password); if(yonghuService.queryYonghus(yonghu,userName,0,0,null,null,null,null).size()==1){//检查维修员信息 YonghuyonghuLogin=(Yonghu)(yonghuService.queryYonghus(yonghu,userName,0,0,null,null,null,null)).get(0); session.setAttribute("yonghu",yonghuLogin);response.sendRedirect("houtai/yonghuMain.jsp");} 用户注册界面在用户注册界面,每一位未持有本系统账号的用户都可以在这个界面进入账号的注册操作,在注册时,每一位注册账号的用户都需要输入用户名、密码、姓名、性别等等与个人信息相关的信息。在提交时,该界面也会对用户填写的信息进行相应的判定。用户注册界面如图5-3所示图5-3用户注册界面用户注册核心代码:inttotal=userService.queryUsers(null,userName,0,0,null,null,null,null).size();//检查用户名是否存在if(total==0){ userService.save(user);//存储用户信息 request.getRequestDispatcher("shouye/index.jsp").forward(request,response);}用户中心界面在用户登录之后,都可以在个人中心中添加、修改、删除个人信息、个人留言、租赁评论等,也可以进行充值操作,用户中心界面展示如图5-4所示。图5-4用户中心界面个人消息界面每一位登录后的用户都可以在自己的个人信息界面中查看与自己相关的账户详细信息。在这个界面用户也可以进行留言和对自己充值。个人消息界面展示如图5-5所示。图5-5个人消息界面获取消息列表核心代码:JSONArrayjsonArray=JSONArray.fromObject(userService.queryUsers( user,null,pageBean.getStart(),pageBean.getRows(),sdate,edate,sdate1,edate1));//获取用户信息SONObjectresult=newJSONObject();inttotal=userService.queryUsers(user,null,0,0,sdate,edate,sdate1,edate1).size();//获取总条数result.put("rows",jsonArray);result.put("total",total);ResponseUtil.write(response,result);管理员功能模块的实现公告信息界面管理员在登录之后在管理员后台界面中进入公告信息界面,在公告信息界面中当前的管理员可以可查看已经存在的公告类型、公告信息等与公告有关的内容,也可以在这个界面进行管理操作。公告信息管理界面如图5-6所示。图5-6公告信息界面删除公告信息核心代码:StringdelIds=(String)request.getParameter("delIds");//获得想要删除的公告的IDfor(inti=0;i<str.length;i++){gonggaoService.deleteGonggao(Integer.parseInt(str[i]));//依次删除公告}result.put("success","true");ResponseUtil.write(response,result);维修员信息界面在管理员后台界面中,存在着与维修员相关的信息管理界面,登陆后的管理员可以进入这个界面中查看已有的维修员信息。在这个界面,也可以点击相应的操作按钮对维修员的信息进行新增、修改和删除等操作。维修员信息管理界面如图5-7所示。图5-7维修员信息界面新增维修员核心代码:inttotal=yonghuService.queryYonghus(yonghuName).size();//查询是否已存在if(total==0){ yonghuService.save(yonghu);//新增维修员的信息 result.put("success","true"); ResponseUtil.write(response,result);}车辆信息界面每一位管理员在登陆进入后台系统中后,都可以在菜单栏中找到车辆信息管理界面的入口,通过点击相应的选项就可以在管理员界面中进入车辆信息管理界面,在车辆信息管理界面里中可以查看车辆信息的详细信息。也可以在这个界面进行添加车辆,修改车辆详细信息,或者删除车辆信息等信息管理操作。车辆信息界面如图5-8所示。图5-8车辆信息界面获取车辆信息列表核心代码:JSONArrayjsonArrayTemp=JSONArray.fromObject(shujuService.queryShujus());//获取信息列表JSONObjectresult=newJSONObject();inttotal=shujuService.queryShujus().size();//统计信息数量result.put("rows",jsonArrayTemp);result.put("total",total);ResponseUtil.write(response,result);用户信息界面在用户信息管理界面中,进入此页面的管理员可查看用户的详细信息,也可以通过冻结按钮来停止用户的使用权限。用户信息管理界面如图5-9所示。图5-9用户信息界面获取用户信息列表核心代码:JSONArrayjsonArrayTEMP=JSONArray.fromObject(userService.queryUsers(null));//查询inttotal=userService.queryUsers(null).size();//获取总数result.put("jsonArrayTemp",jsonArrayTemp);result.put("total",total);ResponseUtil.write(response,result);维修员功能模块实现维修员个人消息界面在维修员中心界面,维修员登录后可以查看并修改自己的信息,维序员个人信息界面展示如图5-10所示。图5-10维修员个人信息界面维修员个人信息获取核心代码:if(StringUtil.isNotEmpty(yonghuId)){//判断是否有ID yonghu.setId(Integer.parseInt(yonghuId));//获取ID}JSONArrayjsonArrayTemp=JSONArray.fromObject(yonghuService.queryYonghus(yonghu));//通过ID查询JSONObjectresult=newJSONObject();result.put("jsonArrayTemp",jsonArrayTemp);ResponseUtil.write(response,result);维修信息界面在车辆维修信息界面,可以查看已存在的维修信息,维修信息界面展示如图5-11所示。图5-11维修信息界面维修信息列表核心代码:JSONA

温馨提示

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

评论

0/150

提交评论