博主介绍:java高级开发,从事互联网行业六年,熟悉各种主流语言,精通java、python、爬虫、web开发,已经做了六年的程序开发,开发过上千套大学生实战程序,可以定制、也可成品项目,博客中有上百套程序可供参考,欢迎共同交流学习。
🍅文末点击卡片获取联系🍅
技术:SpringBoot+mysql+vue+tomcat
目录
1 系统介绍
随着信息互联网购物的飞速发展,一般企业都去创建属于自己的电商平台以及购物管理系统。本文介绍了飘香水果购物网站的开发全过程。通过分析企业对于飘香水果购物网站的需求,创建了一个计算机管理飘香水果购物网站的方案。文章介绍了飘香水果购物网站的系统分析部分,包括可行性分析等,系统设计部分主要介绍了系统功能设计和数据库设计。
本飘香水果购物网站管理员功能有,个人中心管理,用户管理,会员管理,会员卡管理,开通会员记录管理,积分管理,水果管理,购买水果订单管理,积分兑换管理,积分兑换记录管理,加积分记录管理,减积分记录管理。用户可以注册登录,在首页开通会员卡,查看水果,购买水果,查看水果信息,以及个人中心修改个人资料,在自己的后台查看自己的购买记录等。因而具有一定的实用性。
本站是一个B/S模式系统,采用Spring Boot框架作为开发技术,MYSQL数据库设计开发,充分保证系统的稳定性。系统具有界面清晰、操作简单,功能齐全的特点,使得飘香水果购物网站管理工作系统化、规范化。
2 系统背景
2.1 研究背景
如今互联网高速发展,网络遍布全球,通过互联网发布的消息能快而方便的传播到世界每个角落,并且互联网上能传播的信息也很广,比如文字、图片、声音、视频等。从而,这种种好处使得互联网成了信息传播的主要途径,社会上各种各样的信息都想尽办法通过互联网进行传播,互联网对社会产生的影响越来越大。
随着计算机技术的发展以及计算机网络的逐渐普及,互联网成为人们查找信息的重要场所,二十一世纪是信息的时代,所以信息的交换和信息流通显得特别重要。因此,开发合适的飘香水果购物网站成为企业必然要走的一步棋。开发合适的飘香水果购物网站,可以方便管理人员对飘香水果购物网站的管理,提高信息管理工作效率及查询效率,有利于更好的为用户提供服务。
2.2研究目的
随着互联网技术的快速发展,网络时代的到来,网络信息也将会改变当今社会。各行各业在日常企业经营管理等方面也在慢慢的向规范化和网络化趋势汇合。飘香水果购物网站的信息化程度体现在将互联网与信息技术应用于经营与管理,以现代化工具代替传统手工作业。无疑,使用网络信息化管理使信息管理更先进、更高效、更科学,信息交流更迅速。
企业如果还用之前的只有线下卖水果,已经很落伍了,这样会导致了效率低下。而且,时间一长的话,积累下来的数据信息不容易保存,对于查询、更新还有维护会带来不少问题。对于数据交接也存在很大的隐患。如果采用电子化的存储方式就会带来很大的改善,而且给用户的查询带来了很大便利,因此设计一个飘香水果购物网站刻不容缓,能够提高企业在信息技术方面的展示水平。
3 系统功能结构
4 数据库结构
飘香水果购物网站需要后台数据库,下面介绍数据库中的各个表的详细信息:
表4.1 水果评论信息表
字段 | 类型 | 空 | 默认 | 注释 |
id (主键) | bigint(20) | 否 | 主键 | |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
refid | bigint(20) | 否 | 关联表id | |
userid | bigint(20) | 否 | 用户id | |
nickname | varchar(200) | 是 | NULL | 用户名 |
content | longtext | 否 | 评论内容 | |
reply | longtext | 是 | NULL | 回复内容 |
表4. 2 购买水果订单信息表
字段 | 类型 | 空 | 默认 | 注释 |
id (主键) | bigint(20) | 否 | 主键 | |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
dingdanbianhao | varchar(200) | 是 | NULL | 订单编号 |
shuiguobianhao | varchar(200) | 是 | NULL | 水果编号 |
shuiguomingcheng | varchar(200) | 是 | NULL | 水果名称 |
jiage | int(11) | 是 | NULL | 价格 |
shuliang | int(11) | 是 | NULL | 数量 |
zongjine | int(11) | 是 | NULL | 总金额 |
xiadanshijian | datetime | 是 | NULL | 下单时间 |
shouhuodizhi | varchar(200) | 否 | 收货地址 | |
shouhuoren | varchar(200) | 否 | 收货人 | |
shouhuorendianhua | varchar(200) | 否 | 收货人电话 | |
zhanghao | varchar(200) | 是 | NULL | 账号 |
xingming | varchar(200) | 是 | NULL | 姓名 |
sfsh | varchar(200) | 是 | 否 | 是否审核 |
shhf | longtext | 是 | NULL | 审核回复 |
ispay | varchar(200) | 是 | 未支付 | 是否支付 |
表4. 3会员信息表
字段 | 类型 | 空 | 默认 | 注释 |
id (主键) | bigint(20) | 否 | 主键 | |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
huiyuanzhanghao | varchar(200) | 否 | 会员账号 | |
mima | varchar(200) | 否 | 密码 | |
huiyuanxingming | varchar(200) | 否 | 会员姓名 | |
xingbie | varchar(200) | 是 | NULL | 性别 |
shouji | varchar(200) | 是 | NULL | 手机 |
youxiang | varchar(200) | 是 | NULL | 邮箱 |
shenfenzheng | varchar(200) | 是 | NULL | 身份证 |
huiyuandengji | varchar(200) | 是 | NULL | 会员等级 |
zhekou | float | 是 | NULL | 折扣 |
zhaopian | varchar(200) | 是 | NULL | 照片 |
sfsh | varchar(200) | 是 | 否 | 是否审核 |
shhf | longtext | 是 | NULL | 审核回复 |
表4.4 会员购买订单信息表
字段 | 类型 | 空 | 默认 | 注释 |
id (主键) | bigint(20) | 否 | 主键 | |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
dingdanbianhao | varchar(200) | 是 | NULL | 订单编号 |
shuiguobianhao | varchar(200) | 是 | NULL | 水果编号 |
shuiguomingcheng | varchar(200) | 是 | NULL | 水果名称 |
shuliang | int(11) | 是 | NULL | 数量 |
jiage | int(11) | 是 | NULL | 价格 |
huiyuandengji | varchar(200) | 是 | NULL | 会员等级 |
zhekou | float | 是 | NULL | 折扣 |
zongjine | varchar(200) | 是 | NULL | 总金额 |
xiadanshijian | datetime | 是 | NULL | 下单时间 |
shouhuoren | varchar(200) | 是 | NULL | 收货人 |
shouhuodizhi | varchar(200) | 是 | NULL | 收货地址 |
shouhuorendianhua | varchar(200) | 是 | NULL | 收货人电话 |
huiyuanzhanghao | varchar(200) | 是 | NULL | 会员账号 |
huiyuanxingming | varchar(200) | 是 | NULL | 会员姓名 |
sfsh | varchar(200) | 是 | 否 | 是否审核 |
shhf | longtext | 是 | NULL | 审核回复 |
ispay | varchar(200) | 是 | 未支付 | 是否支付 |
表4.5 会员卡信息表
字段 | 类型 | 空 | 默认 | 注释 |
id (主键) | bigint(20) | 否 | 主键 | |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
huiyuandengji | varchar(200) | 是 | NULL | 会员等级 |
zhekou | float | 是 | NULL | 折扣 |
jiage | int(11) | 是 | NULL | 价格 |
tupian | varchar(200) | 是 | NULL | 图片 |
表4.6 会员水果信息表
字段 | 类型 | 空 | 默认 | 注释 |
id (主键) | bigint(20) | 否 | 主键 | |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
shuiguobianhao | varchar(200) | 是 | NULL | 水果编号 |
shuiguomingcheng | varchar(200) | 是 | NULL | 水果名称 |
shuiguozhonglei | varchar(200) | 是 | NULL | 水果种类 |
shuiguoxiangqing | longtext | 是 | NULL | 水果详情 |
jiage | int(11) | 是 | NULL | 价格 |
shuiguozhaopian | varchar(200) | 是 | NULL | 水果照片 |
表4.7 加积分记录信息表
字段 | 类型 | 空 | 默认 | 注释 |
id (主键) | bigint(20) | 否 | 主键 | |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
zhanghao | varchar(200) | 是 | NULL | 账号 |
xingming | varchar(200) | 是 | NULL | 姓名 |
jifen | varchar(200) | 是 | NULL | 积分 |
jiajifenbeizhu | varchar(200) | 是 | NULL | 加积分备注 |
表4.8 减积分记录信息表
字段 | 类型 | 空 | 默认 | 注释 |
id (主键) | bigint(20) | 否 | 主键 | |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
zhanghao | varchar(200) | 是 | NULL | 账号 |
xingming | varchar(200) | 是 | NULL | 姓名 |
shuiguobianhao | varchar(200) | 是 | NULL | 水果编号 |
jifen | varchar(200) | 是 | NULL | 积分 |
表4.9 积分信息表
字段 | 类型 | 空 | 默认 | 注释 |
id (主键) | bigint(20) | 否 | 主键 | |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
zhanghao | varchar(200) | 是 | NULL | 账号 |
xingming | varchar(200) | 是 | NULL | 姓名 |
jifen | varchar(200) | 是 | NULL | 积分 |
表4.10 积分兑换记录信息表
字段 | 类型 | 空 | 默认 | 注释 |
id (主键) | bigint(20) | 否 | 主键 | |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
dingdanbianhao | varchar(200) | 是 | NULL | 订单编号 |
shuiguobianhao | varchar(200) | 是 | NULL | 水果编号 |
shuiguomingcheng | varchar(200) | 是 | NULL | 水果名称 |
shuliang | int(11) | 是 | NULL | 数量 |
jifen | int(11) | 是 | NULL | 积分 |
zongjifen | varchar(200) | 是 | NULL | 总积分 |
xiadanshijian | datetime | 是 | NULL | 下单时间 |
shouhuodizhi | varchar(200) | 否 | 收货地址 | |
shouhuoren | varchar(200) | 否 | 收货人 | |
shouhuorendianhua | varchar(200) | 否 | 收货人电话 | |
zhanghao | varchar(200) | 是 | NULL | 账号 |
xingming | varchar(200) | 是 | NULL | 姓名 |
sfsh | varchar(200) | 是 | 否 | 是否审核 |
shhf | longtext | 是 | NULL | 审核回复 |
表4.11 开通会员记录信息表
字段 | 类型 | 空 | 默认 | 注释 |
id (主键) | bigint(20) | 否 | 主键 | |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
huiyuandengji | varchar(200) | 是 | NULL | 会员等级 |
zhekou | varchar(200) | 是 | NULL | 折扣 |
kaitongshijian | datetime | 是 | NULL | 开通时间 |
goumaitianshu | int(11) | 是 | NULL | 购买天数 |
jiage | int(11) | 是 | NULL | 价格 |
kaitongfeiyong | varchar(200) | 是 | NULL | 开通费用 |
zhanghao | varchar(200) | 是 | NULL | 账号 |
xingming | varchar(200) | 是 | NULL | 姓名 |
sfsh | varchar(200) | 是 | 否 | 是否审核 |
shhf | longtext | 是 | NULL | 审核回复 |
ispay | varchar(200) | 是 | 未支付 | 是否支付 |
表4.12 水果新闻信息表
字段 | 类型 | 空 | 默认 | 注释 |
id (主键) | bigint(20) | 否 | 主键 | |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
title | varchar(200) | 否 | 标题 | |
introduction | longtext | 是 | NULL | 简介 |
picture | varchar(200) | 否 | 图片 | |
content | longtext | 否 | 内容 |
表4.13 水果信息表
字段 | 类型 | 空 | 默认 | 注释 |
id (主键) | bigint(20) | 否 | 主键 | |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
shuiguobianhao | varchar(200) | 是 | NULL | 水果编号 |
shuiguomingcheng | varchar(200) | 是 | NULL | 水果名称 |
shuiguozhonglei | varchar(200) | 是 | NULL | 水果种类 |
shuiguoxiangqing | longtext | 是 | NULL | 水果详情 |
jiage | int(11) | 是 | NULL | 价格 |
jifen | int(11) | 是 | NULL | 积分 |
shuiguozhaopian | varchar(200) | 是 | NULL | 水果照片 |
thumbsupnum | int(11) | 是 | 0 | 赞 |
crazilynum | int(11) | 是 | 0 | 踩 |
表4.14 收藏信息表
字段 | 类型 | 空 | 默认 | 注释 |
id (主键) | bigint(20) | 否 | 主键 | |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
userid | bigint(20) | 否 | 用户id | |
refid | bigint(20) | 是 | NULL | 收藏id |
tablename | varchar(200) | 是 | NULL | 表名 |
name | varchar(200) | 否 | 收藏名称 | |
picture | varchar(200) | 否 | 收藏图片 |
表4.15 管理员信息表
字段 | 类型 | 空 | 默认 | 注释 |
id (主键) | bigint(20) | 否 | 主键 | |
username | varchar(100) | 否 | 用户名 | |
password | varchar(100) | 否 | 密码 | |
role | varchar(100) | 是 | 管理员 | 角色 |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 新增时间 |
表4.16 用户信息表
字段 | 类型 | 空 | 默认 | 注释 |
id (主键) | bigint(20) | 否 | 主键 | |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
zhanghao | varchar(200) | 否 | 账号 | |
mima | varchar(200) | 否 | 密码 | |
xingming | varchar(200) | 否 | 姓名 | |
xingbie | varchar(200) | 是 | NULL | 性别 |
shouji | varchar(200) | 是 | NULL | 手机 |
youxiang | varchar(200) | 是 | NULL | 邮箱 |
shenfenzheng | varchar(200) | 是 | NULL | 身份证 |
zhaopian | varchar(200) | 是 | NULL | 照片 |
5 系统功能
5.1 管理员模块的实现
5.1.1 水果信息管理
飘香水果购物网站的系统管理员可以管理员水果,可以对水果信息添加修改删除操作。具体界面的展示如图5.1所示。
图5.1 水果信息管理界面
5.1.2 减积分管理
系统管理员可以对减积分进行添加,修改,删除操作。具体界面如图5.2所示。
图5.3 减积分管理界面
5.1.3 会员购买订单管理
系统管理员可以对用户提交的订单进行审核以及删除操作。界面如下图所示:
图5.4 会员购买订单管理界面
5.2 用户模块的实现
5.2.1 首页
用户登录后,可以查看首页,会显示水果新闻。界面如下图所示:
图5.5 首页界面
5.2.2 水果
用户登录后,首页点击水果,可以查看水果信息并且可以购买操作。界面如下图所示:
图5.6 水果界面
5.2.3 购买水果订单管理
用户登录后可以个人后台查看属于自己的购买水果订单管理。界面如下图所示:
图5.7 购买水果订单管理界面
6 系统测试
测试的定义:程序测试是为了发现错误而执行程序的过程。测试(Testing)的任务与目的可以描述为:
目的:发现程序的错误;
任务:通过在计算机上执行程序,暴露程序中潜在的错误。
另一个预测是相关的术语叫纠错(Debugging)。它的目的与任务可以规定为:
目的:定位和纠正错误;
任务:消除软件故障,保证程序的可靠运行。测试与纠错的关系,可以用图6-1的数据流图来说明。图中表明,每一次测试都要准备好若干必要的测试数据,与被测试程序一道送入计算机执行。通常把一次程序执行需要的测试数据,称为一个“测试用例(Test Case)。每一个测试用例产生一个相应的“测试结果”。如果它与“期望结果”不想符合,便说明程序中存在错误,需要用纠错来改正。
6.2特性
(1)挑剔性
测试是为了证明程序有错,而不是证明程序无错。因此,对于被测程序就是要“纯毛求疵”,就是要“鸡蛋里挑骨头”。
(2)复杂性
测试仪程序则比较容易,这其实是一个误区。设计测试用力是一项需要细致和高度技巧的高能工作,稍有不慎就会顾此失彼,发生不应用得数楼。
(3)不彻底性
实际测试都是不彻底的,当然不能够保证测试后的程序不存在遗漏的错误。
(4)经济性
通场这种测试称为“选择测试(Selective Testing)”。为了降低测试成本,选择测试用力是应注意遵守“经济性”的原则。
6.3重要性
软件测试在软件生命周期中占据重要的地位,在传统的瀑布模型中,软件测试学仅处于运行维护阶段之前,是软件产品交付用户使用之前保证软件质量的重要手段。近来,软件工程界趋向于一种新的观点,即认为软件生命周期每一阶段中都应包含测试,从而检验本阶段的成果是否接近预期的目标,尽可能早的发现错误并加以修正,如果不在早期阶段进行测试,错误的延时扩散常常会导致最后成品测试的巨大困难。
6.4测试方法
首先我们来说界面测试,界面测试是为了使程序在不同的的操作平台上能够运行界面,并且能够保持原来的风格。我把完整程序拷贝到Windows 7环境下,似的程序运行正常,运行界面上的字体图片等设置都能够保持得非常好。不出现字体变形等情况!
其次进行功能测试。该系统测试采用的是单元测试,集成测试,完善性测试等多种方式进行测试。
经过测试,所有功能都能得以实现,没有任何变形。至此,在功能的测试上也已经比较圆满的完成了。
由于经验不足,写代码时出现了一些考虑不周的系统缺陷,写代码的时候会出现与设想不一致,比如说代码不规范导致接口与接口之间出现问题,功能与客户的要求不符合,这样导致产品不能过关,无法交付。所以产品在上线前必须反复测试,经过反复测试,修改,再测试,再修改,产品才能够不断完善。在整个系统测试中,根据需求文档和设计文档,逐一对功能进行检测并写好测试用例,有效避免残片缺陷,因为产品出现缺陷不仅影响功能,而且可以导致数据的不准确,导致产品质量的降低,经过测试,才能使得产品的稳定性和成熟度得到极大的提升,产品质量也才有保证。
6.5 功能测试
功能测试主要包括五项内容:适用性、准确性、可操作性、依从性、安全性。
本系统功能测试如表6.1所示:
表6.1 系统功能测试
测试内容 | 测试结果 |
适用性 | 好 |
准确性 | 好 |
可操作性 | 好 |
依从性 | 好 |
安全性 | 好 |
6.6可用性测试
可用性测试用于检测系统的可操作性、可理解性、可学习性等方面内容。具体测试方面如表6.2所示。
表6.2 系统可用性测试
测试项 | 测试人员的评价 |
窗口移动、大小改变、关闭等操作是否正常 | 是 |
操作模块是否友好 | 是 |
模块、提示内容等文字描述是否正确 | 是 |
模块布局是否协调、合理 | 是 |
模块的状态是否正确(对选中项能否发生对应切换) | 是 |
鼠标、键盘操作是否支持 | 是 |
所需数据项是否正确显示 | 是 |
操作流程是否合理 | 是 |
是否提供帮助信息 | 是 |
6.7性能测试
性能测试主要通过模拟系统运行环境,测试系统性能是否符合客户需求。性能测试的重要技术指标就是:系统运行速度、网络响应时间和支持并发节点数。
1)系统运行速度:通过在不同计算机上试运行本系统,没有发现有任何迟滞、停顿现象。
2)网络响应时间:网络响应时间主要包括网络最小响应时间、平均响应时间、最大响应时间三个参数。经过测试,在网络运营良好状态下,NBA局域网内响应时间三参数为:1/2/6s,NBA外网响应时间三参数为3/7/12s,符合客户需求,属于用户心理可承受范围。
3)支持并发节点数:经过模拟环境测试,本系统在并发节点达46个时,网络运营速度会发生较大波动,延迟时间10秒左右,符合客户需求。
6.8测试分析
本网站设计时借鉴了国内外优秀网站的优点,从界面到系统设计都保证了用户能够方便操作。系统的主要特点和优点归纳如下:
(1)本系统用的移置性和针对性都比较高,因为针对性高可以提供更好的服务而移置性可以在多个系统上运行,更给客户带来了极大的方便。
(2)该完整内容全面,管理方便可以及时的全面的处理各种错误,异常,这样避免了很多因用户的马虎操作而出现的失误,其操作方便,用户界面友好,能够上网的人都可以很好的进行操作。
6.9测试结果分析
经过对上述测试结果分析,本系统符合用户需求。所有基本功能点实现,操作简单,操作流程简单合理,产品运行性能良好,是一款值得推广的飘香水果购物网站。
7 总结
在这次毕业设计中遇到的最困难的方面就是在数据库方面的知识,在刚开始进行毕业设计的时候感觉十分困难,根本不知道该从何处下手,但不断的坚持,设计最终被完成。无论多么的困难,只要能够坚持下来,善于去找到好的材料来研究,在研究中充分利用资源,没有困难是不会被成功解决的。
在开发系统的过程中,本人运用到Spring Boot技术和平时学习中所了解的一些技术,通过实现这些技术,大大提高了整个系统的性能。在论文中这些技术都做了比较详细的介绍。本系统还存在很多缺点和不完善的地方,例如有些细节上做的还不够完善,有些功能模块还需要加强。在今后的日子里,能够对这些不足进行改善。
通过这次最终的毕业设计,平时所学到的知识不仅融合了,而且获得了许多计算机知识。在整个设计过程中明白了许多东西,也培养独立工作能力,树立信心,对自己能力的工作能力,我相信以后会学习和工作生活中有至关重要的作用。同时也大大提高了手的能力,使其难以充分体会探索的乐趣和成功的创作过程,设计过程中汲取的东西,是一笔宝贵的财富。
回顾过去做毕业设计的整个过程,充满了付出和收获,但是当你看到成果的时候的感觉,是一种难以用言语表达的喜悦之感这些在毕业设计过程中学习到的东西将会使我终身受益!
最后,感谢指导老师的关心和指导,在我毕业设计的整个过程中,他给与了我很多的帮助和讲解,在导师的帮助下我的毕业设计才能如此顺利的完成。