基于SpringBoot+Vue中国陕西民俗网(源码+部署说明+演示视频+源码介绍)(1)https://developer.aliyun.com/article/1558573
4.3.2 数据库物理设计
本数据库是关系型数据库,因此对二维表的结构设计也比较关键。毕竟二维表格模型就是关系型数据库中的关系模型。而一些常用的关系模型中的概念也需要了解,才可以对关系模型进行设计。下面就简单介绍关系,元组,属性,域,关键字等常用概念的含义。
关系:关系就是数据库中的一张数据表,每张数据表都有命名,也就是每个关系也有名字,那就是数据表名;
元组:元组就是数据表中的一行记录;
属性:属性就是数据表中的字段,也就是数据表中的一列;
域:域就是对数据表中属性的取值进行限定;
关键字:关键字就是数据表中的主键;
在了解了表结构设计的常用概念后,接下来就需要使用前面绘制的E-R模型完成表结构的设计工作,并在数据库中创建数据表,并为各个数据表进行命名。以下就对设计的结果通过表格形式进行展示。
表4.1收货地址表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
1 |
Id |
Int |
id |
否 |
2 |
yonghu_id |
Integer |
创建用户 |
是 |
3 |
address_name |
String |
收货人 |
是 |
4 |
address_phone |
String |
电话 |
是 |
5 |
address_dizhi |
String |
地址 |
是 |
6 |
isdefault_types |
Integer |
是否默认地址 |
是 |
7 |
insert_time |
Date |
添加时间 |
是 |
8 |
update_time |
Date |
修改时间 |
是 |
9 |
create_time |
Date |
创建时间 |
是 |
表4.2购物车表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
1 |
Id |
Int |
id |
否 |
2 |
yonghu_id |
Integer |
所属用户 |
是 |
3 |
shangpin_id |
Integer |
商品 |
是 |
4 |
buy_number |
Integer |
购买数量 |
是 |
5 |
create_time |
Date |
添加时间 |
是 |
6 |
update_time |
Date |
更新时间 |
是 |
7 |
insert_time |
Date |
创建时间 |
是 |
表4.3字典表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
1 |
Id |
Int |
id |
否 |
2 |
dic_code |
String |
字段 |
是 |
3 |
dic_name |
String |
字段名 |
是 |
4 |
code_index |
Integer |
编码 |
是 |
5 |
index_name |
String |
编码名字 |
是 |
6 |
super_id |
Integer |
父字段id |
是 |
7 |
beizhu |
String |
备注 |
是 |
8 |
create_time |
Date |
创建时间 |
是 |
表4.4民俗介绍表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
1 |
Id |
Int |
id |
否 |
2 |
minshu_name |
String |
民俗标题 |
是 |
3 |
minshu_photo |
String |
民俗图片 |
是 |
4 |
minshu_types |
Integer |
民俗类型 |
是 |
5 |
minshu_content |
String |
民俗详情 |
是 |
6 |
create_time |
Date |
创建时间 |
是 |
表4.5公告信息表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
1 |
Id |
Int |
id |
否 |
2 |
news_name |
String |
公告标题 |
是 |
3 |
news_photo |
String |
公告图片 |
是 |
4 |
news_types |
Integer |
公告类型 |
是 |
5 |
news_content |
String |
公告详情 |
是 |
6 |
create_time |
Date |
创建时间 |
是 |
表4.6商品表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
1 |
Id |
Int |
id |
否 |
2 |
shangpin_name |
String |
商品名称 |
是 |
3 |
shangpin_photo |
String |
商品照片 |
是 |
4 |
shangpin_types |
Integer |
商品类型 |
是 |
5 |
shangpin_kucun_number |
Integer |
商品库存 |
是 |
6 |
shangpin_old_money |
BigDecimal |
商品原价 |
是 |
7 |
shangpin_new_money |
BigDecimal |
现价/积分 |
是 |
8 |
shangpin_clicknum |
Integer |
点击次数 |
是 |
9 |
shangxia_types |
Integer |
是否上架 |
是 |
10 |
shangpin_delete |
Integer |
逻辑删除 |
是 |
11 |
shangpin_content |
String |
商品简介 |
是 |
12 |
create_time |
Date |
创建时间 |
是 |
表4.7商品收藏表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
1 |
Id |
Int |
id |
否 |
2 |
shangpin_id |
Integer |
商品 |
是 |
3 |
yonghu_id |
Integer |
用户 |
是 |
4 |
shangpin_collection_types |
Integer |
类型 |
是 |
5 |
insert_time |
Date |
收藏时间 |
是 |
6 |
create_time |
Date |
创建时间 |
是 |
表4.8商品评价表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
1 |
Id |
Int |
id |
否 |
2 |
shangpin_id |
Integer |
商品 |
是 |
3 |
yonghu_id |
Integer |
用户 |
是 |
4 |
shangpin_commentback_text |
String |
评价内容 |
是 |
5 |
reply_text |
String |
回复内容 |
是 |
6 |
insert_time |
Date |
评价时间 |
是 |
7 |
update_time |
Date |
回复时间 |
是 |
8 |
create_time |
Date |
创建时间 |
是 |
表4.9商品订单表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
1 |
Id |
Int |
id |
否 |
2 |
shangpin_order_uuid_number |
String |
订单号 |
是 |
3 |
address_id |
Integer |
收货地址 |
是 |
4 |
shangpin_id |
Integer |
商品 |
是 |
5 |
yonghu_id |
Integer |
用户 |
是 |
6 |
buy_number |
Integer |
购买数量 |
是 |
7 |
shangpin_order_true_price |
BigDecimal |
实付价格 |
是 |
8 |
shangpin_order_types |
Integer |
订单类型 |
是 |
9 |
shangpin_order_payment_types |
Integer |
支付类型 |
是 |
10 |
insert_time |
Date |
订单创建时间 |
是 |
11 |
create_time |
Date |
创建时间 |
是 |
表4.10用户表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
1 |
Id |
Int |
id |
否 |
2 |
yonghu_name |
String |
用户姓名 |
是 |
3 |
yonghu_phone |
String |
用户手机号 |
是 |
4 |
yonghu_id_number |
String |
用户身份证号 |
是 |
5 |
yonghu_photo |
String |
用户头像 |
是 |
6 |
yonghu_email |
String |
电子邮箱 |
是 |
7 |
create_time |
Date |
创建时间 |
是 |
表4.11用户表表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
1 |
Id |
Int |
id |
否 |
2 |
username |
String |
用户名 |
是 |
3 |
password |
String |
密码 |
是 |
4 |
role |
String |
角色 |
是 |
5 |
addtime |
Date |
新增时间 |
是 |
5.1用户信息管理
如图5.1显示的就是用户信息管理页面,此页面提供给管理员的功能有:用户信息的查询管理,可以删除用户信息、修改用户信息、新增用户信息,
还进行了对用户名称的模糊查询的条件
图5.1 用户信息管理页面
5.2 商品信息管理
如图5.2显示的就是商品信息管理页面,此页面提供给管理员的功能有:查看已发布的商品信息数据,修改商品信息,商品信息作废,即可删除,还进行了对商品信息名称的模糊查询商品信息信息的类型查询等等一些条件。
图5.2 商品信息管理页面
5.3商品类型管理
如图5.3显示的就是商品类型管理页面,此页面提供给管理员的功能有:根据商品类型进行条件查询,还可以对商品类型进行新增、修改、查询操作等等。
图5.3 商品类型管理页面
5.1公告信息管理
如图5.4显示的就是公告信息管理页面,此页面提供给管理员的功能有:根据公告信息进行新增、修改、查询操作等等。
图5.4 公告信息管理页面
第6章 系统测试
进入这个环节就代表着系统已经结束了编码实现功能阶段,接下来要做的事情,就是对该系统进行检测,也就是系统测试,这个环节是很有必要进行的,原因是开发本系统的人员,其自身具备的开发技术以及开发思维是有限的,在面对具有复杂性操作逻辑的系统,都会出现大大小小的错误,并且这样的错误还都是不可避免的。通过及时的测试,可以尽早排除程序中的错误,这样也可以减少实际运行中产生的问题,从而真正避免在后期使用中为修复这些问题所付出的高昂代价。及时测试,及时发现问题并解决,也是提高开发过程的效率的一种表现形式。总而言之,在软件开发生命周期的每个阶段都需要加以重视,并做好每个阶段需要做的任务,从开始到结尾都需要保证开发软件的质量。
6.1 功能测试
通过设计一些数据检验中国陕西民俗网的功能是否根据预定进行数据输出,以此检验系统功能是否合格。接下来就选取部分功能进行检测。
6.1.1 登录功能测试
中国陕西民俗网提供的服务是给规定的用户使用的,其他无关用户是无法进入的,登录功能就是检验访问者是否是符合要求的用户,及时将不符合要求的用户拒之门外。以此保证系统安全。这里以管理员身份进行检测,测试的内容见下表。
表6.1 登录功能测试表
账号 |
密码 |
身份 |
结果 |
guanliyuan |
guanliyuan |
管理员 |
提示成功,进入系统后台 |
user |
guanliyuan |
管理员 |
提示失败,停留在登录页面 |
guanliyuan |
user |
管理员 |
提示失败,停留在登录页面 |
中国陕西民俗网在面对正确的账号,不匹配的密码时,会有相应的反馈,其反馈结果见下图。
图6.1 登录错误反馈提示
6.1.2 修改密码功能测试
这个功能的设置也是出于对系统的保护,让操作人员的密码可以一直变化,减少泄露的几率。测试的数据见下表。通过验证旧密码,确认操作者是本人,然后开始对新密码进行登记。一般修改完密码后,需要再次登录。
表6.2 修改密码功能测试表
旧密码 |
新密码 |
密码修改结果 |
guanliyuan |
gly |
成功 |
user |
gly |
失败 |
guanliyuan |
失败 |
本系统在面对登记错误的旧密码信息时,有相应的反馈提示,见下图。
图6.2 旧密码错误提示
6.2 测试结果
经过测试,从中国陕西民俗网功能的角度来看,本系统各个功能在符合用户要求的情况下,也能保持运行正常。从中国陕西民俗网性能的角度来看,本系统可以保持24小时不间断运行,而且面对用户的误操作行为,有提前设置的错误反馈机制应对,另外,本系统界面布局考虑用户阅读习惯,可以让用户短时间内获取需要的内容。总之,本系统可以投入生产,帮助用户解决实际问题,发挥其应用价值。