springboot基于Hadoop技术下的校园二手交易系统的设计与实现

摘 要

自从新冠疫情爆发以来,各个线下实体越来越难做,线下购物的人也越来越少,随之带来的是一些不必要的浪费,尤其是即将毕业的大学生,各种用品不方便携带走导致被遗弃,造成大量的浪费。本系统目的就是让毕业生的二手物品有一定的价值,并且在疫情环境下做到零接触买卖,更加安全。
在新冠疫情下,校园二手交易系统主要是用JAVA开发的。系统根据B/S架构设计,选用springboot框架开发,Hadoop技术,编码由Eclipse撰写,形成的数据储存在MySQL数据库中,服务器应用Tomcat。系统分成管理员控制模块和学生模块。管理员可以审批学生、物品分类、物品信息、心愿贴等功能,学生可以查看物品信息进行购买,还可以发布物品、对物品进行发货和设定本人系统。本系统有良好的界面体验,功能基本齐全,让使用者体验度大大提升。
关键词:校园二手交易系统;MySQL数据库;B/S架构;JAVA语言;springboot框架
Abstract
Since the outbreak of the COVID-19, offline entities have become more and more difficult to do, and there are fewer and fewer people shopping offline, which has brought about some unnecessary waste, especially for college students who are about to graduate. It is not convenient to carry all kinds of supplies away, leading to abandonment, resulting in a lot of waste. The purpose of this system is to make the second-hand goods of graduates have certain value, and achieve zero contact trading in the epidemic environment, which is safer.
Under the COVID-19, the campus second-hand trading system was mainly developed with JAVA. The system is designed according to the B/S architecture, developed using the spring boot framework, Hadoop technology, and coded by Eclipse. The resulting data is stored in the MySQL database. The server uses Tomcat. The system is divided into administrator control module and student module. The administrator can approve student, item classification, item information, wish post and other functions. Students can view item information to purchase, and also publish items, ship items and set their own system. The system has a good interface experience and basically complete functions, which greatly improves the user experience.
Key words: campus second-hand trading system; MySQL database; B/S architecture; JAVA language; Spring boot framework

目 录

摘要 I
Abstract II
第一章 绪论 1
1.1 研究背景 1
1.2 国内外研究现状 1
1.3 系统的研究意义 2
第二章 系统分析 4
2.1需求分析 4
2.1.1 系统可行性分析 4
2.1.2 功能需求分析 5
2.1.3 非功能需求分析 8
2.2相关技术介绍 9
2.2.1 SpringBoot框架 9
2.2.2 Java语言 10
2.2.3 Hadoop介绍 10
2.2.4 MySQL数据库 11
第三章 系统设计 12
3.1 系统设计目标 12
3.2 系统结构图 12
3.3 系统数据库设计 13
3.3.1 数据库概念设计 14
3.3.2 数据库逻辑设计 15
第四章 系统实现 24
4.1 前台系统功能模块 25
4.2 后台管理员功能模块 26
4.3 后台学生功能模块 26
第五章 系统测试 30
5.1 运行环境 31
5.2 测试过程 31
5.2.1 界面测试 31
5.2.2 功能测试 31
5.3 测试结果分析 32
5.4 测试小结 33
总 结 34
致 谢 35
参考文献 36

1 绪 论

