Springboot+vue图书商城购物系统(源码+L文+说明文档)
目录
4 系统设计
4.1 系统概述
本系统经典的采用B/S架构(浏览器、服务器),是采用浏览器和服务器架构模式设计的架构,随着Internet技术的兴起,对C/S架构模式的一种改变升级或改进。目前,在该架构的应用下,用户通过WWW.xxx.com浏览器实现数据访问和操作。一小部分事务逻辑在前端页面实现,主要业务事务逻辑在服务器端实现,形成三层结构MVC。B/S架构是Web兴起后主流的网络架构设计模式。Web浏览器是目前最重要的客户端应用软件之一。该模式形成了一个统一的客户端,将系统功能的所有核心部分集中在服务器上实现。简化系统开发和维护。只要客户端安装了浏览器就可以操作,服务器端安装了Oracle、MySQL、Sybase等数据库。浏览器通过Web Server和数据库获取数据。简化客户端计算机的负载,降低系统维护和升级的成本和工作量,降低用户的成本。
4.2系统层次架构
系统根据以上的逻辑结构,分为3层结构。
系统按照处理层次从上至下依次划分为
(1)展现层:
它处理与用户的交互界面、数据传输,信息收集等。
(2)应用层:
它是系统功能逻辑处理层,主要处理展现层发出的请求,并将处理结果返回展现层。
(3)核心层:
它是系统运行核心及应用层的基础,提供应用层权限控制、数据读取等。
4.3系统功能详情设计
系统主要设计采用Java语言开发、采用springboot框架、MVC三层分层思想模式、java为后台框架、数据库框架采用mybatis、前端采用vue、elementui html、css等关键技术。
系统分为多个角色、分别是普通用户和管理员
主要模块设计如下:
普通用户:
管理员:
4.4主流程描述
五、系统实现
5.1用户登录:
分为管理员和普通用户进行登录、也可以在这里进行用户注册。
5.2 用户注册
5.3前端首页
用户登录后、可以查看新上架的书籍和新闻等书籍、点击进入详情查看购买书籍、加入购物车以及对自己感兴趣的图书书籍收藏等操作和查看修改个人信息等。
5.4管理员首页
图书商城系统管理员登录后主要有如下功能模块:用户个人信息管理、修改密码、图书分类管理、图书商品详情管理、首页轮播图管理、新闻资讯管理、书籍列表管理、订单信息管理和发货信息管理等。
5.5书籍分类管理
5.6新闻资讯管理
添加和修改:
5.7书籍列表管理
:管理员可以添加、修改、删除和查询书籍列表信息
5.8书籍详情
5.9订单管理
管理员可以查看订单信息、对订单状态进行修改、以及发货状态等操作 。
5.10发货信息管理
5.11 前端书籍详情页
书籍详情页:查看书籍详情信息、可以加入购物车和收藏等查看、也可以查看用户评论信息等
5.12填写购物车信息等
5.13我的个人中心
六、数据库主表设计
6.1数据库表设计
数据库采用mysql5版本、满足数据库设计三范式。
编码采用utf8 -- UTF-8 Unicode
排序规则采用utf8_general_ci
6.2数据库三范式要求:
一、第一范式
1NF是对属性的原子性,要求属性具有原子性,不可再分解;
二、第二范式
2NF是对记录的唯一性,要求记录有唯一标识,即实体的唯一性,即不存在部分依赖;
三、第三范式
3NF是对字段的冗余性,要求任何字段不能由其他字段派生出来,它要求字段没有冗余,即不存在传递依赖;
6.3数据库表ER图
6.4部分表设计
表config (配置文件)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 说明 |
1 | id | bigint | 20 | 0 | N | Y |
|
2 | name | varchar | 100 | 0 | N | N | 配置参数名称 |
3 | value | varchar | 100 | 0 | Y | N | 配置参数值 |
表dingdanxinxi (订单信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 说明 |
1 | id | bigint | 20 | 0 | N | Y |
|
2 | addtime | timestamp | 19 | 0 | N | N |
|
3 | dingdanbianhao | varchar | 200 | 0 | Y | N | 订单编号 |
4 | shujimingcheng | varchar | 200 | 0 | Y | N | 书籍名称 |
5 | fenlei | varchar | 200 | 0 | Y | N | 分类 |
6 | fengmian | varchar | 200 | 0 | Y | N | 封面 |
7 | jiage | varchar | 200 | 0 | Y | N | 价格 |
8 | shuliang | int | 10 | 0 | Y | N | 数量 |
9 | zongjiage | varchar | 200 | 0 | Y | N | 总价格 |
10 | xiadanriqi | date | 10 | 0 | Y | N | 下单日期 |
11 | beizhu | varchar | 200 | 0 | Y | N | 备注 |
12 | yonghuming | varchar | 200 | 0 | Y | N | 用户名 |
13 | shouji | varchar | 200 | 0 | Y | N | 手机 |
14 | dizhi | varchar | 200 | 0 | Y | N | 地址 |
15 | ispay | varchar | 200 | 0 | Y | N | 是否支付 |
表discussshuji (书籍评论表)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 说明 |
1 | id | bigint | 20 | 0 | N | Y |
|
2 | addtime | timestamp | 19 | 0 | N | N |
|
3 | refid | bigint | 20 | 0 | N | N | 关联表id |
4 | content | varchar | 200 | 0 | N | N | 评论内容 |
5 | userid | bigint | 20 | 0 | N | N | 用户id |
表fahuoxinxi (发货信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 说明 |
1 | id | bigint | 20 | 0 | N | Y |
|
2 | addtime | timestamp | 19 | 0 | N | N |
|
3 | dingdanbianhao | varchar | 200 | 0 | Y | N | 订单编号 |
4 | shujimingcheng | varchar | 200 | 0 | Y | N | 书籍名称 |
5 | fengmian | varchar | 200 | 0 | Y | N | 封面 |
6 | shuliang | varchar | 200 | 0 | Y | N | 数量 |
7 | fahuoriqi | date | 10 | 0 | Y | N | 发货日期 |
8 | yonghuming | varchar | 200 | 0 | Y | N | 用户名 |
9 | shouji | varchar | 200 | 0 | Y | N | 手机 |
10 | dizhi | varchar | 200 | 0 | Y | N | 地址 |
11 | dingdanzhuangtai | varchar | 200 | 0 | N | N | 订单状态 |
表news (新闻资讯)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 说明 |
1 | id | bigint | 20 | 0 | N | Y |
|
2 | addtime | timestamp | 19 | 0 | N | N |
|
3 | title | varchar | 200 | 0 | N | N | 标题 |
4 | picture | varchar | 200 | 0 | N | N | 图片 |
5 | content | longtext | 2147483647 | 0 | N | N | 内容 |
表shuji (书籍)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 说明 |
1 | id | bigint | 20 | 0 | N | Y |
|
2 | addtime | timestamp | 19 | 0 | N | N |
|
3 | shujibianhao | varchar | 200 | 0 | Y | N | 书籍编号 |
4 | shujimingcheng | varchar | 200 | 0 | N | N | 书籍名称 |
5 | fenlei | varchar | 200 | 0 | N | N | 分类 |
6 | fengmian | varchar | 200 | 0 | Y | N | 封面 |
7 | zuozhe | varchar | 200 | 0 | Y | N | 作者 |
8 | chubanshe | varchar | 200 | 0 | Y | N | 出版社 |
9 | jiage | int | 10 | 0 | Y | N | 价格 |
10 | shuliang | int | 10 | 0 | Y | N | 数量 |
11 | shujijieshao | longtext | 2147483647 | 0 | Y | N | 书籍介绍 |
12 | clicktime | datetime | 19 | 0 | Y | N | 最近点击时间 |
13 | clicknum | int | 10 | 0 | Y | N | 点击次数 |
表shujifenlei (书籍分类)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 说明 |
1 | id | bigint | 20 | 0 | N | Y |
|
2 | addtime | timestamp | 19 | 0 | N | N |
|
3 | fenlei | varchar | 200 | 0 | N | N | 分类 |
表storeup (收藏表)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 说明 |
1 | id | bigint | 20 | 0 | N | Y |
|
2 | addtime | timestamp | 19 | 0 | N | N |
|
3 | userid | bigint | 20 | 0 | N | N | 用户id |
4 | refid | bigint | 20 | 0 | Y | N | 收藏id |
5 | tablename | varchar | 200 | 0 | Y | N | 表名 |
6 | name | varchar | 200 | 0 | N | N | 收藏名称 |
7 | picture | varchar | 200 | 0 | N | N | 收藏图片 |
表token (token表)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 说明 |
1 | id | bigint | 20 | 0 | N | Y |
|
2 | userid | bigint | 20 | 0 | N | N | 用户id |
3 | username | varchar | 100 | 0 | N | N | 用户名 |
4 | tablename | varchar | 100 | 0 | Y | N | 表名 |
5 | role | varchar | 100 | 0 | Y | N | 角色 |
6 | token | varchar | 200 | 0 | N | N | 密码 |
7 | addtime | timestamp | 19 | 0 | N | N | 新增时间 |
8 | expiratedtime | timestamp | 19 | 0 | N | N | 过期时间 |
表users (用户表)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 说明 |
1 | id | bigint | 20 | 0 | N | Y |
|
2 | username | varchar | 100 | 0 | N | N | 用户名 |
3 | password | varchar | 100 | 0 | N | N | 密码 |
4 | role | varchar | 100 | 0 | Y | N | 角色 |
5 | addtime | timestamp | 19 | 0 | N | N | 新增时间 |
表yonghu (用户)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 说明 |
1 | id | bigint | 20 | 0 | N | Y |
|
2 | addtime | timestamp | 19 | 0 | N | N |
|
3 | yonghuming | varchar | 200 | 0 | N | N | 用户名 |
4 | mima | varchar | 200 | 0 | N | N | 密码 |
5 | xingming | varchar | 200 | 0 | N | N | 姓名 |
6 | xingbie | varchar | 200 | 0 | Y | N | 性别 |
7 | touxiang | varchar | 200 | 0 | Y | N | 头像 |
8 | shouji | varchar | 200 | 0 | Y | N | 手机 |
9 | dizhi | varchar | 200 | 0 | Y | N | 地址 |
七 系统测试
7.1 测试目的
系统测试使每个项目完成后所要必须进行的一项内容,它是尽可能多的发现项目程序中遇到的所有问题,然后针对错误进行针对性的修改以保证程序能够稳定流畅的运行。一个成功的系统测试是将错误最少化,即发现系统中的所有错误并进行修改。图书购物商城系统平台的测试是根据需求、功能实现等方面进行测试,找出系统中出现的所有问题,并及时修改,以保证为用户提供更加优质的服务。针对该图书购物商城系统平台而言,该系统测试的目的有三点:第一点,针对需求分析,保证该毕业设计管理系统符合用户的需求;第二点,全面系统的对该系统的各个功能进行详细的测试,保证系统中的功能能够准确实现;第三点,针对系统数据库进行修改和完善。
7.2 系统功能测试
7.2.1 信息首页登录数据展示的测试
在图书购物商城信息系统首页功能的测试中,主要对图书购物商城系统首页的数据进行查看操作,针对首页登录查看功能的测试用下图:
表7.1 首页登录查看功能测试
测试功能名称 | 执行测试的操作 | 系统测试的预期结果 | 测试的实际结果 |
首页登录查看 | 输入系统网页 | 在输入系统的地址后进入系统首页、成功进入图书购物商城系统登录叶页面 | 符合预期 |
对首页登录查看的测试结果如图所示:
7.2.2 前端首页书籍信息查看测试
系统中需要对首先书籍信息查看,必须进行用户登录、测试登录功能结果如图所示:
用户登录功能测试
测试功能名称 | 执行测试的操作 | 系统测试的预期结果 | 测试的实际结果 |
查看书籍信息 | 登录 | 点击系统进入成功后看看查看书籍信息展示、点击进入详情查看 | 符合预期 |
查看成功
登录功能的测试
7.2.3 管理员修改新闻信息测试
就管理员对新闻列表详情修改进行测试而言,管理员进入后台可以直接点击列表详情进行修改。结果如图所示:
测试功能名称 | 执行测试的操作 | 系统测试的预期结果 | 测试的实际结果 |
修改新闻详情 | 必须登录后触发修改按钮 | 点击进入到新闻列表页面、点击修改按钮修改数据。点击提交完成修改。 | 符合预期 |
修改成功
标签:200,vue,varchar,Springboot,系统,源码,测试,20,书籍 From: https://blog.csdn.net/love3512986643/article/details/143111421