英语知识在线平台:Spring Boot技术实现
4系统概要设计
4.1概述
本系统采用B/S结构(Browser/Server,浏览器/服务器结构)和基于Web服务两种模式,是一个适用于Internet环境下的模型结构。只要用户能连上Internet,便可以在任何时间、任何地点使用。系统工作原理图如图4-1所示:
图4-1系统工作原理图
4.2系统结构
本系统是基于B/S架构的网站系统,设计的功能结构图如下图所示:
图4-2功能结构图
4.3.数据库设计
4.3.1数据库实体
概念设计的目标是设计出反映某个组织部门信息需求的数据库系统概念模式,数据库系统的概念模式独立于数据库系统的逻辑结构、独立于数据库管理系统(DBMS)、独立于计算机系统。
概念模式的设计方法是在需求分析的基础上,用概念数据模型(例如E-R模型)表示数据及数据之间的相互联系,设计出反映用户信息需求和处理需求的数据库系统概念模式。概念设计的目标是准确描述应用领域的信息模式,支持用户的各种应用,这样既容易转换为数据库系统逻辑模式,又容易为用户理解。数据库系统概念模式是面向现实世界的数据模型,不能直接用于数据库系统的实现。在此阶段,用户可以参与和评价数据库系统的设计,从而有利于保证数据库系统的设计与用户的需求相吻合。在概念模式的设计中,E-R模型法是最常见的设计方法。本系统的E-R图如下图所示:
(1)管理员信息的实体属性图如下:
图4.12 管理员信息实体属性图
(2)用户信息实体属性图如图4.13所示:
图4.13 用户信息实体属性图
(3)试卷信息实体属性图如图4.14所示:
图4.14 试卷信息实体属性图
4.3.2数据库设计表
英语知识应用网站需要后台数据库,下面介绍数据库中的各个表的详细信息:
表4.1 在线客服
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
userid bigint(20) 否 用户id
adminid bigint(20) 是 NULL 管理员id
ask longtext 是 NULL 提问
reply longtext 是 NULL 回复
isreply int(11) 是 NULL 是否回复
表4.2 学习技巧评论表
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
refid bigint(20) 否 关联表id
userid bigint(20) 否 用户id
nickname varchar(200) 是 NULL 用户名
content longtext 否 评论内容
reply longtext 是 NULL 回复内容
表4.3 在线学习评论表
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
refid bigint(20) 否 关联表id
userid bigint(20) 否 用户id
nickname varchar(200) 是 NULL 用户名
content longtext 否 评论内容
reply longtext 是 NULL 回复内容
表4.4 试卷表
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
name varchar(200) 否 试卷名称
time int(11) 否 考试时长(分钟)
status int(11) 否 0 试卷状态
表4.5 试题表
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
paperid bigint(20) 否 所属试卷id(外键)
papername varchar(200) 否 试卷名称
questionname varchar(200) 否 试题名称
options longtext 是 NULL 选项,json字符串
score bigint(20) 是 0 分值
answer varchar(200) 是 NULL 正确答案
analysis longtext 是 NULL 答案解析
type bigint(20) 是 0 试题类型,0:单选题 1:多选题 2:判断题 3:填空题(暂不考虑多项填空)
sequence bigint(20) 是 100 试题排序,值越大排越前面
表4.6 考试记录表
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
userid bigint(20) 否 用户id
username varchar(200) 是 NULL 用户名
paperid bigint(20) 否 试卷id(外键)
papername varchar(200) 否 试卷名称
questionid bigint(20) 否 试题id(外键)
questionname varchar(200) 否 试题名称
options longtext 是 NULL 选项,json字符串
score bigint(20) 是 0 分值
answer varchar(200) 是 NULL 正确答案
analysis longtext 是 NULL 答案解析
myscore bigint(20) 否 0 试题得分
myanswer varchar(200) 是 NULL 考生答案
表4.7 英语角
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
title varchar(200) 是 NULL 帖子标题
content longtext 否 帖子内容
parentid bigint(20) 是 NULL 父节点id
userid bigint(20) 否 用户id
username varchar(200) 是 NULL 用户名
isdone varchar(200) 是 NULL 状态
表4.8 培训报名
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
peixunmingcheng varchar(200) 否 培训名称
kecheng varchar(200) 否 课程
tupian varchar(200) 是 NULL 图片
peixunzhouqi varchar(200) 是 NULL 培训周期
peixundidian varchar(200) 是 NULL 培训地点
zhanghao varchar(200) 是 NULL 账号
xingming varchar(200) 是 NULL 姓名
peixunfeiyong int(11) 是 NULL 培训费用
baomingshijian datetime 是 NULL 报名时间
sfsh varchar(200) 是 否 是否审核
shhf longtext 是 NULL 审核回复
ispay varchar(200) 是 未支付 是否支付
表4.9 培训信息
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
peixunmingcheng varchar(200) 否 培训名称
kecheng varchar(200) 否 课程
tupian varchar(200) 是 NULL 图片
peixunzhouqi varchar(200) 是 NULL 培训周期
peixunfeiyong int(11) 是 NULL 培训费用
peixundidian varchar(200) 是 NULL 培训地点
beizhu varchar(200) 是 NULL 备注
表4.10 收藏表
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
userid bigint(20) 否 用户id
refid bigint(20) 是 NULL 收藏id
tablename varchar(200) 是 NULL 表名
name varchar(200) 否 收藏名称
picture varchar(200) 否 收藏图片
表4.11 管理员表
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
username varchar(100) 否 用户名
password varchar(100) 否 密码
role varchar(100) 是 管理员 角色
addtime timestamp 否 CURRENT_TIMESTAMP 新增时间
表4.12 学习技巧
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
biaoti varchar(200) 是 NULL 标题
neirong longtext 是 NULL 内容
xuexiwenjian varchar(200) 是 NULL 学习文件
fabushijian datetime 是 NULL 发布时间
fengmian varchar(200) 是 NULL 封面
clicktime datetime 是 NULL 最近点击时间
clicknum int(11) 是 0 点击次数
表4.13 用户
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
zhanghao varchar(200) 否 账号
mima varchar(200) 否 密码
xingming varchar(200) 是 NULL 姓名
xingbie varchar(200) 是 NULL 性别
shouji varchar(200) 是 NULL 手机
shenfenzheng varchar(200) 是 NULL 身份证
youxiang varchar(200) 是 NULL 邮箱
zhaopian varchar(200) 是 NULL 照片
表4.14 在线学习
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
biaoti varchar(200) 否 标题
tupian varchar(200) 是 NULL 图片
neirongjianjie longtext 是 NULL 内容简介
xuexishipin varchar(200) 是 NULL 学习视频
faburiqi datetime 是 NULL 发布日期
clicktime datetime 是 NULL 最近点击时间
clicknum int(11) 是 0 点击次数
5系统详细实现
5.1 管理员模块的实现
5.1.1 用户信息管理
英语知识应用网站的系统管理员可以对用户信息添加修改删除以及查询操作。具体界面的展示如图5.1所示。
图5.1 用户信息管理界面
5.1.2 在线学习管理
系统管理员可以对在线学习信息进行添加,修改,删除以及查询操作。具体界面如图5.2所示。
图5.2 在线学习信息管理界面
5.1.3 学习技巧管理
系统管理员可以对学习技巧信息进行添加,修改,删除以及查询操作。界面如下图所示:
图5.3 学习技巧信息管理界面
5.1.4 培训信息管理
系统管理员可以对培训信息进行添加修改删除操作。界面如下图所示:
图5.4 培训信息管理界面
5.1.5 培训报名管理
管理员可以查看用户培训报名信息状态,并且可以审核操作。界面如下图所示:
图5.5 培训报名界面
5.1.6 试卷信息管理
管理员可以对试卷信息进行添加修改删除操作。界面如下图所示:
图5.6 试卷信息界面
5.1.7 试题信息管理
管理员可以对试题信息进行添加修改删除操作。界面如下图所示:
图5.7 试题信息管理界面
5.3 用户模块的实现
5.3.1 学习技巧
用户登录后可以查看学习技巧。界面如下图所示:
图5.8 学习技巧界面
5.3.2 培训信息
用户可以在首页查看培训信息。界面如下图所示:
图5.9 培训信息界面
5.3.3 参加考试
用户登录后可以在试卷管理界面进行参加考试。界面如下图所示:
图5.10 参加考试界面