基于Android校园跳蚤市场交易系统的设计与实现

小跳蚤 大用途

前言:

  算一算时间又快到了一年一度的毕业设计了吧,我也差不多完成我自己的毕业设计一年了,在此推出我的毕业设计成果以供后来的学弟学妹参考。都说站在巨人肩膀上,更上一层楼,在枯燥的编程期间我也有参考CSND大力哥的文章。很多人 把毕业设计应付过去,但是学习终究是自己的,绝知此事要躬行。接下来跟着我学习和分析的思路看一下成果吧!

目录

第1章       引言.... 5

1.1研究背景.... 5

1.2项目简介.... 5

1.3论文组织结构.... 6

第2章       系统分析与设计.... 7

2.1 需求分析.... 7

2.2可行性分析.... 7

2.2.1 经济性.... 7

2.2.2技术性.... 7

2.3  总体设计.... 8

2.3.1  项目计划.... 8

2.3.2  系统功能结构图.... 9

2.3.3 系统 E-R图.... 10

2.3.4 用例文本描述.... 11

2.4系统设计.... 13

2.4.1 设计目标.... 13

2.4.2 开发及运行环境.... 14

2.4.3 逻辑结构设计.... 15

第3章       系统实现.... 16

3.1 Android客户端.... 16

3.1.1 模块功能介绍.... 16

3.1.2  用户管理模块系统展示.... 16

3.1.3 发布于检索功能模块系统展示.... 17

3.1.4 核心交易功能模块系统展示.... 24

3.1.5 辅助功能模块系统展示.... 27

3.2 C#管理员端.... 28

3.2.1 C#管理员端主要包括以下四部分功能模块.... 28

3.2.2 管理员登录功能实现.... 28

3.2.3 审核功能模块功能实现.... 29

3.2.4 管理功能模块展示.... 31

3.2.5 查看统计功能模块展示.... 32

第4章       功能测试.... 34

4.1 测试目的.... 34

4.2 测试内容.... 34

4.2.1 测试要点.... 34

4.2.2 测试内容.... 34

4.2.3 测试环境.... 35

4.2.4 测试范围.... 35

4.2.5 测试结论.... 35

第5章 总结与展望.... 36

5.1 毕业设计总结.... 36

致谢.... 37

参考文献.... 38

附录.... 39

附录A数据库表.... 39

附录B名词术语及缩略词.... 42

 

1.分析与准备

主要内容 随着科学技术的发展,网上购物成为时尚,网上购物方便、快捷、实用,成为我们生活之必须,针对高校内大量学生有大量学习生活用品需要处理,直接丢弃是一个损失。本毕业设计实现一个基于Android移动平台的高校跳蚤市场交易系统,学生们随时随地可以利用本系统发布二手商品和浏览商品信息,并且操作简捷方便。

主要实现以下内容

1. 分析校园用户的需求,对系统进行总体设计,在Android平台上进行系统开发;

2. 实现基本的商品交易功能,包括发布商品、搜索商品和分享等;

3. 实现基本的系统设置和用户管理功能;

4. 提供用户交流的平台,如留言板等;

5. 实现其他功能,如热销物品排名、物品关键字模糊查询等。

基于以上需求,可以抽出关键信息以及扩展需求,我的目标是自己做出来的东西要一定要有高标准至少自己能看,才能给别人看。一下便是我的解读:

C2C模式电子商务系统

②基于C/S结构的交易系统

③主打校园,近距离不存在物流系统

④围绕二手商品交易,搭建人性化台例如:公益项目免费送和拍卖等

⑤电子商务盈利为目的,建立交易手续系统

⑥一人分饰两角(买家和卖家)

选取开发工具:

2.成果展示

1.界面及用户管理,仿微信风格

2.发布与检索(核心功能)

3.核心交易功能的实现

4.辅助功能的实现

5.管理员功能的实现

OK以上为大概实现的功能展示,管理员端做得比较粗糙。

大概实现的功能有:

3.详细设计与实现

