基于springboot的智慧生活商城系统的设计与实现

本文探讨了智慧生活商城系统的设计,基于Java和SpringBoot框架,利用MySQL数据库。系统实现了商品管理、订单处理等功能,强调了易用性、安全性和数据准确性。管理员和用户界面设计合理,便于操作且数据可控可靠。
摘要由CSDN通过智能技术生成

摘 要

计算机网络发展到现在已经好几十年了,在理论上面已经有了很丰富的基础,并且在现实生活中也到处都在使用,可以说,经过几十年的发展,互联网技术已经把地域信息的隔阂给消除了,让整个世界都可以即时通话和联系,极大的方便了人们的生活。所以说,智慧生活商城系统用计算机技术来进行设计,不仅在管理方面更加的系统化,操作性强,最重要的是关于数据的保存和使用都能节约大量的时间,该系统非常的好用。
智慧生活商城系统管理数据的工具是MySQL,编码的语言是Java,运用的框架是Spring Boot框架。该系统可以实现商品管理,商品留言管理,商品退货管理,商品订单管理,公告管理,用户管理,商品收藏管理等功能。
智慧生活商城系统不仅能让操作人员使用更加地方便,并且设计的也很合理,能有效的避免误操作,让数据在录入的环节就符合设计需要,极大的规避了源头性的输入误差,顺利的让数据变得更加可控并且可靠,让出错的几率降到最低。

关键词:智慧生活商城系统;商品;订单

Abstract

Computer networks have been developed for decades, and they have a rich theoretical foundation and are used everywhere in real life. It can be said that after decades of development, Internet technology has transformed regional information. The estrangement between the two has been eliminated, allowing the whole world to communicate and contact in real time, which greatly facilitates people’s lives. Therefore, the smart life mall system is designed with computer technology. It is not only more systematic in management, but also has strong operability. The most important thing is that the storage and use of data can save a lot of time. The system is very easy to use. .
The data management tool of the Smart Life Mall system is MySQL, the coding language is Java, and the framework used is the Spring Boot framework. The system can realize commodity management, commodity message management, commodity return management, commodity order management, announcement management, user management, commodity collection management and other functions.
The smart life mall system not only makes it more convenient for operators to use, but also has a very reasonable design, which can effectively avoid misoperation, make the data meet the design needs in the input process, and greatly avoid the source input errors. Smoothly make the data more controllable and reliable, minimizing the chance of errors.
Key Words:Smart Life Mall System; Commodities; Orders

目 录

1 绪论 1
1.1 选题背景 1
1.2 选题意义 1
1.3 研究内容 2
2 系统开发技术 3
2.1 MySQL数据库 3
2.2 IDEA简介 3
2.3 Spring Boot框架 4
2.4 Vue框架 4
3 系统分析 5
3.1 可行性研究 5
3.1.1 经济可行性 5
3.1.2 时间可行性 5
3.1.3 操作可行性 5
3.2 系统性能分析 6
3.2.1 系统的安全性 6
3.2.2 系统的易用性 6
3.2.3 系统的健壮性 6
3.3 系统流程分析 7
3.4 系统功能分析 9
4 系统设计 12
4.1 系统设计原则 12
4.2 功能模块设计 13
4.3 数据库设计 14
4.3.1 数据库E-R图 15
4.3.2 数据库表结构 17
5 系统实现 22
5.1 管理员功能实现 22
5.1.1 会员等级管理 22
5.1.2 商品管理 22
5.1.3 商品评价管理 23
5.1.4 商品订单管理 23
5.1.5 商品退货管理 24
5.2 用户功能实现 24
5.2.1 商品信息 24
5.2.2 确认下单 25
5.2.3 商品订单 25
5.2.4 购物车 26
5.2.5 商品退货管理 27
6 系统测试 28
6.1 功能测试 28
6.2 可用性测试 28
6.3 测试结果分析 29
结 论 30
参考文献 32
致 谢 33

1 系统设计

