springboot无人智慧超市管理系统LWPPT源码调试讲解

2 系统开发技术

无人智慧超市管理系统采用B/S(Browser/Server)架构和MVC模型进行设计开发。在B/S架构下,用户在浏览器端进行使用,主要工作通过服务器端进行实现,用户通过网站进行访问大大节约了成本。本系统使用Java等语言同时运用了Springboot框架进行开发,使用MySQL进行数据存储。

2.1 Java技术

Java是一种面向对象的静态式编程语言。Java编程语言具有多线程和对象定向的特点。其特点是根据方案的属性将方案分为几个不同的模块,这些模块是封闭的和多样化的,在申请过程中具有很强的独立性。Java语言在计算机软件开发过程中的运用可以达到交互操作的目的,通过各种形式的交换,可以有效地处理所需的数据,从而确保计算机软件开发的可控性和可见性。开发Java语言时,保留了网络接口,Java保留的缺省网络接口可以与web应用程序编程所依赖的类别库相匹配。为了使Java开发的应用程序更加稳定和强健,Java会自动收集程序中的垃圾,并处理程序中存在的异常。Java语言是日常开发过程中广泛使用的通用基本语言。其中Java语言课程库、句子、语法规则和关键字经常用于计算机软件的开发和编程。

面向对象编程是Java语言最显着的特点。它具有原始接口和补充接口以及继承,不仅可以实现相同类型的单个继承,而且还支持接口之间的多个继承,从而实现类、接口和接口之间以及类和接口之间的有效通信。Java的面向对象特性主要包括三个方面:继承、多态性和封装。封装是Java的核心,可以封装所有数据操作。多态性是指由面向对象行为派生的相关行为。继承作为特殊编程模式有两种类型:父类和子类,这两种类型的属性具有相同的功能和特性。对于父类的属性特性,子类可以实现继承和优化。

2.2 Springboot框架

Spring框架是Java平台上的一种开源应用框架,提供具有控制反转特性的容器。尽管Spring框架自身对编程模型没有限制,但其在Java应用中的频繁使用让它备受青睐,以至于后来让它作为EJB(EnterpriseJavaBeans)模型的补充,甚至是替补。Spring框架为开发提供了一系列的解决方案,比如利用控制反转的核心特性,并通过依赖注入实现控制反转来实现管理对象生命周期容器化,利用面向切面编程进行声明式的事务管理,整合多种持久化技术管理数据访问,提供大量优秀的Web框架方便开发等等。Spring框架具有控制反转(IOC)特性,IOC旨在方便项目维护和测试,它提供了一种通过Java的反射机制对Java对象进行统一的配置和管理的方法。Spring框架利用容器管理对象的生命周期,容器可以通过扫描XML文件或类上特定Java注解来配置对象,开发者可以通过依赖查找或依赖注入来获得对象。Spring框架具有面向切面编程(AOP)框架,SpringAOP框架基于代理模式,同时运行时可配置;AOP框架主要针对模块之间的交叉关注点进行模块化。Spring框架的AOP框架仅提供基本的AOP特性,虽无法与AspectJ框架相比,但通过与AspectJ的集成,也可以满足基本需求。

2.3 MySQL数据库

MySql做为瑞典公司MySql AB开发的中小型开源数据库智能管理系统,具备配备低、低成本、运作速度更快的优势。与此同时,因为社区版的开源系统性,变成了许多网址减少开发成本费的最佳选择。被甲骨文回收后,MySQL也发布了商业版。另外Mysql具有以下特性:

(1)使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性。

(2)为C、C++、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl等多种编程语言提供了API。

(3)采用多线程并行的方法提高了CPU的利用率。

(4)改善算法,有效地提高查询速度。

2.4 B/S结构

B/S结构(Browser/Server,浏览器/服务器模式),是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。客户机上只要安装一个浏览器,如Chrome、Safari、Microsoft Edge、Netscape Navigator或Internet Explorer,服务器安装SQL Server、Oracle、MYSQL等数据库。浏览器通过Web Server同数据库进行数据交互。