本章主要介绍校园二手交易系统软件的研究背景和研究意义,明确了系统软件设计理念,得到了研究内容和具体内容。
1.1 研究背景
随着网络的高速发展,网络技术的应用越来越广泛,信息化技术发展迅速[1]。在此之前,每年的毕业季,大多数的快要毕业的大学生在离校之前,都会把自己的二手物品如书本、个人物品、体育用品等物品通过摆地摊、张贴广告等方式售卖给其他年级有需要的同学。但是,这样的行为方式非常浪费学生的时间,为此看来这样的办法已经行不通了,因此本此论文的目的是要开发一个校园二手交易系统,让本届毕业生售卖物品有针对性,买卖双方均是本校学生,可以提高交易成功率且省去物流成本,还可以大大提升安全性,尽力减少人员的密集[2]。
1.2 国内外研究现状
我们的国家在电子商务平台方面相对于其他国家而言,起步的时间就晚了一些,在上个世纪90年代的初期才开始起步,但是我们国家也有相对的优势,那就是我们国家人口众多,相对于其他国家而言,市场规模也就大了很多[3],人口数量多也就让我们国家电商平台发展的更加迅速,让我国的电商发展有着很大得潜力,同时各个地区的管辖者对发展电商给予了大力的帮助,发布了很多让电商平台加速发展的政策,让我们国家在电子商务方面有了极大的进步。截止到今天,我们国家也研发了很多大型电商平台,例如淘宝网、京东商城、天猫国际、拼多多等[4],这些网站做的都非常的厉害。但是在二手物品这一领域,我国与其他国家还是有较大距离,很多的因素导致这样的结果[5],比如作为消费者,也许会因为面子问题,不会买二手物品,但是究其原因,也是因为我们国家很少有面向消费者人群的二手物品交易平台,最开始出现的二手物品交易平台,大多数都是一些小的平台,有一定的局限,这些网站上的二手物品交易都是一次性的,商家为了获利,让二手物品交易的安全性大大降低。初期的二手物品出售规章制度不健全,安全系数不高,非常容易给顾客产生多余的损害。虽然现在我们国家的二手物品交易市场初期有明显不足的地方,但是我们国家也在以最快速度,尽最大努力去发展,并且有了很大的成就,直到2017年底,我国的二手物品的交易,为我国带来了5000亿元规模,并以每年30%以上的速度增长[6],让我国也逐渐意识到二手交易带来的经济收益。在中国,许多网上二手交易市场也迅猛发展,在其中以阿里巴巴为代表的闲鱼二手市场和转转二手市场的市场市场份额可以做到90%以上。可以说,二手物品交易市场是一个大有作为的市场。从美国、法国的、德国瑞士、日本等资本主义国家看来,人均纯收入很高,人民日常生活标准优异,为二手物品交易市场造就了必要条件。与中国对比,更便宜的税款和更强的知识产权保护为海外二手市场买卖给予了较好的进步自然环境。以美国闲置的产品市场为例子。线下推广实体线有很多买卖店,也有著名的网上企业如ebay、amazon、美国梅西百货这些,都推行了自个的二手物品交易系统软件。就凭ebay在去年二手商品交易额里仅仅靠二手苹果硬件设备就形成十几亿美元的收益[7],该规模相当于在美国其他IT品牌的硬件总和。愈来愈多的公司对二手物品贸易市场进行“进攻”,为大家带来更快的服务项目,让老百姓们有了更多的选择。
1.3 系统的研究意义
大学生进行二手物品交易,可以层面的体现出大学生保活生态和避免浪费的心里,慢慢变成一种校园内的风气。到了毕业季,许多毕业生离去进到社会发展期,这种毕业生的二手物品不能全部带走,一些使用过的书、电子设备、用品反而会变成压力,不可以带走的二手物品可以卖给其它年级需要的同学,是一个很不错的方法。正是因为这些需求,产生了很多的二手物品交易,使得学校中的二手物品交易得以延续传承,并且,大多数大学生没有经济独立,也不会有太高的消费水平,都希望用最少的人民币,去买到最理想的商品,通过校园线下的二手物品交易市场,是购买物美价廉的商品最好途径,不过大型的线下校园二手物品交易市场所需成本,时间段,大多都在每年的六七月份,在毕业生都离校后,市场也就随之没有了,很多的学生的需求还没有达到,并且线下学校里的二手物品交易市场存在的同时,虽然让大学生提高了节约资源的意识,但是校园的环境和秩序也遭到了破坏[8]。
进到互联网时期后,高等职业教育也离不了互联网。互联网已经进一步到全部同学们和老师的生活工作中和学习中,充分发挥着至关重要的功效。与此同时,互联网的普及化为之前传统式的线下推广闲置品销售市场明确了新的方位。建立线上校园二手交易系统在解决传统线下二手物品交易出现的问题的同时,还做到了物流送货,降低了交易成本[9],还有让学生购物更加省时省力的优点,在满足学生购买二手物品要求的同时,也实现了校园二手物品的规模化管理。
综上所述,进行“校园二手交易系统”,既符合当前疫情环境下的独特要求,在搭建勤俭节约精神的同时,使校内二手物品信息公示和二手物品买卖更为规范化和便捷,与此同时回收利用二手物品,使回收利用变成“宝贝”,大大减少网络资源消耗,达到绿色发展规定,并响应国家节能减排号召的完成,实现了生态环境保护。更关键的是,处理了老师和同学的要求,能够更好地融入互联网自然环境下的迅速生活方式和买东西方式,为安全性交易拓宽渠道。

2系统分析

2.1需求分析
需求分析做为电脑软件整体规划环节和项目生命周期的关键一部分,应当是“实现什么东西”而不是“实现”[10]。根据开发者对调研分析关键点、作用、特性、稳定性的掌握,将学生的无形要求转换为有形的界定,以便确定系统的运行目标。
2.1.1 系统可行性分析
系统的可行性主要针对以下方面分析:
(1)经济可行性
经济发展的可行性分析要从开发商的经济发展能力和学生必须的成本费2个层面来剖析。为了更好地减少项目成本,系统软件应用Eclipse做为开源版本。数据库查询是开源MySQL数据库和配置好操作系统的电子计算机[11]。学生通常挑选Tomcat 7.0做为系统软件所处的网络服务器,而电脑浏览器应用出色的IE、火狐和Google更全方位地展现CSS网页页面,进而推动系统升级维护保养,控制成本。如此看来,处于经济层面的考虑,进行开发没有阻碍。
(2)技术可行性
技术可行性研究通过是否,在于对目前技术和硬件设备的剖析。系统软件开发应用的计算机语种是Java。Java语言从问世到现在不断强化,已经十分完善。运用覆盖面广,合乎开发必须。应用MySQL数据库作为数据储存,十分具有安全性,对配备规定低。这是一个经常使用的数据库。前台采用JAVA语言,就可以进行开发设计,让网页页面看上去又漂亮又大方,还方便维护[12]。最终,开发环境是Eclipse,因为其中包含框架和函数等等,可以立即应用。因此在技术方面是可行的。