系统在设计的过程中,必然要遵循一定的原则才可以,胡乱设计是不可取的。首先用户在使用过程中,能够直观感受到功能操作的便利性,符合正常思维逻辑的操作,这才是系统好用的一个开端,给使用者第一印象就是这个系统设计的相当不错。
4.1 系统设计原则
系统遵循设计原则进行开发,会有很多可以预料到的好处,只要遵循了设计原则,那么开发出来的系统必然是有质量保证的。
首先第一条原则就是安全性原则:程序必须设定角色管理,不同的角色有不同的功能模块,不同的角色登录都需要输入相对应的账号和密码,否则不允许进行操作相对应的权限。每个用户登录只能修改自己的密码,不需要对别的账号进行密码或者其他资料的修改,否则就违背了安全性原则的设定。
其次第二条原则就是易用性原则:符合安全性只是功能的符合,不代表操作就符合,所以要设定易用性原则。易用性原则就是规定程序符合操作流程,正常人的思维定向为基础,在不违背程序运行逻辑定义的情况下,必须使用简单,操作规范,让每个用户使用起来都能看到页面,就能感知功能模块的作用,短时间的就能使用程序,达到易用效果。
再次第三条原则就是实用性原则:实用性代表着花里胡哨的功能必须抛弃,尽量符合数据处理的简洁性,不仅需要这样进行设定,还需要有预知性,系统后期可能会出现的功能模块尽量要解耦,与程序设定要模块化体现,这样才能达到扩展性。
第四条原则就是准确性原则:准确性原则的唯一定义就是准确,包含数据输入格式的准确,数据处理的准确,以及数据存储的准确。程序里面关于数据准确才有存在的意义,如果一堆不相干的数据存在是没有任何用处的,甚至会产生各种问题,所以必须要保证数据的准确性。
第五条原则是易维护原则:易维护代表着程序运行必须是可控的状态,如果不可控出现各种问题,那么所有的工作都是空谈。程序开发中对于各种程序判定异常,必须有统一的处理模式,异常是程序开发中不可避免的,但是可以对出现的异常进行抛出,有助于程序异常处理的复盘,只要每个异常都能定位准确,那么代表程序设计是趋于完美的,维护起来会更加的方便,只要有助于程序维护的都必须给予支持。
4.2 功能模块设计
对管理员具体功能的设计结果将以图4.1所示的管理员功能结构图来进行体现。管理员对于智慧生活商城系统操作的功能包括对公告,用户信息,商品信息等进行增删改查,同时可以回复用户对商品的评价,以及管理商品订单,商品留言,商品退货等信息。
在这里插入图片描述

图4.1 管理员功能结构图
对用户具体功能的设计结果将以图4.2所示的用户功能结构图来进行体现。用户对于智慧生活商城系统操作的功能包括在前台购买商品,管理收货地址,管理购买的商品信息,查看公告,管理购物车,对需要退货的订单商品申请退货等。
在这里插入图片描述

图4.2 用户功能结构图
4.3 数据库设计
用户通过系统的功能操作来进行数据交互,包括数据的添加,数据的更新,数据的删除,数据的查询等基本功能操作,表面上虽然是操作系统界面提供的功能,但是实际上系统的这些数据是在数据库当中进行访问与操作的。目前市场上可供选择的存储数据的数据库有很多,除了简单版的Access之外,还有SQL Server,DB2,Informix,MySQL等关系型数据库可供选择,由于关系型数据库具有固定的表结构,以及对数据一致性要求比较强,所以相比没有固定表结构以及具有灵活的数据格式的非关系型数据库而言,在程序配套数据库的选择中,关系型数据库的使用率更高。本系统选择MySQL来存放数据,其相关理论以及技术在经过了很长时间的发展之后,变得非常成熟,各大网络平台都公开分享其开发源码,而且其对计算机的配置要求很低,不需要过多内存进行安装,很符合本系统对于数据库的选择要求。
4.3.1 数据库E-R图
本节需要对系统中存放在数据库中的数据进行充分分析,对数据的实体,实体特征,联系等进行确定,然后通过概念模型的表示方法即E-R图进行表达,在E-R图绘制工具中,选择椭圆,菱形框,矩形等形状表达实体属性,实体间联系,实体这些信息,使用实线段将这些形状进行连接即可。初步完成E-R图之后,需要进行检查,及时进行有误数据的更改,删除实体间存在的冗余联系,删除E-R图中冗余的数据,最终要展示一个内容准确的E-R图。
(1)商品包括的属性有商品照片,商品库存,商品原价等。其属性图如下。
在这里插入图片描述

图4.4 商品实体属性图
(2)商品订单包括的属性有购买数量,订单类型,支付类型等。其属性图如下。
在这里插入图片描述

图4.5 商品订单实体属性图
(3)管理员包括的属性有用户名,角色等。其属性图如下。
在这里插入图片描述

图4.6 管理员实体属性图
(4)用户包括的属性有用户头像,性别,电子邮箱等。其属性图如下。
在这里插入图片描述

图4.7 用户实体属性图
(5)设计的各实体间关系E-R图如下。
在这里插入图片描述