2.5 Tomcat服务器

Tomcat服务器属于轻量级应用服务器,在访问用户数量不是很大的中小型应用中经常被使用。Tomcat服务器主要由三个核心组件Web容器、servlet容器、JSP容器组成。其中,Web容器主要用于完成Web服务器的功能,servlet容器主要用于处理servlet代码,JSP容器主要用于将JSP动态网页翻译成servlet代码。Tomcat作为Web服务器和APP容器,其核心功能主要包括负责接受和反馈外部请求的连接器Connector和负责处理请求的容器Container。二者相辅相成,共同构成了基本的Web服务。Tomcat支持管理多个服务。Tomcat因其技术先进、性能也较为稳定,最重要的是因为其价格免费,故而收到了大量Java爱好者的偏爱,成为比较流行的Web应用服务器。


3 系统需求分析

需求分析在系统开发中有着十分重要的作用。软件项目凭借软件工程的思想和步骤可以大大的提高开发效率,缩短软件开发周期,保证了软件项目的质量。需求分析作为软件工程方法中的一步是至关重要的[6]。软件需求工程是一门分析并记录软件需求的学科。需求分析简单的来说就是用户需要什么,系统需要什么,对此进行问题的列举,等级的排列,需要缜密的思分析和大量的调研[7]。

3.1 可行性分析

根据无人智慧超市管理系统的功能,通过对经济可行性、技术可行性和法律可行性分析进行全面的分析,提供准确的可行性依据。以下是本系统的可行性分析:

  1. 经济可行性 就是分析在现有经济情况下能否完成本无人智慧超市管理系统的开发。下面对本系统开发、运行、维护的相关费用评估,以及投入到实际运用中完成无人智慧超市可能费用进行估算。网络资源丰富,本无人智慧超市管理系统只需使用任选一开源服务器即可,此方面无需投入费用。开发阶段,由于本无人智慧超市管理系统不属于大型系统,常规的电脑就可完成开发,不用购置相关硬件设备。软件方面,本无人智慧超市管理系统只需使用网上免费下载的软件即可完成开发,这些软件在使用时简单易懂,无需培训,因此在开发方面也无需投入费用。由于本无人智慧超市管理系统不属于大型系统,运行时候电费可以忽略不记。无人智慧超市管理系统作为自己毕设,由本人开发即可完成,无需人力费用。综上,整个系统开发花费很少,所以本无人智慧超市管理系统在经济上可行。

  2. 技术可行性 本系统的开发使用java作为系统开发的开发语言,开发工具选择 Eclipse,而 B/S架构决定了本系统的兼容性和多用户可操作性,此外选择MySql作为数据库不仅提高了数据安全性更保障了数据的可操作性。

  3. 法律可行性分析

法律可行性分析,即分析本无人智慧超市管理系统是否与各类法律相悖。本无人智慧超市管理系统使用市面开源免费软件开发,且作为个人毕设,无商用,均为本人自主开发,并且页面设计合理,发布的信息要求符合常规。整个系统无抵触法律法规的问题。因此在法律上,本无人智慧超市管理系统可行。

3.2 功能需求分析

无人智慧超市管理系统综合网络空间开发设计要求。目的是将无人智慧超市通过网络平台将传统管理方式转换为在网上管理,完成无人智慧超市的方便快捷、安全性高障,目标明确。无人智慧超市管理系统可以将功能划分为管理员的使用功能和用户使用的功能。

(1)管理员的功能是最高的,可以对系统所在功能进行查看,修改和删除,包括用户功能。管理员用例如下:

图3-1管理员用例图

(2)用户关键功能包含首页、商品信息、超市资讯、购物车、个人中心等进行详细操作。用户用例如下:

图3-2 用户用例图

3.3 系统流程分析

3.3.1系统开发流程图:

图3-3 系统开发流程图

3.3.2管理员模块总体流程图:

图3-4 管理员模块总体流程图