(3)操作可行性
本校园二手交易系统选用B/S构造,学生不用安装其他软件就可以轻轻松松掌握和娴熟应用。与此同时,因为系统是基于Web的,可以实现客户端的请求和服务器的端口组件,解决数据库文件的数据并回到结论。为了更好地组建和储存数据,数据库可以确保数据的一致性。一旦对数据开展操作,工作会越来越更简易,工作量也会降低。全部操作都由系统自身操纵。该系统大大减少了有关工作人员的工作量,也更便捷的让工作人员掌握具体操作全过程。既加速了工作效率,又下降了错误率。在操作上是可行的[13]。
2.1.2 功能需求分析
校园二手交易系统是以学校的状况为起点,综合网络空间开发设计要求。目的是将二手物品通过网络平台变换为在网上交易,完成校园二手物品交易管理的方便快捷、安全性、规范做了保障,目标明确[14]。
这一系统可以分成二种类别的用例实体模型,分别是学生和管理员。这二个角色的作用将在下面详解和叙述。
(1)学生
主要使用者为学生。具备有:首页、个人中心、物品信息管理、订单管理等功能。学生用例图如图2-1所示。
在这里插入图片描述

图2-1 学生用例图

(2)管理员
进行维护,以及平台的后台管理工作都依靠管理员,其可以对信息进行管理。需具备功能有;首页、个人中心、学生管理、物品分类管理、物品信息管理、心愿贴、系统管理、订单管理等功能。管理员用例图如图2-2所示。

在这里插入图片描述

图2-2 管理员用例图

2.1.3 非功能需求分析
(1)系统的实用性
校园二手交易系统的开发,要求做到足够的简洁、易用,能为学生提供快捷、便利的使用体验,减少系统的无用功能,以及学生使用上的多余操作[15]。
(2)系统的安全性
校园二手交易系统纪录了至关重要的学生信息等信息,应当具备很高的安全性和经济价值。因此为了更好地保证学生的重要信息不被泄露、破坏和盗取,一定要保证系统的安全性。
(3)系统的稳定性
当一个系统的稳定性没法确保时,学生在应用系统时很容易发生数据操作不正确或网页页面回应不正确等。系统的稳定性对学生对系统的评价有较大的影响,是系统的一个主要指标值。因而,为了确保系统的稳定性,开发设计时要挑选稳定性高的操作系统、开发软件、数据库、服务器、以及其他工具。
(4)系统的开放性
要使系统软件对外开放,最先要保证系统具备较好的兼容模式,而且大部分版本的Windows电脑操作系统都能正常的运作。此外,尽可能适用不一样的电脑浏览器版本,同时系统的开放性也体现在系统方便日后的管理和升级。
2.2相关技术介绍
本章主要对开发校园二手交易系统所涉及的技术进行介绍说明,对包括JAVA语言,springboot框架和开发用到的软件和数据库等环境进行介绍说明。
2.2.1 SpringBoot框架
该框架拥有自己独特的配置方式,网站开发人员不需要再进行大量重复的样板 式的配置工作,开箱即用,不会生成额外代码量,不需要进行XML文件的配置。
2.2.2 Java语言
Java 最大的两个特点就是功能强大和简单易用。Java可以让程序员进行复杂的编程而不必为储存管理对象等问题所烦恼,把精力和时间更多的放在研发与设计上,极大地提高了开发者的工作效率和工作热情。
2.2.3 Hadoop介绍
Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。Hadoop实现了 一个分布式文件系统( Distributed File System),其中一个组件是HDFS (Hadoop Distributed File System)。HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost) 硬件上;而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。HDFS放宽了(relax) POSIX的要求, 可以以流的形式访问(streaming access)文件系统中的数据。Hadoop的框架最核心的设计就是: HDFS和MapReduce。HDFS为海量的数据提供了存储,而MapReduce则为海量的数据提供了计算。
2.2.4 MySQL数据库
数据库系统是一个进行数据存储的系统,数据库就是这个系统的库,用来存放通过系统的数据,数据库在开发人员的日常生活中,占据了很大的地位。因为使用数据可以使自己系统存储数据更加方便、快捷。
MySQL之所以受到广大开发人员的欢迎,主要原因使因为数据库的使用是免费的。最开始的数据库研发出后,是需要收费的,但是随着MySQL的出现和不断更新,越来越多的用户去使用这款软件。首先它是开源且免费的,这样大大减少了开发的成本;第二MySQL可以在多个平台上使用,在MAC、Windows和Linux上都可以使用。其次它的性能也是十分强大的,性价比极高。最后,MySQL相比其他数据库语言来说,更加简单易于上手;可以与很多平台搭建联系,比如本文使用的Java 。

3 系统设计