1.1研究背景

  随着可持续发展的进一步深入,建立“环境友好型、资源节约型社会”以及资源再利用的观念越来越受到学生的重视和认可。由于产品更新换代节奏加快,市场潮流转向的驱使,大多数学生买了商品使用一段时间后就觉得不尽人意,又有购买力,愿意卖旧买新;或者有的同学在商品使用一段时间后想购买档次更高的商品,也采取卖旧买新的做法;随着各高校的毕业生离开校园,大部分还有价值的物品会被选择性出售。

  传统的跳蚤市场,会有固定的组织,固定的时间、固定的地方和分配固定的摊位,这里存在好处也有坏处,庞大的市场会占用很大一部分面积,卖家需要尽早的去照看自己的摊位。例如我们学校,在每年毕业生快离开学校的前半个月,学校会组织为期三天的跳蚤市场交易活动。可是如果同学们很早就想处理自己的旧物品,就会找不到渠道联系买家,刚好交易的时候有课就不能第一时间“淘”到自己想要的宝贝。

  近年来,随着网络的快速发展以及计算机技术的逐渐成熟,电子商务模式的跳蚤市场呼之欲出。为了满足高校大学生更方便、快捷、随时随地的出售自己的旧物品,本系统将大多数交易需求放进了智能手机里。只要同学们拿出自己的手机,就能尽情购买物美价廉的商品,同时也可以出售自己的物品以免浪费其价值。

1.2项目简介

  本系统应用于Android平台,发布于webservice服务器,用户通过手机客户端进行操作。本系统为用户提供了一个发布商品、发布公益、购买宝贝、参与公益的以及浏览商品信息的交易平台。

  本系统涉众包括:用户、跳蚤市场交易系统、开发人员、管理人员。用户包括:

卖家(发起者):随时随地发布商品、发起公益项目;

买家(参与者):随时随地浏览商品信息、一键购买;

跳蚤市场交易系统:一个交易平台,用户在上面参与跳蚤市场的交易流程;

开发人员:开发本系统(包括前台用户模块、服务器模块以及管理员模块);

管理人员:负责审核用户发布的信息是否符合规定,维护系统稳定;

2.1 需求分析

主要内容 随着科学技术的发展,网上购物成为时尚,网上购物方便、快捷、实用,成为我们生活之必须,针对高校内大量学生有大量学习生活用品需要处理,直接丢弃是一个损失。本毕业设计实现一个基于Android移动平台的高校跳蚤市场交易系统,学生们随时随地可以利用本系统发布二手商品和浏览商品信息,并且操作简捷方便。

  为了使系统更人性化,走访调查后需要本系统具备一下功能:

  1. 因为是手机软件开发,所以就需要良好的用户体验界面
  2. 简单实用的登陆注册功能,以方便验证登陆人信息
  3. 能发布、浏览、下单、购买、发货、收货、取消商品相关信息
  4. 商品热销排行、分类检索、模糊查询
  5. 由于是用户之间交互应提供一个评论功能方便沟通
  6. 为了使系统更壮大加入不同样式的互动方式:免费送、公益项目等
  7. 为了让更多人参与需要加入分享到朋友圈的功能
  8. 为了管理后台与用户交流,加入消息系统
  9. 是一个盈利性的平台加入手续系统
  10. 由于不确定性太多,加入商品审核,关键字屏蔽等功能

2.2可行性分析

2.2.1 经济性

通过手机APP进行二手商品交易,大大提高了搜索宝贝的效率和减少了时间成本。通过用户发布的商品,进行分类统计与管理,找出人气较高的分类,为管理员提供了推送信息的方向,极大的方便了处理和购买旧物品。买家对卖家的评论和对商品的分享,使得该商品能具有更高的性价比评估。

2.2.2技术性

  使用安卓手机客户端进行交易,能够收到系统的推送和广告商品,以及自己的消息记录。极大地方便了同学们的使用,减轻了搜索压力,避免了因旧物太多没时间和渠道处理二占据大量空间;后台管理系统很好的帮助管理员对用户信息进行管理,通过反馈回来的数据对广告推送进行一定的调整,从而提高了工作效率。基于C/S结构让用户有一个流畅的O2O模式交易平台。

2.3.1  项目计划

基于Android校园跳蚤市场交易系统开发是一个小型手机应用程序和客户端结合的程序,主要分为管理端和客户端。

2.3.1.1  客户端

   客户端是基于WebService接口的Android手机软件开发程序,规划系统功能模块如下:

  1. 用户管理
    该模块主要包含用户的登录、注册、注销、修改密码、上传头像和修改资料等。
  2. 发布与检索
    发布商品、发布公益、发布免费送、模糊搜索、人气排行、分类检索、加急排行、最新发布等功能。
  3. 核心交易功能
    下订单、取消订单、确认收货与发货、删除商品、参与公益、修改商品信息等功能。
  4. 辅助功能
    充值、提现、消息管理、公益管理、评论、联系卖家、分享到朋友圈等功能。