3.3.3无人智慧超市流程图:

图3-5 无人智慧超市流程图


4 系统设计

4.1 功能模块设计

无人智慧超市管理系统按照权限的类型进行划分,分为管理员和用户两个模块。系统实现个人中心、用户管理、商品分类管理、商品信息管理、仓储信息管理、系统管理、订单管理等功能进行操作,增强了使用者的操作体验。管理员模块主要针对整个系统的管理进行设计,提高了管理的效率和标准。系统的总体模块设计如下图所示:

图4-1 系统总体模块设计

4.2 系统数据库设计

4.2.1 数据库系统

本系统采用MySQL来进行数据库的管理。MySQL数据库具有体积小、速度快、成本低等优点。具备同时处理数千万条记录,实现大型数据库的高并发读写和高效读写需求[9]。

4.2.2 数据库概念设计

概念模型用于对信息世界建模,并与指定的数据库管理系统分离。它有助于将真实世界的事物抽象为适合于数据库管理系统的数据库模型。人们倾向于将现实世界抽象为信息世界,再把信息世界变成机器世界。也就是说,将现实世界的目标抽象成独立于专用计算机软件和专用数据库管理系统的信息结构的数据模型,然后将物理模型转化为适合电子计算机的数据库管理系统。事实上,数据模型是从真实世界到机器世界的中间层。

信息世界的基本要素包括实体和关联。现实存在且彼此可区别的事物称为实体。实体可以是实际的人、事或物,还可以是抽象化的概念或联络。以下是对部分主要的关键实体如下:

订单实体属性如图4-2所示。

图4-2订单实体属性图

超市资讯实体属性如图4-3所示。

图4-3超市资讯实体属性图

商品信息评论实体属性如图4-4所示。

图4-4商品信息评论实体属性图

用户实体属性如图4-5所示。

图4-5用户实体属性图

地址实体属性如图4-6所示。

图4-6地址实体属性图

4.2.3 数据表设计

本设计根据数据表管理系统的具体流程进行管理,方便用户对数据的添加、删除、修改和查询等操作。

4.2.4 数据表的建立

系统采用Navicat Premium对数据库进行操作,数据库管理操作简单,数据处理能力强。数据表建立如下:

表4-1:订单

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

orderid

varchar

200

订单编号

tablename

varchar

200

商品表名

shangpinxinxi

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

物流

goodtype

varchar

200

商品类型

表4-2:超市资讯

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

title

varchar

200

标题

introduction

longtext

4294967295

简介

picture

longtext

4294967295

图片

content

longtext

4294967295

内容

表4-3:商品信息评论表

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

refid

bigint

关联表id

userid

bigint

用户id

avatarurl

longtext

4294967295

头像

nickname

varchar

200

用户名

content

longtext

4294967295

评论内容

reply

longtext

4294967295

回复内容

表4-4:配置文件

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

name

varchar

100

配置参数名称

value

varchar

100

配置参数值

表4-5:购物车表

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

tablename

varchar

200

商品表名

shangpinxinxi

userid

bigint

用户id

goodid

bigint

商品id

goodname

varchar

200

商品名称

picture

longtext

4294967295

图片

buynumber

int

购买数量

price

float

单价

discountprice

float

会员价

goodtype

varchar

200

商品类型

表4-6:用户表

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

username

varchar

100

用户名

password

varchar

100

密码

role

varchar

100

角色

管理员

addtime

timestamp

新增时间

CURRENT_TIMESTAMP

表4-7:仓储信息

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

shangpinbianhao

varchar

200

商品编号

shangpinmingcheng

varchar

200

商品名称

shangpintupian

longtext

4294967295

商品图片

shangpinfenlei

varchar

200

商品分类

pinpai

varchar

200

品牌

shengchanriqi

date

生产日期

shengchanchangjia

varchar

200

生产厂家

alllimittimes

int

上架数量

表4-8:用户

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

yonghuzhanghao

varchar

200

用户账号

mima

varchar

200

密码

yonghuxingming

varchar