此章主要是详细介绍校园二手交易系统软件整体架构功能的设计与实现。
3.1 系统设计目标
校园二手交易系统的开发采用模块化软件结构设计,通过模块划分,可以让整个系统开发设计变得更加简洁,结构清晰,让程序的可读性和维护性更高,也方便开发人员对开发期间的组织管理工作,模块化就是指叙述I/O、逻辑性功能、内部结构条件和环境因素的表述。一般系统的一个子模块只实行一个功能,模块中间应当有良好的结构分析。下一层模块在顶层模块的启用下进行功能,后边的模块被逐渐启用,互相配合程序流程的每个子功能。在设计时应保持模块独立化原则,所以一个软件应该由一组相互独立的子模块构成,并保证模块间接口开发简单。
3.2 系统结构图
由需求分析阶段结果和综合分析,实质上,校园二手交易系统是一个开发难度比较高的系统,因为系统相对复杂,涉及功能多,且有一定的综合性,所以需要做到对现有软硬件的合理应用、系统软件层面做好科学合理的规划设计。构建一个完善的校园二手交易系统软件,包含后台管理有关的MySQL数据库系统等。
因此,校园二手交易系统按照功能由二部分构成的,二部份是学生和管理员。系统功能模块图如下图3-1所显示。
在这里插入图片描述

图3-1 系统功能结构图

3.3 系统数据库设计
为了更好地便捷日后的信息维护保养和信息升级,提升系统软件数据信息浏览的高效率。设计方案一个健全的数据库是必需的。数据库设计方案系统对有较大的影响,好的设计可以做到缩短数据操作的所需时间,带来更大的流量,同时在进行开发时,数据库设计的越优秀,越合理,开发所需要编写的代码就越简洁,越能使数据的储存效率提高,让数据的一致性和完整性可以得到保证。
3.3.1 数据库概念设计
概念模型用于对信息世界进行建模,单独于指定的数据库管理系统。便于将现实世界中的实际事情抽象地构成数据库管理系统适用的数据库模型。大家趋向于先把现实世界抽象化成信息世界,再把信息世界变为机器世界。换句话说,最先将现实世界中的目标抽象化为自主于特殊计算机软件和特殊数据库管理系统的信息构造,而是一个数据模型,随后在电子计算机上把该实体模型变换为数据库管理系统适用的数据库系统。实际上,数据模型是以现实世界到机器世界的正中间层级。
信息世界的基本要素包含实体和关联。
(1)实体(entity)
实体(entity) 客观存在并可相互区别的事物称为实体[15]。实体可以是实际的人、事或物,还可以是抽象化的概念或联络。
(2)联系(relationship)
我们可以把现实世界中相应的事情当作有关的实体,随后叙述现实世界中的信息。实体内部结构的特性连接造成实体中间的连接。实体间的连接可以有三种:一对一(1: 1),一对多(1: n),多对多(m: n)。信息世界用概念模型来进行建模,所以信息世界中共有的概念可以由概念模型准确的方便的表达出来。表达概念的方法不仅一种,E-R图是最经常使用的一种。现实世界的概念模型可以用E-R图来叙述,称之为实体-关系模型,通称E-R
实体模型。
根据系统分析的主要实体有:学生信息、物品信息、购物车、订单信息。以下是对各个实体属性的具体图形说明。
学生信息实体E-R图如下图3-2所示。
在这里插入图片描述

图3-2 学生信息实体E-R图

购物车实体E-R图如下图3-3所示。

在这里插入图片描述

图3-3 购物车实体E-R图

物品信息实体E-R图如下图3-4所示。
在这里插入图片描述

图3-4 物品信息实体E-R图

订单信息实体E-R图如下图3-5所示。

在这里插入图片描述

图3-5订单信息实体E-R图

3.3.2 数据库逻辑设计
在这一阶段需要做的是将主要的E-R图转化成一种逻辑结构,这类逻辑结构可以相匹配于您所采用的数据库智能管理系统的数据实体模型。
根据分析出的基本E-R 模型和之间联系,确定了数据库的逻辑结构。系统用部分表来说明。
表3-1:购物车表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
tablename varchar 200 商品表名 wupinxinxi
userid bigint 用户id
goodid bigint 商品id
goodname varchar 200 商品名称
picture longtext 4294967295 图片
buynumber int 购买数量
price float 单价
discountprice float 会员价
xueshengzhanghao varchar 200 商户名称

表3-2:用户表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

username varchar 100 用户名
password varchar 100 密码
role varchar 100 角色 管理员
addtime timestamp 新增时间 CURRENT_TIMESTAMP

表3-3:物品信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
wupinbianhao varchar 200 物品编号
wupinmingcheng varchar 200 物品名称
wupinfenlei varchar 200 物品分类
wupintupian longtext 4294967295 物品图片
pinpai varchar 200 品牌
xinjiuchengdu varchar 200 新旧程度
wupinxiangqing longtext 4294967295 物品详情
xueshengzhanghao varchar 200 学生账号
xueshengxingming varchar 200 学生姓名
dianhuahaoma varchar 200 电话号码
onelimittimes int 单限
alllimittimes int 库存
thumbsupnum int 赞 0
crazilynum int 踩 0
clicktime datetime 最近点击时间
clicknum int 点击次数 0
price float 价格

表3-4:地址
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
address varchar 200 地址
name varchar 200 收货人
phone varchar 200 电话
isdefault varchar 200 是否默认地址[是/否]

表3-5:token表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

