注:展示部分文档内容和系统截图,需要完整的视频、代码、文章和安装调试环境请私信up主。
4.4 数据库设计原则
学习程序设计,如果要了解数据库管理系统或者是根据需求而制定的系统接口,就必须创建一种数据库管理系统的模式,用来保存数据资料,这样当在应用编程过程中时候,就不需要再向操作系统页面上加载信息,进而增加了整个系统的工作效率。信息库管理系统中保存着许多数据,应该说是一个管理信息系统建设的中心和基础,而信息库管理系统也为管理信息系统建设提出了新增、删除、更改和搜索的操作功能,使管理信息系统建设能够迅速地查询所需要的数据,而不会直接从程序代码中查找。信息库管理系统通过将信息表的各个组成部分按照特定的方法准确地合并,排序和组成信息库管理系统。
通过对校园美食交流分享平台的主要功能信息进行规划并分为若干功能实体信息,实体信息将使用E-R图加以表示,本系统的主要功能实体图如下图所示。
4.5 数据表
把按照数据库理念建立的E-R图,转换为国际关系信息库。在关联数据库中,统计关联主要由统计表所构成,但是表的构成主要体现在表格的数文字段上。如下表所示。
表4-1收藏表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
userid | bigint | 用户id | |||
refid | bigint | 商品id | |||
tablename | varchar | 200 | 表名 | ||
name | varchar | 200 | 名称 | ||
picture | longtext | 1000 | 图片 | ||
type | varchar | 200 | 类型 | 1 | |
inteltype | varchar | 200 | 推荐类型 | ||
remark | varchar | 200 | 备注 |
表4-2美食资讯
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
title | varchar | 200 | 标题 | ||
introduction | longtext | 1000 | 简介 | ||
picture | longtext | 1000 | 图片 | ||
content | longtext | 1000 | 内容 |
表4-3美食收录
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
meishimingcheng | varchar | 200 | 美食名称 | ||
meishileixing | varchar | 200 | 美食类型 | ||
meishididian | varchar | 200 | 美食地点 | ||
zhuyaoshicai | varchar | 200 | 主要食材 | ||
kouweitedian | varchar | 200 | 口味特点 | ||
meishijieshao | longtext | 1000 | 美食介绍 | ||
meishitupian | longtext | 1000 | 美食图片 | ||
thumbsupnum | int | 赞 | 0 | ||
crazilynum | int | 踩 | 0 | ||
clicktime | datetime | 最近点击时间 | |||
clicknum | int | 点击次数 | 0 |
表4-4美食类型
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
meishileixing | varchar | 200 | 美食类型 |
表4-5论坛交流
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
title | varchar | 200 | 帖子标题 | ||
content | longtext | 1000 | 帖子内容 | ||
parentid | bigint | 父节点id | |||
userid | bigint | 用户id | |||
username | varchar | 200 | 用户名 | ||
avatarurl | longtext | 1000 | 头像 | ||
isdone | varchar | 200 | 状态 |
表4-6美食收录评论表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
refid | bigint | 关联表id | |||
userid | bigint | 用户id | |||
avatarurl | longtext | 1000 | 头像 | ||
nickname | varchar | 200 | 用户名 | ||
content | longtext | 1000 | 评论内容 | ||
reply | longtext | 1000 | 回复内容 |
表4-7店铺信息评论表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
refid | bigint | 关联表id | |||
userid | bigint | 用户id | |||
avatarurl | longtext | 1000 | 头像 | ||
nickname | varchar | 200 | 用户名 | ||
content | longtext | 1000 | 评论内容 | ||
reply | longtext | 1000 | 回复内容 |
表4-8店铺信息
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
dianpubianhao | varchar | 200 | 店铺编号 | ||
dianpumingcheng | varchar | 200 | 店铺名称 | ||
dianpudizhi | varchar | 200 | 店铺地址 | ||
yingyeshijian | varchar | 200 | 营业时间 | ||
lianxidianhua | varchar | 200 | 联系电话 | ||
dianpujieshao | longtext | 1000 | 店铺介绍 | ||
dianputupian | longtext | 1000 | 店铺图片 | ||
thumbsupnum | int | 赞 | 0 | ||
crazilynum | int | 踩 | 0 | ||
clicktime | datetime | 最近点击时间 | |||
clicknum | int | 点击次数 | 0 |
表4-9用户
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
zhanghao | varchar | 200 | 账号 | ||
mima | varchar | 200 | 密码 | ||
xingming | varchar | 200 | 姓名 | ||
xingbie | varchar | 200 | 性别 | ||
nianling | int | 年龄 | |||
shouji | varchar | 200 | 手机 | ||
touxiang | longtext | 1000 | 头像 |
表4-10配置文件
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
name | varchar | 100 | 配置参数名称 | ||
value | varchar | 100 | 配置参数值 |
表4-11用户表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
username | varchar | 100 | 用户名 | ||
password | varchar | 100 | 密码 | ||
role | varchar | 100 | 角色 | 管理员 | |
addtime | timestamp | 新增时间 | CURRENT_TIMESTAMP |
表4-12 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 |
5系统详细设计
5.1系统功能实现
用户在登录网站时,第一眼就会看见首页。在此,用户可以查看到系统的导航条,并根据该导航条将用户引导至各个功能显示页面以进行操作。系统首页界面如图5-1所示:
店铺信息:在店铺信息页面的输入框中,输入店铺编号、店铺名称和店铺地址,以便对其进行查询,从而可以看到店铺的具体情况,还可以按照自己的需求,对其展开评论或收藏;店铺信息页面如图5-2所示:
美食信息:在美食信息页面输入美食名称、美食类型和美食地点进行查询,可以查看到美食详细信息,并根据需要进行评论或收藏操作;美食信息页面如图5-3所示:
6系统测试
6.1系统测试的目的
经过长期的测试与修改,系统能正常运行,已经达到基本的要求,但难免有时会出现一些报错和Bug,如果忽略一些不起眼的小问题有可能会产生连锁反应:数据的报错,数据的无缘被修改以及泄露,甚至会成为不法分子的可乘之机,给开发者和用户造成惨重的代价。综合以上几点,必修要对这个完成的系统进行测试,只有通过一定的测试来解决这些出现的问题。通过不断地进行测试,一步一步的发现系统中的问题,然后对问题进行一次又一次的修改,使该校园美食交流分享平台更加完善,最后争取没有漏洞和Bug,成为一个接近完美无暇的校园美食交流分享平台。还要在测试修改的过程中吸取经验:自己为什么会犯这种错误、代码的编写哪个逻辑环节出了错误、又有哪些地方是因为自己的粗心大意造成的等等。使系统本身接近完美以及以后的维护更加快捷方便。
对于校园美食交流分享平台,要对其进行一个整体的测试。测试根据各个模块的功能,以及各功能之间的相互联系,协同关系来进行操作。尤其在用户和管理员两个的数据库这一地方进行多次测试以及调整。通过一次又一次的系统测试,保证校园美食交流分享平台能够在上线面向开放使用后是一个方面、安全、省心的系统。
6.2系统测试方法
系统的测试方法有很多,在对系统进行测试时,应选择最适合并且稳定性良好最好保障的测试方法进行测试。撰写的代码完成后,就要开始着手于对系统进行一系列的测试。本系统代码是在IDEA编写完成的,完成后部署在IDEA集成好的Tomcat7上。测试的浏览器使用了Google浏览器进行的。系统测试的具体要求顺序如下:
(1)打开相应的运行代码软件,使用Google浏览器运行该系统页面。
(2)测试整体从三个角度进行测试:登录测试、删除分类测试和修改密码测试。对这些功能进行多次的测试,多用几个不同的测试用例。测试的同时还要分析源代码,对于产生的异常结果和错误,进行分析查找其原因,进行解决。
(3)在测试的过程中,尽量使用Debug来进行测试,这样得到的结果和数据更加准确无误。
(4)还要对系统进行高数据下并行和并发的系统测试。
6.3功能测试
(1)用户登录测试。在登录模块页面,通过输入三个用户名和密码进行测试。其中只有但三次输入的用户名“admin”和密码“admin”是正确的,会发现第三个是登陆成功的提示信息,而第一个和第二个登录失败。第一个登录失败的原因是因为用户名和密码不匹配,数据库中无法找到相应的匹配数据;第二个登录失败的原因是因为该用户名没有注册,数据库中没有相应的记录,所以第一次和第二次的登录会出现登录失败的得结果。如表6-1所示。
目录
英文摘要 II