2.3.1.2  管理端

  管理员端主要是采用C#.netframwork框架写的基于C/S模式的客户端,通过SSH框架进行业务逻辑处理和链接数据库,规划系统功能如下:

  1. 系统验证功能
    主要是管理员登录
  2. 审核功能
    管理员对用户上传的信息进行筛查审核
  3. 修改功能
    维护日常与用户交互信息得修改与删除等
  4. 查看统计
    系统根据数据库自动生成的报表,以供管理员参考

2.3.2  系统功能结构图

2.3.2.1  客户端

  客户端的功能结构图如图2-1所示:

 

                         图2-1 跳蚤市场客户端功能结构图

 

 

2.3.2.2  管理端

  管理端的功能机构图如图2-2所示:

 

                    图2-2 跳蚤市场管理端功能结构图

2.3.3 系统 E-R图

限于篇幅画出主要几个实体类属性,如图2-3所示:

 

 图2-3 实体类图

所有类的E-R图如图2-4所示:

 


                     图2-4  系统E-R图

本系统主要是针对学生用户进行开发设计,分为客户端和管理端两部分,分别实现以下几个目标:

2.4.1.1  客户端:

(1)  学习所有APP的共同有点,界面操作简单、美观,尽可能用最简单操作完成最复杂流程

(2)  登录注册时时有友好提示,并且记录登录状态

(3)  进入APP后能看到推送的商品,进行模糊搜索分类搜索等

(4)  个人中心对信息进行修改,头像、密码和地址等个人信息

(5)  可以充值和提现方便交易往来存在的金钱流动

(6)  消息系统方便参与者进行到列操作后,系统反馈有效信息

(7)  对商品管理,确认发货、删除商品和修改商品信息等

(8)  对订单管理,取消订单、确认收货和查看详情等

(9)  可对商品进行评论、分享和直接联系卖家等功能,方便买家与卖家之间沟通

(10)  增加实用性,加入公益项目的发起与参与,为用户提供一个互帮互助平台

2.4.1.2  管理端:

     (1)  管理员能查看统计图,如:发布与销售统计图、收入与支出统计图等

     (2)  管理员对用户发布的商品进行审核,检查是否符合要求确认通过与否

(3)  管理员对用户发起的公益项目进行审核,检查是否符合要求

(4)  管理员对商品的评论进行筛选,是否符合要求规范

(5)  管理员对商品的大小分类进行管理,保证能准确应对用户需求

(6)  管理员对APP首页的推送广告进行管理,减小用户搜索压力

2.4.2 开发及运行环境

2.4.2.1  硬件平台

CPU及处理器:1.7GHz及以上,处理器i5以上;

内存:512MB以上;

2.4.2.2  软件平台

操作系统:Windows 7/Windows 8/Windows 8.1/Windows 10

编程工具:MyEclipse2017+VisualStudio2017 +Tomcat 9.0+AndroidStudio3.0

数据库:Mysql 5.7.2

移动端:推荐使用支持Android4.0以上版本手机

分辨率:最佳分辨率效果为1024*768像素

2.4.3 逻辑结构设计

本软件项目系统采用的数据库为Mysql 5.7.2 数据库,新建数据库的名称为fleamarket。在数据库中包含了11张表。数据库中的数据表请参见附录A。

测试目的

  通过测试本系统,来简单检测系统中各个功能的健壮性,看是否能够达到预期的目标。

4.2 测试内容

4.2.1 测试要点

测试方法:黑盒测试

测试手段:手工测试

4.2.2 测试内容

(1)Android客户端

                      表4-1 客户端测试表

序号

测试功能

测试方法

1

2

3

4

5

6

7

8

9

10

11

登录注册

注销

修改信息

发布商品

参与公益

评论

下单购买

确认收货

上传图片

修改密码

分享

输入信息,点击注册;输入用户名和密码,验证登录。

点击注销按钮,是否回到登录页面

修改商品信息和个人信息,查看是否成功

填写信息、发布,是否进入待审核状态

加入公益,是否收到信息

填入消息,点击评论,是否展示评论

商品是否进入下一状态,订单是否生成

卖家是否收到钱,商品是否进入下一状态

是否能将本地图片上传

是否能用新密码登录

是否能成功将商品分享到朋友圈

 

(2)管理员端

序号

测试功能

测试方法

1

2

3

4

登录

查看统计

管理功能

审核功能

是否能成功登陆,并得到反馈信息

是否能看到数据库反馈的统计信息