userid bigint 用户id
username varchar 100 用户名
tablename varchar 100 表名
role varchar 100 角色
token varchar 200 密码
addtime timestamp 新增时间 CURRENT_TIMESTAMP
expiratedtime timestamp 过期时间 CURRENT_TIMESTAMP

表3-6:关于我们
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
subtitle varchar 200 副标题
content longtext 4294967295 内容
picture1 longtext 4294967295 图片1
picture2 longtext 4294967295 图片2
picture3 longtext 4294967295 图片3

表3-7:关于我们
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
subtitle varchar 200 副标题
content longtext 4294967295 内容
picture1 longtext 4294967295 图片1
picture2 longtext 4294967295 图片2
picture3 longtext 4294967295 图片3

表3-8:收藏表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
refid bigint 商品id
tablename varchar 200 表名
name varchar 200 名称
picture longtext 4294967295 图片
type varchar 200 类型(1:收藏,21:赞,22:踩,31:竞拍参与,41:关注) 1
inteltype varchar 200 推荐类型
remark varchar 200 备注

表3-9:订单
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
orderid varchar 200 订单编号
tablename varchar 200 商品表名 wupinxinxi
userid bigint 用户id
goodid bigint 商品id
goodname varchar 200 商品名称
picture longtext 4294967295 商品图片
buynumber int 购买数量
price float 价格 0
discountprice float 折扣价格 0
total float 总价格 0
discounttotal float 折扣总价格 0
type int 支付类型 1
status varchar 200 状态
address varchar 200 地址
tel varchar 200 电话
consignee varchar 200 收货人
remark varchar 200 备注
logistics longtext 4294967295 物流
xueshengzhanghao varchar 200 商户名称

表3-10:公告信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
introduction longtext 4294967295 简介
picture longtext 4294967295 图片
content longtext 4294967295 内容

表3-11:心愿贴
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 帖子标题
content longtext 4294967295 帖子内容
parentid bigint 父节点id
userid bigint 用户id
username varchar 200 用户名
avatarurl longtext 4294967295 头像
isdone varchar 200 状态

表3-12:物品信息评论表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
refid bigint 关联表id
userid bigint 用户id
avatarurl longtext 4294967295 头像
nickname varchar 200 用户名
content longtext 4294967295 评论内容
reply longtext 4294967295 回复内容

表3-13:配置文件
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

name varchar 100 配置参数名称
value varchar 100 配置参数值

表3-14:物品分类
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
wupinfenlei varchar 200 物品分类

表3-15:学生
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
xueshengzhanghao varchar 200 学生账号
mima varchar 200 密码
xueshengxingming varchar 200 学生姓名
xingbie varchar 200 性别
nianling int 年龄
touxiang longtext 4294967295 头像
dianhuahaoma varchar 200 电话号码
money float 余额 0

4 系统实现

本章内容主要是对实现的模块进行说明,因为模块过多,仅对部分管理员和学生模块进行说明,结合图片介绍了模块的实现过程。
4.1 前台系统功能模块
当游客打开系统的网址后,首先看到的就是首页界面。在这里,游客能够看到校园二手交易系统的导航条显示首页、物品信息、心愿贴、公告信息、后台管理、购物车。系统首页界面如图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.2 后台管理员功能模块
管理员登录,通过登录页面输入用户名、密码、选择角色,进行登录操作,如图4-7所示。
在这里插入图片描述

图4-7管理员登录界面图

管理员登录进入校园二手交易系统可以查看首页、个人中心、学生管理、物品分类管理、物品信息管理、心愿贴、系统管理、订单管理等信息,进行相应操作,如图4-8所示。
在这里插入图片描述

图4-8管理员功能界面图

管理员点击物品分类管理,在物品分类管理页面中可以对物品分类等信息,并可根据需要进行查询或者新增、删除物品分类等操作,如图4-9所示。
在这里插入图片描述

图4-9物品分类管理界面图

管理员点击物品信息管理,在物品信息管理页面中可以对物品编号、物品名称、物品分类、物品图片、品牌、新旧程度、学生账号、学生姓名、电话号码、单限、库存、价格、审核回复、审核状态等信息,并可根据需要进行查询或者删除物品信息等操作,如图4-10所示。
在这里插入图片描述

图4-10物品信息管理界面图

管理员点击心愿贴,在心愿贴页面中可以对帖子标题、用户名、状态等信息,并可根据需要进行查询或者删除心愿贴等操作,如图4-11所示。
在这里插入图片描述

图4-11心愿贴界面图

管理员点击系统管理,在系统管理页面中可以对系统简介、公告信息、关于我们、轮播图管理等信息,并可根据需要进行查询或者删系统信息等操作,如图4-12所示。
在这里插入图片描述

图4-12系统管理界面图

4.3 后台学生功能模块
学生登录,通过登录页面输入账号、密码、选择角色,进行登录操作,如图4-13所示。
在这里插入图片描述

图4-13学生登录界面图
学生登录进入校园二手交易系统查看首页、个人中心、物品信息管理、订单管理等内容进行相应操作,如图4-14所示。
在这里插入图片描述

图4-14学生功能界面图

