摘要
近些年来,随着科技的飞速发展,互联网的普及逐渐延伸到各行各业中,给人们生活带来了十分的便利,共享单车数据存储系统利用计算机网络实现信息化管理,使整个共享单车数据存储管理的发展和服务水平有显著提升。
本文拟采用java技术和Springboot 搭建系统框架,后台使用MySQL数据库进行信息管理,设计开发的共享单车数据存储系统。通过调研和分析,系统拥有管理员和用户两个角色,主要具备个人中心、用户管理、共享单车管理、系统管理等功能模块。将纸质管理有效实现为在线管理,极大提高工作效率。
第二章 相关技术简介
此次系统的关键技术和架构由B/S结构、java技术和MySQL数据库,是本系统的关键开发技术,对系统的整体、数据库、功能模块、系统页面以及系统程序等设计进行了详细的研究与规划。
2.1 Java编程语言
Java语言的发展距今己有二十多年的历史,Java在众多编程开发语言中依然稳居排名前三,这离不开Java技术体系的众多开发优势,相对比于其他编程开发语言而言,Java语言[}so]的入门使用非常简单,Java集成了丰富的类库和封装类,能够使开发者非常方便调用,拥有强大的技术基础作为支撑,非常适合大型软件的开发。由于Java语言是一门面向对象的编程语言,因此程序员只需要掌握基本的语法规则和清晰的编程思路便可以较好地开发应用程序。除此之外,由于Java语言具有跨平台和可移植性强的开发优点,因此可以在Android的应用程序开发中发挥其重要作用。在大型的软件项目开发中应用Java技术较为广泛,能够为企业项目需求提供成熟的解决方案。
常用的计算机程序编程语言有Java语言、Python语言、C语言以及C++语言。由于Java语言具有成熟的技术架构以及较为广泛的应用范围,因此深得编程人员的喜爱。
Java语言提供了try-catch异常处理、垃圾自动回收、内存动态分配等强大功能机制,Java语言具备简单性、健壮性、可移植性、多线程等优点,Java语言的强大特性能够降低软件后期的维护成本以及有效缩短软件研发周期,节省了企业的软件开发成本。本研究的共享单车数据存储教学案例项目正是以成熟的Java编程语言为基础的共享单车数据存储项目开发语言。
2.2 Spark简介
Spark最初由加州大学伯克利分校的AMP(算法、机器和人)实验室于2009年开发,是一个基于内存计算的大数据并行计算框架,可用于构建大型、低延迟的数据分析应用程序。Spark最初是一个研究项目,它的许多核心思想来自学术研究论文。2013年,Spark加入Apache孵化器项目,开始快速发展。目前已成为Apache软件基金会分布式计算系统(Hadoop、Spark和Storm)三大最重要的开源项目之一。
Spark是大数据计算领域的后起之秀,在2014年打破了Hadoop的排序基准(Sort Benchmark)记录,使用206个节点在23分钟内对100tb的数据进行排序。Hadoop使用2000个节点在72分钟内对相同的数据进行排序。换句话说,Spark只使用十分之一的计算资源,速度是Hadoop的三倍。这一新的记录使Spark成为一个受欢迎的平台,并表明Spark可以作为一个更快、更高效的大数据计算平台。
2.3 SPRINGBOOT 框架
Spring Boot是由Pivotal的开发团队在2013年开发的一个免费、轻量级、开源的系统框架。SpringBoot的主要设计思想是约定大于配置,因此SpringBoot在设计时几乎达到零配置。SpringBoot集成了业界的开源框架。
SpringBoot是一个非常强大的后台框架,因为SpringBoot的开发基本上不需要写配置文件,所以利用SpringBoot来构建网站的后台环境,在SpringBoot的YML配置文件中写项目启动端口,项目就可以启动了。项目的Java和静态文件由SpringBoot管理。
2.4 MySQL数据库
MySQL是Oracle公司旗下的一个开源的关系型数据库管理系统(Relational Database Management System, RDBMS)}44} o MySQL支持使用多线程,充分利用了CPU的计算资源,可以选择InnoDB, MyISAM和MEMORY等作为存储引擎,提供了丰富的数据库管理工具。在索引功能的加持下,其具有非常高的查询效率,并支持主从、多节点集群等高可用部署模式。MySQL凭借其低廉的成本、可靠的数据库服务和出色的性能,目前己经成为绝大多数企业在进行项目开发时的首选关系型数据库。MySQL的体系结构如图2.1所示,具体可分为网络连接层、服务层、存储引擎层和系统文件层,分别完成建立连接、SQL解析与执行、数据存储与提取和数据交互等功能。
图2.1 MySQL体系结构图
2.5 B/S架构
B/S结构就是指系统客户端与服务器分离,客户端通过浏览器访问服务端进行操作。
B/S结构目前广泛应用于绝大部分系统搭建中,这种结构摒弃C/S结构客户端服务端不分离的缺点,具有更多的优势:
(1)跨平台性:B/S的标准由标准化组织确立,适用于绝大多数的系统搭建,通用于应用之间。
(2)低维护成本:客户端和服务器端分离,减轻了两端的压力,尤其是客户端,对客户端设备,硬件、软件要求都比较低,并且系统需要升级或维护时,只需要在服务器端升级或维护就可以,使相应的费用减少。
3 系统分析
所谓系统分析就是,需求人员通过与用户的沟通,所获取的信息,然后把这些信息通过需求说明书的方式展示给用户和开发人员。在软件功能发展的历史长河中,很长时间,特别是最开始的时候,需求分析的重要性并不被人们所认同,例如当时美国IBM公司为英国电信公司开发一套信息管理系统,在需求不明确的情况下开始开发,最初的工期为一年,由于需求获取不清晰导致工期推迟了半年多,造成巨大损失。我们很多软件公司也存在这种情况,边需求,边开发,甚至与用户没有沟通清楚的情况下,直接照搬同类型的项目进行更改,导致到系统验收的时候,重新更改,造成了人力、物力的极大浪费。而导致这一切后果的原因就是需求获取不及时、不清楚、不全面。
3.1 可行性分析
3.1.1技术可行性
技术可行性分析是对开发家具网站的技术可行性评估,提前进行规范,现在适合的技术,可以事半功倍。
系统使用JAVA和MYSQL数据库。JAVA是比较成熟的语言,开发系统具有很多优势,完全开源免费。JAVA是嵌入在HTML中的,在服务器运行后,进行解释。JAVA具有独特的语法,执行效率高,因为JAVA代码是在服务器端执行的。JAVA的引擎机制会把执行后的结果保存到客户端内存中,当用户再次访问这个页面时,直接从内存读取,运行速度快。
JAVA是网络编程语言,对于本系统的开发作为合适,在技术上具有可行性。
3.1.2操作可行性
操作可行性主要考虑开发系统后,是否操作方便,是否可以解决现有的问题,是否可以提高相应的效率。本系统使用web模式,通过浏览器即可访问,操作简单。进入系统后,通过主页的菜单快速的进入各个子功能,通过鼠标和键盘就可以完成各种事项。在操作上具有可行性。
3.1.3经济可行性
经济比较包括两个方面,投入和收益。投入上包括开发系统需要的人力成本和服务器硬件成本。人力成本上,一个月的人力成本就5000元左右。服务器硬件成本1万元。而收益上,开发家具网站后可以使用多年,并可以分析给其它高校使用,投入使用一年的收益都将大于投入,所以,在经济上可行。
3.1.4时间可行性
计划使用两个月完成系统的分析、设计、实现和实施。通过前期的调研,完成系统时间需要一个月时间即可,考虑到后期的修改和实施,预留了足够的时间,所以,开发家具网站时间上可行。
3.2 业务流程分析
3.2.1 登录流程
3.2.2 注册流程
3.2.3添加信息流程
3.2.4删除信息流程
4 功能需求
共享单车数据存储系统综合网络空间开发设计要求。目的是将传统管理方式转换为在网上管理,完成共享单车数据存储信息管理的方便快捷、安全性高、交易规范做了保障,目标明确。共享单车数据存储系统可以将功能划分为管理员功能和用户功能。
(1)、管理员关键功能包含系统首页、个人中心、用户管理、共享单车管理、系统管理等等进行管理。管理员用例如下:
(2)、用户关键功能包括系统首页、个人中心、共享单车管理等进行操作。用户用例如下:
5 数据库
学习程序设计,如果想要了解数据库管理系统或者是按照系统接口的要求制作的,就必须创建一个数据库管理系统模型,用来存储数据,这样在进行应用程序编程的过程中,就不需要加载操作系统页面的信息,从而提高整个系统的工作效率。在数据库管理系统中承载着众多的数据,应该说,一个管理信息系统的建设中心和基地,信息库管理系统由各个组成部分的信息表按照具体的方法进行准确的归并、排序和组成信息库管理系统。
4.3.2数据库E-R图设计
E-R图即实体-联系图,主要作用是提供了解显示数据类型存在的联系的途径,是藐视现实世界的概念模型,其关键要素是实体型、属性、联系。以下是本系统主要的实体属性图如下所示。
用户实体如图4-2所示。
6 系统实现
5.1系统登录注册实现
系统登录,在登录页面选择需要登录的角色,再正确输入用户名和密码后,点击登录进入操作系统进行操作;如图5-1所示。
系统注册:在注册页面的注册表中输入用户注册信息进行注册操作,系统注册界面如图5-2所示:
5.2管理员模块实现
管理员进入主页面,主要功能包括对系统首页、个人中心、用户管理、共享单车管理、系统管理等进行操作。管理员主界面如图5-3所示:
管理员点击用户管理。进入用户页面输入用户账号和选择性别进行查询、新增和删除用户列表,并根据需要对用户详细信息进行详情、修改和删除操作;如图5-4所示:
管理员点击共享单车管理。进入共享单车页面输入PP和area进行查询、导入、上传模板、下载模板、导出、新增或删除共享单车列表,并根据需要对共享单车详细信息进行详情、修改或删除操作。如图5-5所示:
管理员点击右上角色的看板,可以查看到系统简介、共享单车总数、PP统计、PP占比、month统计、week统计、arra占比、共享单车等等实时的分析图进行可视化管理;如图5-6所示:
管理员点击系统管理。在系统简介页面输入标题进行查询系统简介列表,并根据需要对系统简介详细信息进行详情或修改操作。如图5-7所示:
5.3用户模块实现
用户进入主页面,主要功能包括对系统首页、个人中心、共享单车管理等进行操作。用户主界面如图5-8所示:
第六章 系统测试
6.1测试目的
系统测试包括黑盒测试和白盒测试,在黑盒测试中,验证每一个功能是否都可以使用,是否符合需求。之所以叫黑盒测试,是因为把程序当作一个盒子,不去考虑程序内部因素,只是对外部功能进行测试。而白盒测试是对程序进行测试,验证程序功能结构、逻辑等进行测试。
系统测试是软件工程最后一个流程,核心目的是找出问题修复问题。系统测试保证了软件交付的依据,通过了系统测试,才能完成最终审查。系统测试可以使用软件进行测试,也可以人工进行测试,在规范化开发中,通过一定的软件进行性能测试非常有必要,工具可以模拟访问量,连接数等进行系统压力测试。
测试的任务是发现错误,提高系统的强壮型,检验系统开发的情况。又分为了模块测试、组装测试和确认测试。在本系统中,通过测试用例,进行对应的功能测试。
说明
开发语言:Java
框架:springboot
JDK版本:JDK1.8
服务器:tomcat7
数据库:mysql 5.7
数据库工具:Navicat11
开发软件:eclipse/myeclipse/idea
Maven包:Maven3.3.9
后台路径地址:localhost:8080/项目名称/admin/dist/index.html
前台路径地址:localhost:8080/项目名称/front/index.html (无前台不需要输入)
管理员账号:abo
管理员密码:abo