图4.8 实体间关系E-R图
4.3.2 数据库表结构
在指定的数据库里面对数据表进行创建命名,然后设计各个数据表的存储结构,需要对该数据库的操作非常熟悉,并且还需要学习并掌握一定的数据表设计方面的知识,比如数据命名,作为系统的开发人员,为了避免程序运行产生乱码现象以及为了确保系统的正常运行,在对数据表进行命名时,一般都是采用英文名称,同时在对数据表的字段进行编辑时,也是采用英文的方式进行,为了方便今后对数据表的设计内容进行更改或查看,对一些比较重要的字段都会进行中文备注,或者是使用中文进行字段描述。设计期间,也需要对各个字段选择合适的数据类型以及设置匹配的取值范围,当一张数据表设计完成之后,还要对该表的主键进行标注,就是为了确保该数据表的唯一性与独立性。
表4.1 收货地址表
字段 注释 类型 空
id (主键) 主键 int(20) 否
yonghu_id 创建用户 int(20) 否
address_name 收货人 varchar(200) 否
address_phone 电话 varchar(200) 否
address_dizhi 地址 varchar(200) 否
isdefault_types 是否默认地址 int(11) 否
insert_time 添加时间 timestamp 否
update_time 修改时间 timestamp 否
create_time 创建时间 timestamp 否
表4.2 购物车表
字段 注释 类型 空
id (主键) 主键 int(11) 否
yonghu_id 所属用户 int(11) 是
shangpin_id 商品 int(11) 是
buy_number 购买数量 int(11) 是
create_time 添加时间 timestamp 是
update_time 更新时间 timestamp 是
insert_time 创建时间 timestamp 是
表4.3 公告表
字段 注释 类型 空
id (主键) 主键 int(11) 否
gonggao_name 公告名称 varchar(200) 是
gonggao_photo 公告图片 varchar(200) 是
gonggao_types 公告类型 int(11) 否
insert_time 公告发布时间 timestamp 是
gonggao_content 公告详情 text 是
create_time 创建时间 timestamp 是
表4.4 商品表
字段 注释 类型 空
id (主键) 主键 int(11) 否
shangpin_name 商品名称 varchar(200) 是
shangpin_uuid_number 商品编号 varchar(200) 是
shangpin_photo 商品照片 varchar(200) 是
shangpin_types 商品类型 int(11) 是
shangpin_kucun_number 商品库存 int(11) 是
shangpin_price 购买获得积分 int(11) 是
shangpin_old_money 商品原价 decimal(10,2) 是
shangpin_new_money 现价 decimal(10,2) 是
shangpin_clicknum 点击次数 int(11) 是
shangpin_content 商品介绍 text 是
shangxia_types 是否上架 int(11) 是
shangpin_delete 逻辑删除 int(11) 是
create_time 创建时间 timestamp 是
表4.5 商品收藏表
字段 注释 类型 空
id (主键) 主键 int(11) 否
shangpin_id 商品 int(11) 是
yonghu_id 用户 int(11) 是
shangpin_collection_types 类型 int(11) 是
insert_time 收藏时间 timestamp 是
create_time 创建时间 timestamp 是
表4.6 商品评价表
字段 注释 类型 空
id (主键) 主键 int(11) 否
shangpin_id 商品 int(11) 是
yonghu_id 用户 int(11) 是
shangpin_commentback_text 评价内容 text 是
insert_time 评价时间 timestamp 是
reply_text 回复内容 text 是
update_time 回复时间 timestamp 是
create_time 创建时间 timestamp 是
表4.7 商品留言表
字段 注释 类型 空
id (主键) 主键 int(11) 否
shangpin_id 商品 int(11) 是
yonghu_id 用户 int(11) 是
shangpin_liuyan_text 留言内容 text 是
insert_time 留言时间 timestamp 是
reply_text 回复内容 text 是
update_time 回复时间 timestamp 是
create_time 创建时间 timestamp 是