200

用户姓名

touxiang

longtext

4294967295

头像

xingbie

varchar

200

性别

nianling

int

年龄

shouji

varchar

200

手机

money

float

余额

0

表4-9: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

表4-10:地址

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

userid

bigint

用户id

address

varchar

200

地址

name

varchar

200

收货人

phone

varchar

200

电话

isdefault

varchar

200

是否默认地址[是/否]

表4-11:关于我们

字段名称

类型

长度

字段说明

主键

默认值

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

表4-12:收藏表

字段名称

类型

长度

字段说明

主键

默认值

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

备注

表4-13:商品信息

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

shangpinbianhao

varchar

200

商品编号

shangpinmingcheng

varchar

200

商品名称

shangpintupian

longtext

4294967295

商品图片

shangpinfenlei

varchar

200

商品分类

pinpai

varchar

200

品牌

shengchanriqi

date

生产日期

onelimittimes

int

单限

alllimittimes

int

库存

thumbsupnum

int

0

crazilynum

int

0

clicktime

datetime

最近点击时间

price

float

价格

表4-14:商品分类

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

shangpinfenlei

varchar

200

商品分类


5 系统实现

5.1系统功能实现

当人们打开系统的网址后,首先看到的就是首页界面。在这里,人们能够看到系统的导航条,通过导航条导航进入各功能展示页面进行操作。如图5-1所示:

图5-1 系统首页界面

系统注册:在注册页面输入用户注册信息进行注册操作,系统注册页面如图5-2所示:

图5-2系统注册页面

商品信息:在商品信息列表页面的输入栏中输入商品名称、商品分类和价格进行查询,可以查看到商品信息详细,并根据需要对商品信息详情信息进行添加到购物车、立即购买、收藏、赞一下、踩一下或评论等操作;如图5-3所示:

图5-3商品信息详细界面

个人中心:在个人中心页面通过填写个人详细信息进行信息更新操作,还可以对我的订单和我的收藏进行详细操作;如图5-4所示:

图5-4个人中心详细界面

5.2后台管理员模块实现

后台管理员登录,在登录页面选择需要登录的角色,在正确输入用户名和密码后,进入操作系统进行操作;如图5-5所示。

图5-5 后台管理员登录界面

管理员进入主页面,主要功能包括对个人中心、用户管理、商品分类管理、商品信息管理、仓储信息管理、系统管理、订单管理等进行操作。管理员主界面如图5-6所示:

图5-6管理员主界面

管理员点击用户管理。在用户页面输入用户账号可以查询、新增或删除用户列表,并根据需要对用户详细信息进行查看详情、修改或删除操作,如图5-7所示:

图5-7用户管理界面

管理员点击商品分类管理。在商品分类页面输入商品分类可以查询、新增或删除商品分类列表,并根据需要对商品分类详细信息进行修改或删除操作,如图5-8所示:

图5-8商品分类管理界面

管理员点击商品信息管理。在商品信息页面输入商品名称、商品分类和价格可以查询、新增或删除商品信息列表,并根据需要对商品信息详细信息进行查看详情、仓储信息、修改、查看评论或删除操作,如图5-9所示:

图5-9商品信息管理界面

管理员点击仓储信息管理。在仓储信息页面输入商品名称可以查询、新增或删除仓储信息列表,并根据需要对仓储信息详细信息进行查看详情、修改或删除操作,如图5-10所示:

图5-10仓储信息管理界面

管理员点击系统管理。在超市资讯页面输入标题可以查询、新增或删除超市资讯列表,并根据需要对超市资讯详细信息进行查看详情、修改或删除操作,还可以对关于我们、轮播图管理和系统简介等页面进行详细操作;如图5-11所示:

图5-11系统管理界面

管理员点击订单管理。在已支付订单页面选择订单编号和商品名称可以查询或删除已支付订单列表,并根据需要对已支付订单详细信息进行查看详情、核销或删除操作,还可以对未支付订单,已完成订单,已取消订单和已退款订单等进行详细操作;如图5-12所示:

图5-12订单管理界面


6 系统测试

6.1 测试的目的和目标

完成程序的代码编写不代表着开发设计工作全部完成。相反,为了使应用系统能够正常使用,必须对程序进行测试。测试的主要目的在于能够及时发现程序编写中的种种错误,通过设计好的测试用例来发现可能的错误,通过分析错误的位置以及其对程序其他部分的可能影响来判断程序设计中的主要漏洞和不足之处,并尽量用最短的时间予以改正,从而达到使得程序更完整、更完善、更接近最初设计开发初衷的目标。

基于此,在完成无人智慧超市管理系统的本应用的程序设计之后,对系统的测试就显得尤为必要。测试将采用测试用例的方式进行。测试用例是针对某一特定的软件系统进行性能测试的操作的描述,它的内容包括测试目标、环境、数据、步骤、预期、结果等等,最终的目的是用于核实开发出来的功能能否满足软件的特定需求。测试用例所包含有四个主要内容:用例标题、前置条件、测试步骤和预期结果。其中,用例标题主要描述测试软件的某项功能,前置条件顾名思义是指用例需要满足的条件,测试步骤主要描述用例的操作步骤,二预期结果指测试结果是否符合开发设计的预期要求。

本次测试将采用黑盒测试的方式进行。黑盒测试是着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。

6.2 测试内容

6.2.1登录测试

测试编号

1.1

测试用例

用户正确输入账号和密码,登录系统

测试条件

进入登陆界面,登录

测试过程

用户输入自己的账号用户正确输入密码用户点击登录按钮

期望结果

点击登录按钮后,进入系统,登录成功

实际结果

输入账号和密码后,点击登录,成功进入系统

结论

测试结果符合预期

测试编号

1.2

测试用例

用户正确输入账号,但输入错误的密码,登录系统

测试条件

进入登陆界面,登录

测试过程

用户输入自己的账号用户输入错误的密码用户点击登录按钮

期望结果

点击登录按钮后,因密码错误而无法正常登录

实际结果

输入账号和密码后,点击登录,提示账号或密码输入错误,重新输入

结论

测试结果符合预期

6.2.2信息修改测试

测试编号

2.1

测试用例

用户登陆系统,修改自己的个人信息

测试条件

正确登陆系统

测试过程

用户登陆系统用户选择修改个人信息用户修改至少一项个人信息并保存

期望结果

保存后信息正常显示

实际结果

用户修改的个人信息正常更新保存

结论

测试结果符合预期

测试编号

2.2

测试用例

用户登陆系统,修改商品信息信息

测试条件

正确登陆系统

测试过程

用户登陆系统用户选择新增商品信息信息用户详情填写商品信息信息

期望结果

保存后信息正常显示

实际结果

用户上传的信息正常更新保存

结论

测试结果符合预期

6.3 测试评价

经过上述测试,系统最基本的功能达到了预期目标。但由于缺乏编程经验,更深层次的功能可能仍然存在错误,需要在日后的进一步测试和维护中发现。


结 论

本文介绍了一个使用方便,界面清晰的无人智慧超市管理系统的设计与实现。本系统已经实现了对无人智慧超市信息的综合管理,系统为无人智慧超市节省了精力和时间,简化了无人智慧超市中重要环节的管理难度,丰富了信息化的建设,符合信息时代的发展趋势。存储在系统中的数据也将对未来无人智慧超市的发展提供数据支撑。

本文实现的系统具有功能实用、界面简单清晰、操作简单、安全稳定的优点。在设计实现上本系统采用了SPRINGBOOT快速开发接口,提升了开发效率、同时也保障了后续维护,易于扩展。使用MySQL轻量级数据库大幅度提升查询性能。这时对系统的要求也将越来越高,这要求我们不断探索新的需求,开发新的技术,与时俱进,实现更完善更智能的无人智慧超市管理系统。

  • 42
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

源码V+zmm10134

感谢友友们的点赞关注和评论

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值