学生点击物品信息管理;在物品信息管理页面中可以对物品编号、物品名称、物品分类、物品图片、品牌、新旧程度、学生账号、学生姓名、电话号码、单限、库存、价格、审核回复、审核状态等内容,进行查询或者新增、删除物品信息等操作,如图4-15所示。
在这里插入图片描述

图4-15物品信息管理界面图

学生点击订单管理;在订单管理页面中可以查看订单编号、商品名称、商品图片、购买数量、价格、折扣价格、总价格、折扣总价格、支付类型、状态、地址、电话、收货人、备注、商户名称、下单时间等内容,并且进行详情、发货等操作,如图4-16所示。
在这里插入图片描述

图4-16订单管理界面图

5 系统测试

系统测试的好坏直接影响到软件的生存期,一个健全的测试流程可以确保系统的生命期。此章关键详细介绍实际操作条件和检测[16]。
5.1 运行环境
5.1.1软件平台
(1)所用开发工具:Eclipse+MySQL数据库;
(2)服务器系统:Windows 10操作系统;
(3)客户端系统:Windows 10 操作系统。
5.1.2 硬件平台
校园二手交易系统硬件环境需求并不是非常苛刻,服务器端和用户端都不需要太高的配置。目前主流的硬件配置足够满足运行条件。项目的体积不大,所需资源不多,推荐配置为,CPU达到1Ghz,内存达到2GB,磁盘空间达到500G,便可以流畅运行[17]。
5.2 测试过程
5.2.1 界面测试
在开发期间对前台界面主要进行以下几方面的测试:
(1)网页页面的合理布局,及其背景色表明是不是恰当,感观是不是简约美观,是不是符合规定,实际操作是不是便捷;
(2)在不一样电脑浏览器上的展现是不是正常的、美观;
(3)放缩、挪动、更新对话框时表明是不是正常的;
(4)网页页面中的连接部位方式是不是有利于学生搜索和了解。
系统前台经过以上几方面的测试,显示正确,界面简洁美观,未出现问题;学生可以简单上手,测试结果达到了预期效果。
5.2.2 功能测试
程序主要针对以下几点功能测试:
(1)登陆测试:测试输入不正确的手机号和登陆密码,手机号和密码为空,输入恰当的手机号和登陆密码时,是不是能正常的进到系统软件;
(2)注册测试:测试在输入不完善的注册信息内容和学生信息时,系统软件能不能得出提醒;学生注册取得成功后能不能取得成功注册;
(3)学生信息改动测试:账号登录后,测试私人信息改动是不是取得成功;

5.3 测试结果分析
功能测试结果如表5-1所示:
表5-1 功能测试表

模块名称 测试用例 预期结果 实际结果 是否通过
登录 账号:123
密码:123 提示:请填写字段 与预期结果相同 通过
登录 账号:18846037785
密码:123 提示:请输入字段 与预期结果相同 通过
登录 账号:18846037785
密码:qq713159 登录成功 与预期结果相同 通过
注册 输入已注册成功学生 提示:账号已被注册,请重新输入 与预期结果相同 通过
个人信息修改 昵称:cc
QQ号:1222222 修改成功 与预期结果相同 通过
5.4 测试小结
该系统已经过严苛检测。通过单元测试、子系统检测和系统测试,系统并没有发生致命错误。网页页面表明正常的,控制模块功能正常的,控制模块内部结构融洽恰当。校园二手交易系统恰当完成了预估功能,做到了预期目标。

总 结

系统选用JAVA语言开发,后台应用springboot框架,应用MySQL开展数据储存,功能控制模块的开发选用关键技术进行。对于校园二手物品交易管理分散化、由来广泛的特性,物品分类、物品信息等功能进行设计和完成。学生做为平台的关键客户,如有需要可以申请注册一个账户就可以在平台上购买物品,简单化了许多繁琐与复杂的过程。
该系统具备一定的实用性,程序流程开发获得了较好的实际效果,但因为开发时长比较有限,开发周期时间短,系统也有很多的下一步工作要进行,程序流程中有很多相同编码,不有利于日后的维护保养和移殖,必须除掉重复编码;与此同时数据分析表关联系数较为高,耦合性高,很有可能会减少实际操作数据库查询时的运行效率,必须中后期提升。因为时长缘故,这一系统的功能还没有很全方位,编码也必须持续提升。根据之后的改善,期待可以融合到系统中来做大量的功能,拓宽校园二手交易系统的业务范围。

致 谢