是否能对类型和广告进行正确修改与保存

是否能查看用户上传的信息,并进行验证

4.2.3 测试环境

硬件环境:lenovo G50-70笔记本电脑一台,华为手机一部;

软件环境:Tomcat9.0、Mysql5.7

4.2.4 测试范围

本次软件测试的目的主要是为了发现与解决一些不知名的错误,和一些基本的用户操作功能。

4.2.5 测试结论

(1) 功能的测试部分比较完整,完成需求的基础上,更添加了一些人性化的细节,用户使用起来更加方便快捷。

(2) 界面设计比较完整,符合大众审美,能被用户轻易接受,提高了用户的体验。

毕业设计总结

在如今互联网时代,电子商务方便了我们的生活,在“买买买”时代的大背景下,尤其是当今大学生占比重的大头,他们会一时兴起买自己喜欢的东西,可是一段时间后又没有了当初的热爱。物品的价值便慢慢流逝了,为了帮助大学生随时随地处理自己的旧物品,发挥其剩余价值,我们校园跳蚤市场交易系统便诞生了。本系统最终满足了大部分用户的需求,做到了随时随地交易的目标。为了促进“可持续发展经济”的目标,本系统旨在打造“最人性化”、“最环保”、“最节约”的交易功能模式。

本系统在设计实现的过程中遇到了很多的问题,比如:对于系统设计方案的取舍、界面功能的重叠、获取数据后解析数据包失败等等。以下简短列出几个问题:

(1)系统的设计方案。在设计之初,选择了订单和商品复用同一个界面,但是限制就比较大,订单和商品的共同点相对较少,对系统核心功能实现有点影响。

解决方案:参照市面上现有的应用程序——淘宝,将订单和商品分开,进入不同的界面根据两个实体类不同的属性,进行相关操作,极大地扩展到系统的功能,是用户运用起来更灵活。

(2)客户端界面设计。后期在APP的界面、美工方面投入了大量时间精力,参考了很多APP的设计风格,从零开始弄得很花哨,不适合大众的审美。

解决方案:本着一应从简的原则,取消了繁杂的界面图片,改用烟灰白、白色、黑色搭配的简约界面设计。如此一来,尽管在美观性上略有欠缺,但是功能更加直观,让用户能够在尽量少的时间内发布信息、达成所需,给用户带来了更好使用体验。

校园跳蚤市场交易系统的设计与实现已全部完成,可以顺利的运行并完成基础的应用。对于后续的版本,本系统在确保核心功能不变的情况下,可以添加留下的未实现的功能,为系统增添多样化元素;可以继续完善界面布局和功能分配,减少功能耦合,优化数据库的表结构,提高服务器性能,增大并发线程数,以期给用户带来更好的使用体验。

致谢

  从2018年1月份选题到现在结题,历时五个月的毕业设计正式结束了。正如诸多计通院学长学姐所经历过的毕业设计一样,我在开发系统的过程中也遇到了很多问题,有时莫名其妙的问题一出现就能卡住我好几天,不论是初识Android时的陌生与茫然,还是苦于SSH框架环境的配置;不论系统设计是的举足无措,还是数据库构建时的犹豫不决。遇到问题时的困恼,编程时的孤独,遇到BUG的烦躁,实现功能后的欣喜与成就感,现如今回头望去,当时那么强烈的喜怒哀乐都似雾里看花,瞧不真切却又实实在在的立在那儿,讲述着那时的欣喜若狂、垂头丧气。

  回头看整个过程,我所获得的就好像慢慢建起的小屋,永远驻扎在那里,只要不懈努力便会只升不降。而获得这样巨大的提升,不得不由衷的感谢黄**老师,正因为她的耐心指点和不懈帮助,我才得以拥有一个较清楚的逻辑,正确的完成每一步,并最终成功的实现校园跳蚤交易系统,在此郑重的对黄老师表示衷心的感谢。同时,在技术方面极大帮助过我的“老师”黑马程序员网站,以及CSDN大力哥,在此表示真挚的感谢。

  从2014年跨进校园到现如今即将毕业,四年时光如白驹过隙,大学生活马上就要画上句号了。静静的反思这四年来的得与失,发现短短的四年却留下了数不尽的回忆:尚未实现的抱负、脱离烦恼的欣喜,如此种种,不一而足,我相信总有一天我会成功的,不问前程是喜或是悲。不论这四年的经历是泪水或是笑容,都值得我珍藏,若干年后回想起来,不会为现在做的事情后悔,不会埋怨现在的自己。

   已是二十出头的年纪,这却是我成长最快的四年,余下的生命中,想必会有许多个这么努力的四年等着我去经历。感谢**大学,感谢这四年来教导我的计通院的老师们,感谢我的辅导员,谢谢你们帮助我成长,谢谢你们在这么重要的四年里给我这么多帮助,但愿自己在以后的生活工作中,勿忘初心,砥砺前行,实现自己远大的抱负。