表4.8 商品订单表
字段 注释 类型 空
id (主键) 主键 int(11) 否
shangpin_order_uuid_number 订单号 varchar(200) 是
address_id 收货地址 int(11) 是
shangpin_id 商品 int(11) 是
yonghu_id 用户 int(11) 是
buy_number 购买数量 int(11) 是
shangpin_order_true_price 实付价格 decimal(10,2) 是
shangpin_order_courier_name 快递公司 varchar(200) 是
shangpin_order_courier_number 订单快递单号 varchar(200) 是
shangpin_order_types 订单类型 int(11) 是
shangpin_order_payment_types 支付类型 int(11) 是
insert_time 订单创建时间 timestamp 是
create_time 创建时间 timestamp 是
表4.9 商品退货表
字段 注释 类型 空
id (主键) 主键 int(11) 否
shangpin_tuihuo_uuid_number 退货流水号 varchar(200) 是
shangpin_order_id 商品订单 int(11) 是
yonghu_id 用户 int(11) 是
shangpin_tuihuo_content 退货原因 text 是
insert_time 申请退货时间 timestamp 是
shangpin_tuihuo_courier_name 退货快递公司 varchar(200) 是
shangpin_tuihuo_courier_number 退货单号 varchar(200) 是
shangpin_tuihuo_types 退货状态 int(11) 是
shangpin_tuihuo_yesno_types 审核状态 int(11) 是
shangpin_tuihuo_yesno_text 审核意见 text 是
shangpin_tuihuo_shenhe_time 审核时间 timestamp 是
create_time 创建时间 timestamp 是
表4.10 管理员表
字段 注释 类型 空
id (主键) 主键 bigint(20) 否
username 用户名 varchar(100) 否
password 密码 varchar(100) 否
role 角色 varchar(100) 是
addtime 新增时间 timestamp 否
表4.11 用户表
字段 注释 类型 空
id (主键) 主键 int(11) 否
username 账户 varchar(200) 是
password 密码 varchar(200) 是
yonghu_name 用户姓名 varchar(200) 是
yonghu_phone 用户手机号 varchar(200) 是
yonghu_id_number 用户身份证号 varchar(200) 是
yonghu_photo 用户头像 varchar(200) 是
sex_types 性别 int(11) 是
yonghu_email 电子邮箱 varchar(200) 是
new_money 余额 decimal(10,2) 是
yonghu_sum_jifen 总积分 decimal(10,2) 是
yonghu_new_jifen 现积分 decimal(10,2) 是
huiyuandengji_types 会员等级 int(11) 是
create_time 创建时间 timestamp 是

2 系统实现

下面主要是通过功能实现界面截图的形式,并且运用文字来描述功能实现界面的内容。
5.1 管理员功能实现
5.1.1 会员等级管理
该功能主要用于实现对会员等级基本信息的管理,会员等级管理界面的运行效果见图5.1。在此界面,管理员为不同等级的会员设置不同的折扣,会员等级越高,购物享受的折扣就越多。
在这里插入图片描述

图5.1 会员等级管理界面
5.1.2 商品管理
该功能主要用于实现对商品信息基本信息的管理,商品管理界面的运行效果见图5.2。在此界面,对商品的类型,商品原价,商品库存,商品名称等信息都需要管理员负责添加和修改,同时还需要对商品的库存进行管理,比如增加商品的库存,或者是对商品库存进行减少以及对销量不好的商品进行下架,对新的商品进行上架等操作。
在这里插入图片描述

图5.2 商品管理界面
5.1.3 商品评价管理
该功能主要用于实现对商品评价基本信息的管理,商品评价管理界面的运行效果见图5.3。在此界面,商品的评价内容,以及评价用户和评价的商品等信息都能让管理员查看,同时管理员也能对评价商品的用户进行回复。
在这里插入图片描述

图5.3 商品评价管理界面
5.1.4 商品订单管理
该功能主要用于实现对商品订单基本信息的管理,商品订单管理界面的运行效果见图5.4。在此界面,管理员主要处理已经销售的商品信息,即商品订单信息,管理员需要对用户刚刚支付的商品订单进行及时发货,以及对各个商品订单的更多的详细信息进行认真查看。
在这里插入图片描述

图5.4 商品订单管理界面
5.1.5 商品退货管理
该功能主要用于实现对商品退货基本信息的管理,商品退货管理界面的运行效果见图5.5。在此界面,用户申请退货的信息需要管理员查看之后,进行审核。
在这里插入图片描述

图5.5 商品退货管理界面
5.2 用户功能实现
5.2.1 商品信息
商品信息界面的运行效果见图5.6。在此界面,用户可以查看商品信息界面展示的商品相关信息,以及通过对商品的相关介绍信息来了解商品,用户如果有购买的需求,可以通过立即购买功能立即下单。
在这里插入图片描述

图5.6 商品信息界面
5.2.2 确认下单
确认下单界面的运行效果见图5.7。在此界面,用户不仅需要确认收货地址是否正确,还需要确认需要购买的商品的数量以及商品信息是否正确,最后查看实付金额信息,然后进行下单。
在这里插入图片描述

图5.7 确认下单界面
5.2.3 商品订单
商品订单界面的运行效果见图5.8。在此界面展示的信息都是用户购买商品之后产生的信息,用户不仅可以查看信息,还可以根据自身实际情况对商品订单进行相应操作,包括退款或收货等。
在这里插入图片描述

图5.8 商品订单界面

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值