在这毕业设计制作的最后的这段时光里,我的内心有太多的话语想借此来表达。从开始选题到现在自己设计的平台成型这期间的磨砺,巩固了我在大学期间所学到的知识,并且通过不断的查阅资料来获取解决问题的方法,增强了我实际动手能力且培养了我独立解决问题的能力。当然也会遇到那种即使翻阅资料也无法解决的问题,再通过与老师和同学之间的沟通后也顺利的解决了。通过这次毕业设计锻炼你给我明白了作为一个当代大学生,我们需要的不仅仅是简单的编写代码能力,而是要对整个平台的整体把控与设计能力。我会在将来的工作之余不断进行学习,来对自我进行填充,以更热情的心态来面对明天的各种机遇和挑战。为我最热爱的母校争光,为自己翻开辉煌的新篇章。
本系统是在我的指导老师xx老师悉心指导下立完成的,论文的每次改动都离不开老师认真的指点,她在百忙之中给予了我最大的帮助和支持,无私地付出令我颇为感动。在校期间,导师渊博的知识、严谨的治学作风,宽厚的长者风范给我留下深刻的印象,使我受益终生。在此向我的导师表示衷心的感谢!
同时,还要感谢为我提供相关资料的老师、同学、朋友和有关单位。在此向他们表示诚挚的谢意!
随着毕业设计的完成,我真正了解软件的开发和设计,以前的理论知识巩固的全过程,同时也奠定了良好的基础我在今后的工作中。
最后,再一次感谢所有关心、帮助我的老师,同学和朋友!

参考文献

[1]张永强. 计算机软件Java编程特点及其技术分析[J]. 计算机产品与流通,2019(01):23.
[2]王越. JAVA编程语言在计算机软件开发中的应用[J]. 电子技术与软件工程,2019(01):35.
[3]黄文娟. 基于Java和MySQL的公司信息化管理系统设计[J]. 电子设计工程,2019,27(02)
[4]曹文渊. JAVA语言在计算机软件开发中的应用[J]. 电子技术与软件工程,2019(02)
[5]秦楷. JAVA语言特点及其在计算机软件开发中的运用[J]. 中国新通信,2019,21(01)
[6]倪海顺. 计算机软件开发的Java编程语言应用探讨[J]. 信息与电脑(理论版),2019(02)
[7]姚素红. 基于Java的Web应用系统开发模式[J]. 江苏工程职业技术学院学报
[8]吕萱. 计算机软件开发中Java编程语言的应用[J]. 信息与电脑(理论版)
[9]乐勇. 计算机软件开发的JAVA编程语言与实际应用分析[J]. 电子质量,2018(08)
[10]娄豪. 基于计算机程序设计的Java编程语言探究[J]. 信息技术与信息化,2018(07)
[11] 张杰. 基于 React+ springboot的教学系统设计与实现[D]. 山东师范大学, 2019.
[12] 王晓洁, 秦冰峰. 基于springboot框架的信息管理系统的设计与实现[J].2018, 12.
[13]Abbas Mr Ansar,Eliyana Prof Anis,Ekowati Dr Dian,Saud Mr Muhammad,Raza Mr Ali,Wardani Ms Ratna. Data set on coping strategies in the digital age: The role of psychological well-being and social capital among university students in Java Timor, Surabaya, Indonesia.[J]. Data in brief,2020,30.
[14]Patrícia Amorim,Pedro Sousa,Ernesto Jardim,Manuela Azevedo,Gui M. Menezes. Length-frequency data approaches to evaluate snapper and grouper fisheries in the Java Sea, Indonesia[J]. Fisheries Research,2020,229.
[15]Mr. Ansar Abbas,Prof. Anis Eliyana,Dr. Dian Ekowati,Mr. Muhammad Saud,Mr. Ali Raza,Ms. Ratna Wardani. Data set on coping strategies in the digital age: The role of psychological well-being and social capital among university students in Java Timor, Surabaya, Indonesia[J]. Data in Brief,2020,30.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/463109.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

引领人工智能时代的应用安全

当生成式人工智能开始展现其编程能力时,开发人员自然会求助于它来帮助他们高效地编写代码。但随着大量人工智能生成的代码首次进入代码库,安全领导者现在正面临着人工智能对整体安全态势的潜在影响。 无论是人工智能被用来将恶意代码插入开源项目&#…

自定义协议

应用层 有许多现成的协议(HTTP协议做网站必备),也有许多需要程序员自定义的协议. 1.自定义协议 自定义协议: 1.明确传递的信息是什么 2.约定好信息按照什么样的格式来组织成二进制字符串 举个例子: 当我们点外卖时,打开软件,会显示商家列表,列表中有很多项,每一项都包含了一…

SQLiteC/C++接口详细介绍之sqlite3类(十四)

返回目录:SQLite—免费开源数据库系列文章目录 上一篇:SQLiteC/C接口详细介绍之sqlite3类(十三) 下一篇:SQLiteC/C接口详细介绍之sqlite3类(十五) 43.sqlite3_preupdate_hook sqlite3_preup…

ClickHouse:一款高效且强大的列式数据库管理系统

ClickHouse是一款开源的列式数据库管理系统,专为大规模数据仓库和数据分析应用而设计。它允许用户快速地存储和处理海量数据,同时提供了简单易用的SQL接口。本文将介绍ClickHouse的概念、技术原理以及使用案例,并探讨其优势和挑战。 一、引言…

【leetcode热题】 分数到小数

给定两个整数,分别表示分数的分子 numerator 和分母 denominator,以 字符串形式返回小数 。 如果小数部分为循环小数,则将循环的部分括在括号内。 如果存在多个答案,只需返回 任意一个 。 对于所有给定的输入,保证 …

数字电子技术实验(五)