附录

附录A数据库表

   注:附表只列出几个关键性表结构,其余表或是简短或是大同小异。

                         附表A1 账单表(Account)

属性名

数据类型

是否主键

是否外键

完整性

属性描述

Aid

Bill

Uid

Time

Tuid

Label

Int

Double

Int

Varchar

Int

Varchar

Notnull

Notnull

Notnull

Notnull

Notnull

Notnull

账单标识

金额

用户标识

账单建立时间

收款方用户ID

账单说明

        

                         附表A2 公益项目表(Charity)

属性名

数据类型

是否主键

是否外键

完整性

属性描述

cid

name

Uid

Time

Content

Need

Imageurl

Endtime

Scannum

Joinnum

State

Int

Varchar

Int

Varchar

varchar

Varchar

Varchar

Varchar

Int

Int

Int

Notnull

Notnull

Notnull

Notnull

Notnull

Notnull

Notnull

Notnull

Notnull

Notnull

Notnull

公益项目标识

公益名称

用户标识

公益发起时间

公益简介

需求

图片地址

公益结束时间

浏览人数

参加人数

公益状态

        

                         附表A3 商品评论表表(Conments)

属性名

数据类型

是否主键

是否外键

完整性

属性描述

Cid

Gid

Uid

Time

Guid

Content

State

Int

Int

Int

Varchar

Int

Varchar

Int

Notnull

Notnull

Notnull

Notnull

Notnull

Notnull

Notnull

评论标识

商品标志

评论人标识

账单建立时间

卖家ID

评论内容

评论状态

        

                         附表A4 管理员表(Cuser)

属性名

数据类型

是否主键

是否外键

完整性

属性描述

id

username

Level

Password

State

Nickname

Int

Varchar

Int

Varchar

Int

Varchar

Notnull

Notnull

Notnull

Notnull

Notnull

Notnull

管理员标识

登录账号

等级

登录密码

状态

昵称

        

                         附表A5 商品表(Goods)

属性名

数据类型

是否主键

是否外键

完整性

属性描述

gid

gname

Uid

Time

Type

Detail

Price

Oprice

Image

State

Emergent

Getway

Hownew

Scannum

Int

Varchar

Int

Varchar

Int

Varchar

Double

Double

Varchar

Int

Int

Int

Varchar

Int

Notnull

Notnull

Notnull

Notnull

Notnull

Notnull

Notnull

Notnull

Notnull

Notnull

Notnull

Notnull

Notnull

Notnull

商品标识

商品名称

用户标识

商品发布时间

商品类型

商品描述

商品价格

商品原价

图片地址

商品状态

否是加急的状态

取货方式

新旧程度

浏览人数

        

                         附表A6 用户表(User)

属性名

数据类型

是否主键

是否外键

完整性

属性描述

uid

name

password

nickname

sex

address

tel

balance

Int

Varchar

Varchar

Varchar

Int

Varchar

Varchar

Double

Notnull

Notnull

Notnull

Notnull

Notnull

Notnull

Notnull

Notnull

用户标识

登录账号

登录密码

昵称

性别

联系地址

联系电话

余额

        

附录B名词术语及缩略词

缩略词

解释

C/S结构

B/S结构

Myeclipse

SSH

AndroidStudio

APP

E-R图

客户端与服务器结构

浏览器和服务器结构

集成开发环境

Spring+Sturts2+hibernate开发框架

安卓应用程序集成开发环境

应用程序,Application缩写

实体之间的关系图

 

附Android前端代码提取地址

这是我大四自己摸索的,代码质量不是很高,看到这么多后来者需要参考源码,我也了解大多数是拿来主义,只为完成毕业设计糊弄一下就过去了,希望你们找回决定进入互联网行业的初心。

  以下是Android前端代码,服务器代码和管理端代码贴出来你们也不一定就能运行,希望能帮助到你们把。

后台是SSH框架写的服务器,参考意义不大。

链接:https://pan.baidu.com/s/14Tvls6aYAyRCMxKTEfSQqA 
提取码:4gph 
 

 

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页