第一章 绪论
1.1 选题背景
随着计算机的持续发展,人类进入信息化时代,各种软件和管理系统层出不穷,软件已成为提高办公质量和经济增长的重要手段,由此带来了许多新兴行业。比如在线购物,京东商城和淘宝的成功有目共睹。
基于互联网的管理平台,收集和整理各类信息,这些信息以有序的方式存储在数据库中,数据库是存储信息的管理系统。互联网上所有的资源大多以一定的关系和结构存储在特定的数据库,数据库是管理系统存在的必要条件。数据库将信息进行分类,实现系统化、标准化。最终通过程序的检索查询数据,按照一定的标准进行排序,方便用户的读取和使用。
在信息时代,人们对管理系统要求越来越高,生活中遇到的问题逐渐转移到线上获取解决方法。据调查,有很多人需要借助朋友或者同学完成快递代取或者购置产品等服务,但有时候不能找到合适的朋友帮助自己解决跑腿订单,但是也无可奈何。在这种情况下,通过信息化解决最后一公里问题,帮助同学进行代买代购、教室占位、快递代取等等举手之劳的小任务。
校园跑腿最初只是针对代取快递业务开展,因为网上购物逐渐发展为快递点自取或者快递柜提取的方式,致使许多没有时间取快递的同学只能依托他人帮忙,这就形成了跑腿的业务。刚开始,校园跑腿仅仅限于班级群、校友群、或者是相互认识的朋友,这种方式制约落跑腿经济的发展,毕竟免费跑腿或者认识的朋友关系有限。而花少量的钱得到跑腿业务,双方都可以互惠互利。校园跑腿。如果想可持续性发展,不仅需要针对快递跑腿业务,还需要扩展其他业务,在高校内也存在打印服务、修电脑、代买代卖等需求。高校校园跑腿系统不但可以帮助发布者解决实际困难,也为接手方提供了挣取佣金的渠道,对双方都形成互惠互利的基础,所以高校校园跑腿系统具有可行性。
1.2 选题意义
本文研究了基于Android的高校校园跑腿系统,通过该系统,用户可以主动的发布跑腿订单,解决实际的问题,提高了效率,同时加强了用户之间的相互交流沟通,促进了信息化的发展。
基于Android的高校校园跑腿系统是当前一种流行的任务发布平台,该平台建立了用户与用户之间的沟通渠道,提供了一个可以接手任务的平台。在互联网时代,大家逐渐认识到,通过Internet可以快速的传播信息、交流知识、获取需求。
基于Android的高校校园跑腿系统具有地域性优势,在校园内师生发布跑腿需求,同时,校园内其他的师生利用闲暇的时间接手任务,保障了跑腿的时效和交易安全。
另外,在不同学校之间也可以发布一些跑腿订单,解决相邻高校之间的跑腿需求,给双方提供了沟通平台,降低了双方来回奔跑的时间成本。另外,本系统目的是在高校内,学生群体较大,而且普遍适应目前的信息化管理方式,便于基于Android的高校校园跑腿系统的推广。
实际上,不论是在高校内还是社会中,都存在跑腿业务的需求,避免快递物流无法送货上门的盲区,解决最后一公里的快递配送问题,同时也提升了校园信息化服务水平。通过基于Android的高校校园跑腿系统,有利于学生解决个人事务,如女同学发布笨重快递上门取货或者送货上门的服务,还有一些因为考研无法到食堂就餐的代买服务,甚至在平台可以发布一些学习辅导、电脑维修等学习支持服务。
基于Android的高校校园跑腿系统创建了良好的氛围和形象,发挥出互帮互助的特点,实现了在校园除了生活学习,也可以赚取佣金,减轻经济压力的负担,并为更早的进入社会提供锻炼的机会。
1.3 研究内容
本课题选择JAVA来进行开发,前台使用小程序开发,数据库选择MySQL进行建库,JAVA是目前最为流行的技术,无论是成熟度和未来发展都更能适应本基于Android的高校校园跑腿系统的业务。
本课题使用面向对象的设计思想进行设计,对系统的现状进行调研,收集当前基于Android的高校校园跑腿系统的需求,以及对实际业务的调查,整理需求文档,使用用例图状态图等进行描述,接着使用面向对象技术设计系统功能,系统数据库。完成基于Android的高校校园跑腿系统,主要包括了系统的开发背景收集、建模工具选型、技术确定、需求分析的整理、数据库的设计和功能模块划分、系统环境的部署、实现测试方法的选择,以及最后的搭建部署。
第二章 相关技术介绍
2.1 Java语言
基于Android的高校校园跑腿系统后台使用面向对象的Java技术进行编程,Java是由Sun公司开发的,是目前应用最广泛的编程语言。Java上手简单,功能强大,经过多年的发展,Java语言目前广泛应用在企业级应用开发、Windows系统开发、Web开发、移动技术等多个技术领域。C#语言稳定性强、安全性高,可以跨平台使用,代码复用度高,所以也使得Java语广泛应用。
总体来说,Java语言具有面向对象和多线程的特点,面向对象是把项目的业务抽象为对象,具有封装,继承和多态的特点。
封装是把实体的属性和方法进行合并,在项目中主要应用在数据库实体类中。通过封装保存数据和传递数据。继承,提高了编程的效率,在子类中定义属性和方法,继承类对子类进行继承,通用的方法直接可以使用,然后对其他业务进行扩展,大大提高了代码成功率,减少了开发难度。
多态指的是一个方法,可以采用不同形式调用,比如一个方法传递的变量值可以为一个两个三个,那么,针对不同的方位值,调用不同的方法来实现逻辑。
Java语言有四个部分,Java编程规范、Java虚拟机、Java class文件、Java应用程序接口。其中Java虚拟器对Java进行加载,执行代码,将加载的文件编写为引擎可以识别的二进制文件,然后进行翻译。
2.2 Android技术
Android中文称作安卓系统,是由谷歌公司开发的用于移动端的操作系统。Android最开始应用于数码相机,2005年后被改良为面向智能手机,并免费开放源代码。从卓操作系统应用于市场以来快速的占据市场,替代了诺基亚手机品牌,Android是在Linux系统之上,包括操作系统、中间件、用户界面和软件,实现了软件的功能。各功能通过接口进行互联,安卓包括一个核心的云仓库,相当于Java虚拟机的功能,每一个Android手机都可以运行多个虚拟机,提高了Android运行的进程和效率。Android framework是一个开放性的平台。自由的调用硬件功能,设置闹钟、发布通知、应用程序中。Android提供的自带的一些程序,包括打电话、联系人、日历、电子邮箱等,在这些应用中也可以通过扩展,实现功能的个性化定制。
安卓的语言主要用Java进行编写,所以学习安卓前需要熟悉和了解Java,底层建立在Java jdk和环境变量之上。
Android在设计上具有几个特点。生态系统的开放性,目前Android已经在手机市场占据份额达到70%,通过和厂商建立合作关系,放开系统的标准,建立移动设备之间开放的生态系统。应用程序无边界,Android中的程序可以通过API调用设备功能,除了系统中的程序可以调用之外,第三方应用之间也可以调用,需要在程序开发时声明调用的权限。应用的平等性,应用程序时可以升级或者替换,不存在高低之分。安卓支持Web的嵌入,在开发Android应用程序时,可以通过控件嵌入web样式,包括JS,HTML、CSS,来显示内容,方便的展示外部应用,极大的提高了项目的开发速度和界面美观程度。并行运行,安卓是一个基于多任务环境的系统,通过进程来控制多任务并行运行,所以在我们安卓手机上可以同时支持多个程序运行。
2.3 Mysql数据库
数据库,指的是对数据按照一定格式进行存储的管理平台。数据库分为多种平台,常见的有SqlServer数据库、MySQL数据库等。数据库和程序无关,一个数据库可以为多个应用程序提供服务,数据库的对象就是数据。数据库是独立于应用程序的子系统,数据库设计包括数据结构设计、数据内容、易于扩展、数据安全等方面。目前,在大数据发展状态下,数据库广泛应用在信息处理、人工智能、AI等各个领域。
基于Android的高校校园跑腿系统使用的是MySQL开发,MySQL是一个关系型数据库,同时MySQL也是开源免费的数据库。对于关系型数据而言,当数据巨大的时候,查询效率会比较低下,所以通常采用索引或者改变数据集来提高数据的调用,从而提高检测效率。MySQL体积小,安装速度快,在中小型网站和应用程序中广泛存在,使用MySQL也具有极高的安全性,包括用户登录的权限,数据操作的管理权限,数据备份,恢复等功能,但目前MySQL也面临着一定的挑战,特别是在一些小型的数据库发展带来的市场占用。但是在MySQL关系数据库因为庞大的用户群,和优良特性,MySQL依然是建站首选,降低了开发成本和部署难度。
第三章 系统分析
3.1可行性分析
3.1.1 操作可行性
操作方面,本系统界面简洁,人机交互能力强。在基于Android的高校校园跑腿系统的基本业务下,降低操作门槛,可以方便的对各种信息进行浏览,交互。管理员对信息进行有效的管理,通过操作菜单进行每一个功能模块的具体操作,不存在前后模块业务上的复杂操作要求,是一种所见即所得的方式,所以在操作上具有可行性。
3.1.2 经济可行性
经济可行性主要从投入和产出进行分析,投入方面包括计算机硬件、计算机网络和本基于Android的高校校园跑腿系统软件开发的成本。目前计算机硬件成本较低,配置主流,然后网络方面,可以和其他的管理系统同时搭建,减少投入。在开发基于Android的高校校园跑腿系统上,业务流程并不复杂,时间成本低。产出方面,基于Android的高校校园跑腿系统投入使用后可以改变旧模式的效率低下,耗费人力,物力资源多的问题,并提高效率,带来经济利益,所以在经济上具有可行性。
3.1.3 技术可行性
技术方面,本系统利用Android进行开发,后台选择面向对象的JAVA编程,JAVA具有功能强大,适应性强的特点。在JAVA的框架下可以开发出完善的应用程序系统,并且开发周期短。可以和MySQL数据库完美链接,数据库可以存储大量的数据并提供安全保障,因此,构建基于Android的高校校园跑腿系统,在技术上是可行的。
3.2 需求分析
3.2.1非功能性需求
系统非功能需求,只能是为了满足客户需求之外的非功能性要求。系统需要具有数据完整性验证的功能,对界面上非法的数据和不完整的数据进行提示,不能直接保存到数据库中,造成不完整性因素。
系统提供一定的交互能力,给不同用户带来方便,提供问题的回答和讨论。并将历史问题归纳整理,作为相同问题的案例进行展示。
对系统可维护性的要求,所有的管理系统都不是一成不变的,在使用中可能发生需求的增加或者变更要求。软件具有较高的可维护性,方便后期的升级换代,系统应该便于使用和访问和操作,为用户提供便捷的。便捷的访问操作,减少宣传和维护的费用。
在对基于Android的高校校园跑腿系统开发时,需要系统为Windows10,服务器为Tomcat软件,存储的空间较小,数据库和程序1G存储即可够用。
操作系统的性能要求客户访问系统的时间不应该超过三秒,系统处理多个并发用户,cpu占有率低于10%,同时响应时间应该为五秒内。
3.2.2功能需求
基于Android的高校校园跑腿系统为用户提供跑腿服务,系统包括Android端和后台。
Android端用户可以先进行注册,填写个人的基本信息提交到服务器,服务器把数据保存到数据库。管理员对会员的信息进行验证后,会员通过验证后的用户名和密码进行登录,登录之后发布信息,信息包括礼物代发、药品代买、快递代取、打印服务、餐品代买等。发布的跑腿订单在首页展示,对这些跑腿订单具有时间的会员在线接单。点开我的功能模块,修改个人信息,重新登录,查看我的收藏,我的跑腿订单等功能。
管理员是后台的管理者,对用户提交的跑腿订单进行审核,如果发布的是广告或者违规的内容进行删除,也可以要求会员进行修改后重新提交,管理员对跑腿订单的分类进行管理,系统不限于礼物代发、药品代买、快递代取、打印服务、餐品代买,也可以添加别的类别,管理员还可以对评论信息进行管理,发布信息公告推送给Android用户端。
3.3 系统用例
基于Android的高校校园跑腿系统本质上是一个在线的跑腿订单浏览和在线接单的平台,从用户角度,系统包括会员和管理员。
3.3.1 会员功能需求
未经登录的用户可以查看本平台的信息列表,包括具体的跑腿订单和交流信息。通过授权的用户才能发布跑腿订单,选择具体的跑腿订单类别,提交到服务器中,管理员审核后在首页进行显示。会员也可以接手其他会会员提出的跑腿订单。会员定期对个人信息进行修改,包括接单信息和密码信息,最终通过注销后退出本系统。
会员的用例图如3.1所示:
会员
图3-1 会员用例图
3.3.2 管理员功能需求
管理员具有最高的权限,通过后台的登录页面进入验证权限后才能进行管理。管理内容包括,会员发布的跑腿订单管理,跑腿订单分类管理、跑腿订单评论管理,公告管理、用户管理。
管理员的用例图如3.2所示
管理员
图3-2 管理员用例图
第四章 系统设计
4.1系统详细设计
4.1.1功能设计
基于Android的高校校园跑腿系统包括用户管理、新闻公告管理、评论管理、跑腿订单、分类管理、系统管理。
用户管理包括会员用户和管理员用户两个用户。设计一个用户数据表,使用权限字段进行区分。当前台会员进行注册的时候,权限设为会员。管理员用户权限设置为管理员。虽然数据存储在一个数据库表,但是在登录的时候使用权限类别进行区分,管理员用户无法通过客户端进行登录。同理,客户端用户也无法登陆管理员端。
新闻公告是管理员发布跑腿订单的公告,信息发布后的公告在客户端浏览查看。
评论管理是对跑腿订单的回复交流,当跑腿订单信息删除的时候,对应的评论信息也会删除,评论信息设计了评论名称、评论内容和对应的跑腿订单ID,通过跑腿订单ID进行外键关联。
其中系统功能结构图如4.1所示:
图4.1 系统功能结构图
高校校园跑腿系统APP
后台登录
跑腿任务管理
接单管理
会员管理
服务器管理端
客户端
系统注销
注册登录
发布跑腿任务
跑腿任务搜索
接手跑腿任务
公告信息
我的订单
评价点赞
个人中心
跑腿订单分类包括跑腿订单的ID和跑腿订单的名称、类别。常见的有跑腿订单等类别,可以通过后期进行添加扩展。
跑腿订单是本系统的重点功能,客户端用户登录后发布跑腿订单,选择对应的分类,上传图片,其中图片是保存在服务器端,数据库记录对应的图片链接地址,在资源类信息保存中还可以通过二进制进行保存。本系统为了降低数据库的负荷,把图片以文件格式进行存储,这样既减轻了服务器的数据库的存储,也提高了图片数据传输的速度。会员发布后,在管理端对数据进行管理,删除一些违法违规的记录。没有删除的记录将在客户端首页进行展示,用于其他会员查看。会员可以通过跑腿订单的分类进行搜索,不同分类对应了不同的跑腿订单。也可以通过关键字进行检索。跑腿订单还具有点赞和收藏功能。
4.2.2服务器端流程设计
业务流程图反映了系统各业务之间的关联和走向。用户点击提交按钮,实现登录。在进行登录前,需要进行验证,验证用户名和密码是否输入。而用户是否需要登录,先通过session验证用户信息,然后验证session中的用户是否存在于变量中,最后验证是否需要登录。其中管理员登录部分的登录验证流程图为:
用户注册登录
输入用户信息
查询用户信息表
是否输入
No
Yes
是否存在
Yes
No
用户登录
结束
图4.3 登录验证流程图
管理员登录后,对系统进行管理,主要包括对用户的管理、交流管理、跑腿订单的管理和订单的管理,每一种功能的管理都对应数据的增删改查,其中管理信息流程图如4.4所示:
图4 .4 管理员管理信息流程图
4.2.3小程序端流程设计
基于Android的高校校园跑腿系统小程序端,需要会员用户注册后,使用注册的用户名和密码进行登录,登录成功后,查看跑腿订单信息,可以通过关键字进行查询跑腿订单品,对跑腿订单分类进行查询。其中Android客户端功能流程图如图4.5所示。
Y
开始
登录
订单信息
接单
跑腿
Y
评论等
是否成功
查看跑腿任务
结束
N
N
图4.5 客户端流程图
4.2 数据库设计
4.2.1逻辑结构设计
基于Android的高校校园跑腿系统的ER图如4.6所示:
图4.6 系统ER图
管理员
订单
分类
跑腿任务
会员
评论
跑腿任务
管理
包括
审核
接单
结账
包括
明细
1
1
n
n
n
1
1
n
1
n
n
m
m
1
从ER图可以看出基于Android的高校校园跑腿系统的数据库表和各数据库表关系,如管理员管理订单信息,跑腿订单信息。管理用户信息,用户可以评论。
4.2.2物理结构设计
基于Android的高校校园跑腿系统中包括多个信息表。
- 表: config信息表
编号 | 数据字段名称 | 对应类型 | 主键 | 允许空 | 字段的备注信息 |
No1 | C_id | bigint(8) | PK | No | 主键 |
No2 | C_name | nvarchar(200) | NO | No | 配置参数名称 |
No3 | C_value | nvarchar(200) | NO | Null | 配置参数值 |
- 表: paotui信息表
编号 | 数据字段名称 | 对应类型 | 主键 | 允许空 | 字段的备注信息 |
No1 | C_id | bigint(8) | PK | No | 主键 |
No2 | C_addtime | timestamp(8) | NO | No | 创建时间 |
No3 | C_paotuizhanghao | nvarchar(400) | NO | No | 跑腿账号 |
No4 | C_mima | nvarchar(400) | NO | No | 密码 |
No5 | C_paotuixingming | nvarchar(400) | NO | No | 跑腿姓名 |
No6 | C_xingbie | nvarchar(400) | NO | Null | 性别 |
No7 | C_dianhua | nvarchar(400) | NO | Null | 电话 |
No8 | C_shenfenzheng | nvarchar(400) | NO | Null | 身份证 |
No9 | C_touxiang | nvarchar(400) | NO | Null | 头像 |
- 表: news信息表
编号 | 数据字段名称 | 对应类型 | 主键 | 允许空 | 字段的备注信息 |
No1 | C_id | bigint(8) | PK | No | 主键 |
No2 | C_addtime | timestamp(8) | NO | No | 创建时间 |
No3 | C_title | nvarchar(400) | NO | No | 标题 |
No4 | C_introduction | text(16) | NO | Null | 简介 |
No5 | C_picture | nvarchar(400) | NO | No | 图片 |
No6 | C_content | text(16) | NO | Null | 内容 |
- 表: jiedanxinxi信息表
编号 | 数据字段名称 | 对应类型 | 主键 | 允许空 | 字段的备注信息 |
No1 | C_id | bigint(8) | PK | No | 主键 |
No2 | C_addtime | timestamp(8) | NO | No | 创建时间 |
No3 | C_dingdanbianhao | nvarchar(400) | NO | Null | 订单编号 |
No4 | C_paotuileixing | nvarchar(400) | NO | Null | 跑腿类型 |
No5 | C_paotuifei | money(8) | NO | Null | 跑腿费 |
No6 | C_qishidi | nvarchar(400) | NO | Null | 起始地 |
No7 | C_mudedi | nvarchar(400) | NO | Null | 目的地 |
No8 | C_jiedanshijian | datetime(8) | NO | Null | 接单时间 |
No9 | C_jiedanzhuangtai | nvarchar(400) | NO | Null | 接单状态 |
No10 | C_tupian | nvarchar(400) | NO | Null | 图片 |
No11 | C_zhanghao | nvarchar(400) | NO | Null | 账号 |
No12 | C_paotuizhanghao | nvarchar(400) | NO | Null | 跑腿账号 |
No13 | C_dianhua | nvarchar(400) | NO | Null | 电话 |
No14 | C_ispay | nvarchar(400) | NO | Null | 是否支付 |
No15 | C_userid | bigint(8) | NO | Null | 用户id |
- 表: paotuidingdan信息表
编号 | 数据字段名称 | 对应类型 | 主键 | 允许空 | 字段的备注信息 |
No1 | C_id | bigint(8) | PK | No | 主键 |
No2 | C_addtime | timestamp(8) | NO | No | 创建时间 |
No3 | C_dingdanbianhao | nvarchar(400) | NO | Null | 订单编号 |
No4 | C_paotuileixing | nvarchar(400) | NO | Null | 跑腿类型 |
No5 | C_paotuixuqiu | text(16) | NO | Null | 跑腿需求 |
No6 | C_paotuifei | money(8) | NO | Null | 跑腿费 |
No7 | C_qishidi | nvarchar(400) | NO | Null | 起始地 |
No8 | C_mudedi | nvarchar(400) | NO | Null | 目的地 |
No9 | C_dagaijuli | nvarchar(400) | NO | Null | 大概距离 |
No10 | C_dingdanzhuangtai | nvarchar(400) | NO | Null | 订单状态 |
No11 | C_tupian | nvarchar(400) | NO | Null | 图片 |
No12 | C_zhanghao | nvarchar(400) | NO | Null | 账号 |
No13 | C_shouji | nvarchar(400) | NO | Null | 手机 |
No14 | C_userid | bigint(8) | NO | Null | 用户id |
- 表: users信息表
编号 | 数据字段名称 | 对应类型 | 主键 | 允许空 | 字段的备注信息 |
No1 | C_id | bigint(8) | PK | No | 主键 |
No2 | C_username | nvarchar(200) | NO | No | 用户名 |
No3 | C_password | nvarchar(200) | NO | No | 密码 |
No4 | C_role | nvarchar(200) | NO | Null | 角色 |
No5 | C_addtime | timestamp(8) | NO | No | 新增时间 |
- 表: yonghu信息表
编号 | 数据字段名称 | 对应类型 | 主键 | 允许空 | 字段的备注信息 |
No1 | C_id | bigint(8) | PK | No | 主键 |
No2 | C_addtime | timestamp(8) | NO | No | 创建时间 |
No3 | C_zhanghao | nvarchar(400) | NO | No | 账号 |
No4 | C_mima | nvarchar(400) | NO | No | 密码 |
No5 | C_xingming | nvarchar(400) | NO | No | 姓名 |
No6 | C_xingbie | nvarchar(400) | NO | Null | 性别 |
No7 | C_shouji | nvarchar(400) | NO | Null | 手机 |
No8 | C_dizhi | nvarchar(400) | NO | Null | 地址 |
No9 | C_touxiang | nvarchar(400) | NO | Null | 头像 |
第五章 系统实现
5.1 运行环境
基于Android的高校校园跑腿系统前台使用小程序,后台JAVA技术,数据库使用Mysql技术,工具myeclipse、Android软件。
具体见表5-1所示。
表5.1 基于Android的高校校园跑腿系统环境硬件表
硬件名称 | 数量要求 | 性能要求 | 等级要求 |
程序服务器主机 | 1 | I7/8G DDR3/硬盘500G | 高 |
数据库服务器主机 | 1 | I5/4G DDR3/硬盘100G | 中 |
测试客户端主机 | 1或者以上 | 无要求,可以联网即可 | 低 |
配置好硬件服务器后,对服务器进行软件安装,下面5.2是环境部署的软件表。
表5.2 基于Android的高校校园跑腿系统服务器环境硬件表
类型名称 | 软件要求 | 系统要求 |
程序服务器主机 | Tomcat7.5或者以上 | Windows Server |
数据库服务器主机 | MySQL服务器 | Windows Server |
测试客户端主机 | IE浏览器、360浏览器、谷歌浏览器等。 | Windows 10 |
5.2 服务器功能实现
5.2.1管理员登录
使用脚本把数据库导入到mysql中,配置tomcat服务器,运行程序。其中用户登录的界面如下所示。
图5.1 管理员登录
用户密码是通过MD5进行加密的。MD5本身是一个不可逆的加密方法,所以在查询前需要对密码进行MD5加密,把加密后的字符串和数据库中的密码进行比对,通过比对后才能进行查询。最终,最终查询成功后把信息保存在session中,Session是存储在服务器端的对象,是比较安全的一种技术,在管理端通过判断session中的十来获取用户操作权限。
5.2.2管理主界面
主界面主要包括了系统管理菜单,通过菜单对系统功能进行管理。每一个功能包括基本的查询、添加等操作。其中主界面如下所示。
图5.2 管理主界面
5.2.3跑腿订单信息管理
跑腿订单管理包括跑腿订单编号、名称、类别、图片内容信息。其中跑腿订单管理如下所示。
图5.3 跑腿订单管理界面
创建一个信息录入的form表单,在form中设计跑腿订单基本信息收集栏,点击提交的时候,通过form的POST方法传递到跑腿订单Action方法中。在Action中定义插入的方法,先实例化跑腿订单实体类,将跑腿订单信息通过实体类进行设置,然后调用跑腿订单数据库操作方法,保存跑腿订单信息到数据库,然后返回成功消息。
5.2.4用户管理
用户管理包括用户信息查看和用户删除功能,管理员对过期的用户进行删除。其中用户管理如下所示。
图5.5 用户管理界面
创建一个信息录入的form表单,在form中设计用户基本信息收集栏,点击提交的时候,通过form的POST方法传递到用户Action方法中。在Action中定义插入的方法,先实例化用户实体类,将用户信息通过实体类进行设置,然后调用用户数据库操作方法,保存用户信息到数据库,然后返回成功消息。
在用户信息管理页面先通过查询条件,获取对应的用户列表,然后在用户管理页面通过标签,把所有的用户信息绑定到列表中。
5.3 小程序端功能实现
5.3.1会员注册
基于Android的高校校园跑腿系统的用户,必须得进行注册。如下所示:
图5.6 会员注册界面
使用基于Android的高校校园跑腿系统的客户端时,先要进行注册,打开会员注册的页面,用户填写所有的注册信息后,点击注册,在注册中调用JS的AJAX方法。方法中接收用户实体信息,调用服务器端的用户注册方法。在服务器端获取用户实体信息,对实体进行序列化处理,然后调用用户信息保存的service数据库操作方法,将实体内的会员信息通过SQL语句插入到数据库,并返回一个成功标识的Json对象,在客户端解析Json。判断返回的信息是否注册成功并提供给用户,这样就实现了用户注册的完整流程。
5.3.2会员登录
用户填写用户名及密码,正确后才能登入系统,不正确则重新登录。
图5.7 会员登录
打开会员登录的页面,用户填写所有的登录信息后,点击登录,在登录中调用JS的AJAX方法。方法中接收用户实体信息,调用服务器端的用户登录方法。在服务器端获取用户实体信息,对实体进行序列化处理,然后调用用户信息查询的service数据库操作方法,将查询结果通过Json对象进行返回,在客户端解析Json,判断返回的信息是否登录成功。
5.3.3跑腿订单查看
用户登录后,进入系统的主界面,能够看到所有跑腿订单信息,包括成跑腿订单分类信息,跑腿订单信息。其中客户端主界面如5.8所示:
图5.8 客户端主界面
点击跑腿订单列表,跳转到跑腿订单详情的界面,用户可选择进行查看。在跑腿订单详情界面,点击首页,返回到主界面。
图5.9 跑腿订单信息查询界面
在跑腿订单页面加载时,初始化方法中,调用JS的AJAX方法。方法中接收跑腿订单实体信息,调用服务器端的跑腿订单查询方法。在服务器端获取跑腿订单实体,对实体进行序列化处理,判断查询条件,然后调用跑腿订单查询的service数据库操作方法,将查询结果通过Json对象进行返回,在客户端解析Json,把结果存储在临时集合变量中,对变量进行数据显示绑定到界面。
5.3.4用户接单
选择相关的跑腿订单后,在线抢单,抢单后在我的订单列表中,可以提交到后台。抢单界面如5.10所示:
图5.10 跑腿抢单界面
第六章 系统测试
6.1 测试说明
系统集成测试是对系统的接口进行测试,查看接口是否能够正确正常工作,包括数据库连接接口的测试。数据库测试就包括数据基本信息的增删改查操作测试,数据上线测试,数据下线测试,主外键关联测试,数据库优先级操作测试和安全性的测试。
系统安全性测试包括模糊匹配方法测试、状态机模型方法测试、黑盒模型测试和白盒模型测试,验证系统是否符合安全要求。
实用性测试是由用户发起的,判断本系统是否具有实际可行性可用性,用户得到确认后发布系统,进行上线。
压力测试是模拟足够多的链接,并长时间的运行系统,测试系统是否一直可靠与稳定,最大限度满足本系统的具体需求。
6.2 功能测试
系统登录是基于Android的高校校园跑腿系统 第一道安全防线,设计登录测试用例涉及到多个方面,下面对系统登录测试进行说明。测试过程如6.1所示:
表6.1 登录功能测试结果
数据输入 | 预期结果 | 测试步骤 | 结论 |
用户名和密码为空 | 提出错误消息 | 不输入信息,直接点击登录按钮。查看是否提示错误的消息。 | 经过修改后和预期一致 |
用户名和密码错误输入。 | 不能登录 | 输入正确的用户名,错误的密码。输入错误的用户名,正确的密码,点击登录,提示失败。 | 修改后和预期一致 |
输入正确的用户名和密码。 | 成功登录 | 输入正确的用户名,正确的密码。点击登录,提示登录成功。 | 通过 |
测试跑腿订单模块功能完整性,把跑腿订单信息录入到MySQL中,打开MySQL查看是否存在录入的数据,然后对跑腿订单进行修改或者删除,比较结果,对跑腿订单的内容最大长度和最小长度进行测试,查看是否符合要求。其中跑腿订单管理测试过程如6.2所示:
表6.2 跑腿订单管理测试结果
测试项目 | 预期结果 | 测试步骤 | 结论 |
跑腿订单的新增 | 跑腿订单信息保存到数据库 | 运行基于Android的高校校园跑腿系统 ,在跑腿订单新增界面录入跑腿订单,点击添加跑腿订单按钮。测试跑腿订单为空的情况,正确输入的情况。 | 通过 |
跑腿订单的列表 | 界面加载所有的跑腿订单 | 在跑腿订单信息列表,查看所有的跑腿订单信息,包括分页连接是否可用,数据条数和数据库是否一致。 | 通过 |
跑腿订单的修订 | 数据库信息成功修订 | 运行基于Android的高校校园跑腿系统 ,在跑腿订单修订界面修改跑腿订单,点击修订跑腿订单按钮。 | 通过 |
跑腿订单的删除 | 数据库信息成功删除 | 在跑腿订单信息列表页面,选择要删除的跑腿订单,点击删除。删除后查看列表和数据库表是否还存在该记录。 | 经过修改后和预期一致 |
测试系统用户模块功能完整性,把系统用户信息录入到MySQL中,打开MySQL查看是否存在录入的数据,然后对系统用户进行修改或者删除,比较结果,对系统用户的内容最大长度和最小长度进行测试,查看是否符合要求。其中系统用户管理测试过程如6.3所示:
表6.3 系统用户管理测试结果
测试项目 | 预期结果 | 测试步骤 | 结论 |
系统用户的新增 | 系统用户信息保存到数据库 | 运行基于Android的高校校园跑腿系统 ,在系统用户新增界面录入系统用户,点击添加系统用户按钮。测试系统用户为空的情况,正确输入的情况。 | 通过 |
系统用户的列表 | 界面加载所有的系统用户 | 在系统用户信息列表,查看所有的系统用户信息,包括分页连接是否可用,数据条数和数据库是否一致。 | 通过 |
系统用户的修订 | 数据库信息成功修订 | 运行基于Android的高校校园跑腿系统 ,在系统用户修订界面修改系统用户,点击修订系统用户按钮。 | 通过 |
系统用户的删除 | 数据库信息成功删除 | 在系统用户信息列表页面,选择要删除的系统用户,点击删除。删除后查看列表和数据库表是否还存在该记录。 | 经过修改后和预期一致 |
6.3 测试说明
本基于Android的高校校园跑腿系统按照软件设计进行,完成了需求分析,从用户角度出发,设计开发。对用户的要求不是太高,可以基本操作,就能录入信息,比较实用。
通过对测试用例的测试,并对bug进行了修改,完善了基于Android的高校校园跑腿系统的功能,对照系统需求分析,完成了系统开发任务,符合了开发需求。
总结
本文研究制作了基于Android的高校校园跑腿系统,通过软件工程方法,运用理论和编码实践,完成了系统功能设计实现和测试。
首先对基于Android的高校校园跑腿系统进行了课题分析,进行了跑腿订单查询情况的调研,参考相关文献,结合需求,进行文档整理。使用面向对象语言JAVA、和Android语言,数据库使用mysql。通过数据库存储信息数据,实现信息同步控制和管理。基于Android的高校校园跑腿系统的提出,很大程度上提高了二手跑腿订单的利用率。
通过测试发现,系统也存在一些问题,这些问题在以后实际工作中,我将会继续学习逐步完善。下面进行具体介绍。
本基于Android的高校校园跑腿系统的具体业务不够精细,不能完全满足实际使用需求,系统目前只提供了本校的跑腿订单销售,对应外校的处理不够具体,当用户注册为其它学校后,无法定位到对应的学校,查询相应的跑腿订单,也就无法进行购买。
对数据库的数据冗余和数据安全也需要进一步完善。当跑腿订单信息过大时,如何快速的查询出跑腿订单信息,如何处理大数据的响应问题等。目前的查询是把所有的跑腿订单信息一次性查询出来,而显示的时候只需要显示前几十条,可以通过存储过程来计算需要查询的条数,提高查询效率。