springboot+vue|编程训练系统设计与实现(源码)
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 |
创建时间 |
|
tongjibianhao |
varchar(200) |
是 |
NULL |
统计编号 |
|
zhanghao |
varchar(200) |
是 |
NULL |
账号 |
|
xingming |
varchar(200) |
是 |
NULL |
姓名 |
|
shijuantimu |
varchar(200) |
是 |
NULL |
试卷题目 |
|
defen |
float |
是 |
NULL |
得分 |
|
defenfenxi |
longtext |
是 |
NULL |
得分分析 |
|
dengjiriqi |
date |
是 |
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 |
创建时间 |
|
name |
varchar(200) |
否 |
试卷名称 |
|
|
time |
int(11) |
否 |
考试时长(分钟) |
|
|
status |
int(11) |
否 |
0 |
试卷状态 |
表4.4 试题表
|
字段 |
类型 |
空 |
默认 |
注释 |
|---|---|---|---|---|
|
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.5 考试记录表
|
字段 |
类型 |
空 |
默认 |
注释 |
|---|---|---|---|---|
|
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.6 用户交流
|
字段 |
类型 |
空 |
默认 |
注释 |
|---|---|---|---|---|
|
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.7 练题统计
|
字段 |
类型 |
空 |
默认 |
注释 |
|---|---|---|---|---|
|
id (主键) |
bigint(20) |
否 |
主键 |
|
|
addtime |
timestamp |
否 |
CURRENT_TIMESTAMP |
创建时间 |
|
tongjibianhao |
varchar(200) |
是 |
NULL |
统计编号 |
|
zhanghao |
varchar(200) |
是 |
NULL |
账号 |
|
xingming |
varchar(200) |
是 |
NULL |
姓名 |
|
lianticishu |
int(11) |
是 |
NULL |
练题次数 |
|
dengjiriqi |
date |
是 |
NULL |
登记日期 |
|
beizhu |
varchar(200) |
是 |
NULL |
备注 |
表4.8 留言板
|
字段 |
类型 |
空 |
默认 |
注释 |
|---|---|---|---|---|
|
id (主键) |
bigint(20) |
否 |
主键 |
|
|
addtime |
timestamp |
否 |
CURRENT_TIMESTAMP |
创建时间 |
|
userid |
bigint(20) |
否 |
留言人id |
|
|
username |
varchar(200) |
是 |
NULL |
用户名 |
|
content |
longtext |
否 |
留言内容 |
|
|
reply |
longtext |
是 |
NULL |
回复内容 |
表4.9 训练通知
|
字段 |
类型 |
空 |
默认 |
注释 |
|---|---|---|---|---|
|
id (主键) |
bigint(20) |
否 |
主键 |
|
|
addtime |
timestamp |
否 |
CURRENT_TIMESTAMP |
创建时间 |
|
title |
varchar(200) |
否 |
标题 |
|
|
introduction |
longtext |
是 |
NULL |
简介 |
|
picture |
varchar(200) |
否 |
图片 |
|
|
content |
longtext |
否 |
内容 |
表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) |
否 |
主键 |
|
|
addtime |
timestamp |
否 |
CURRENT_TIMESTAMP |
创建时间 |
|
ziyuanmingcheng |
varchar(200) |
否 |
资源名称 |
|
|
ziyuanleixing |
varchar(200) |
是 |
NULL |
资源类型 |
|
wenjian |
varchar(200) |
是 |
NULL |
文件 |
|
ziyuanneirong |
longtext |
是 |
NULL |
资源内容 |
|
fengmian |
varchar(200) |
是 |
NULL |
封面 |
|
shangchuanshijian |
date |
是 |
NULL |
上传时间 |
|
clicktime |
datetime |
是 |
NULL |
最近点击时间 |
|
clicknum |
int(11) |
是 |
0 |
点击次数 |
表4.12 管理员表
|
字段 |
类型 |
空 |
默认 |
注释 |
|---|---|---|---|---|
|
id (主键) |
bigint(20) |
否 |
主键 |
|
|
username |
varchar(100) |
否 |
用户名 |
|
|
password |
varchar(100) |
否 |
密码 |
|
|
role |
varchar(100) |
是 |
管理员 |
角色 |
|
addtime |
timestamp |
否 |
CURRENT_TIMESTAMP |
新增时间 |
表4.13 用户
|
字段 |
类型 |
空 |
默认 |
注释 |
|---|---|---|---|---|
|
id (主键) |
bigint(20) |
否 |
主键 |
|
|
addtime |
timestamp |
否 |
CURRENT_TIMESTAMP |
创建时间 |
|
zhanghao |
varchar(200) |
否 |
账号 |
|
|
mima |
varchar(200) |
否 |
密码 |
|
|
xingming |
varchar(200) |
否 |
姓名 |
|
|
nianling |
varchar(200) |
否 |
年龄 |
|
|
xingbie |
varchar(200) |
是 |
NULL |
性别 |
|
shouji |
varchar(200) |
否 |
手机 |
|
|
zhaopian |
varchar(200) |
是 |
NULL |
照片 |

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.2 用户模块的实现
5.2.1 题库资源
用户可以在前台看到题库资源信息。界面如下图所示:

图5.5 题库资源界面
5.2.2 用户交流
用户可以在用户交流的地方进行留言。界面如下图所示:

图5.6 用户交流信息界面
5.2.3 参加考试
用户可以在试卷信息地方参加考试。界面如下图所示:

图5.7 参加考试界面
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)