单选题 1.基本RS触发器(与非门组成)的状态是哪一个端口的状态? 答案:C 评语:10分 单选题 2. D触发器(74LS 74)状态方程的成立条件? A. CP端口高电平。 B. CP端口低电平。 C. C…

C#操作MySQL从入门到精通(4)——连接MySQL数据库

前言 我们创建好数据库、建立好数据库的表以后,我们就需要访问数据库了,比如将数据插入数据库的某张表中等一系列操作,在进行这些操作之前我们需要连接上数据库,本文就是详细讲解如何连接MySQL数据库的。 1、使用Navicat Premiu…

Visual Studio项目模板的创建与使用

Visual Studio项目模板的创建、使用、删除 创建模板项目模板的使用模板的删除 创建模板 点击项目,点击导出模板 选择你要创建哪个项目的项目模板,点击下一步 输入你的模板名称并添加模板说明,方便记忆 项目模板的使用 点击创建新项目 输入刚刚…

Linux-centos如何搭建yum源仓库

1.本地搭建(无需连接外网) 1.1检查网络配置,及网络连接 打开虚拟机,点击【编辑——虚拟网络编辑器】 点击【仅主机模式】查看子网段是否和局内IP匹配 进入局内,查看网络IP是否在你上述设置的网段内,如果不…

MyBatis plus自动生成代码

1.pom文件配置 <dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.5.3</version> </dependency> <dependency><groupId>com.baomidou</groupId>…

VLC抓取m3u8视频

前言 最近想看一些网络视频&#xff0c;但是很多时候网页上是m3u8推流的&#xff0c;如果在线看&#xff0c;速度又慢&#xff0c;所以就想下载下来&#xff0c;就想到了VLC的推流&#xff0c;转换能力&#xff0c;查阅资料&#xff0c;加上实践&#xff0c;总结心得。 设置中…

<Linux> 线程的同步与互斥

目录 前言&#xff1a; 一、资源共享问题 &#xff08;一&#xff09;多线程并发访问 &#xff08;二&#xff09;临界资源与临界区 &#xff08;三&#xff09;“锁” 是什么 二、多线程抢票场景 &#xff08;一&#xff09;并发抢票 &#xff08;二&#xff09;并发访…

flink1.18.0 自定义函数 接收row类型的参数

比如sql中某字段类型 array<row<f1 string,f2 string,f3 string,f4 bigint>> 现在需要编写 tableFunction 需要接受的参数如上 解决方案 用户定义函数|阿帕奇弗林克 --- User-defined Functions | Apache Flink

React 实现下拉刷新效果

简介 本文基于react实现下拉刷新效果&#xff0c;在下拉的时候会进入loading状态。 实现效果 效果如上图所示&#xff0c;在下拉到底部时候&#xff0c;会出现loading条&#xff0c;在处理完成后loading条消失。 具体代码 布局 & 逻辑 import {useRef, useState} from …

基于Java+Springmvc+vue+element实现高校心理健康系统详细设计和实现

基于JavaSpringmvcvueelement实现高校心理健康系统详细设计和实现 博主介绍&#xff1a;多年java开发经验&#xff0c;专注Java开发、定制、远程、文档编写指导等,csdn特邀作者、专注于Java技术领域 作者主页 央顺技术团队 Java毕设项目精品实战案例《1000套》 欢迎点赞 收藏 ⭐…

Docker 笔记(五)--链接

这篇笔记记录了Docker 的Link。 官方文档&#xff1a; Legacy container links - Communication across links 目录 参考Legacy container linksConnect using network port mappingConnect with the linking systemThe importance of naming Communication across linksEnviro…

java多线程学习(二)

多线程学习&#xff08;一&#xff09;&#xff1a;http://t.csdnimg.cn/o3ygn 目录 一、线程安全 二、线程同步 三、加锁的实现方式一&#xff1a;同步代码块 四、加锁的实现方式二&#xff1a;同步方法 五、同步方法和同步代码块的比较 六、加锁的实现方式三&#xff…

zookeeper快速入门一:zookeeper安装与启动

本文是zookeeper系列之快速入门中的第一篇&#xff0c;欢迎大家观看与指出不足。 写在前面&#xff1a; 不影响教程&#xff0c;笔者安装zookeeper用的是WSL(windows下的linux子系统&#xff09;&#xff0c;当然你想直接在windows上用zookeeper也是可以的。 如果你也想用ws…

全国农产品价格分析预测可视化系统设计与实现

全国农产品价格分析预测可视化系统设计与实现 【摘要】在当今信息化社会&#xff0c;数据的可视化已成为决策和分析的重要工具。尤其是在农业领域&#xff0c;了解和预测农产品价格趋势对于农民、政府和相关企业都至关重要。为了满足这一需求&#xff0c;设计并实现了全国农产…

向量相似性度量的常用方法

向量相似性度量的常用方法 0. 引言1. 欧氏距离(Euclidean distance)2. 余弦相似度(Cosine similarity)3. 汉明距离(Hamming distance)4. 点积相似度 (Dot Product Similarity)5. 曼哈顿距离 (Manhattan Distance) 0. 引言 今天花时间学习学习向量相似性度量的常用方法&#xf…
最新文章