本文档详细阐述了“自动组卷在线考试(gitee)”的设计与实现。本项目采用 JAVA_WEB、C_SHARP2、BOOT、SPRING_BOOT、SSM、VUE、VUE_WXAPP 技术栈构建,属于 education_admin 领域的典型应用。系统底层数据模型设计严谨,共包含 11 个核心实体,涉及 管理员、教师、学生、班级、科目、题目、试卷、试卷题目等关键业务对象,并通过 17 组实体关系构建了完整的数据支撑体系。在功能架构上,系统划分为 题目、学生、学生试卷题目、班级考试、试卷、学生试卷等主要模块,实现了从数据持久化到业务逻辑处理的完整流程。该设计方案结构清晰、逻辑严密,能够有效满足 管理员、教师、学生、班级 等场景的业务需求,具有较高的实用价值和参考意义。
本系统旨在解决企业级应用开发中的共性问题,通过标准化的架构设计和功能模块划分,降低开发成本,提高代码质量。 主要包含以下核心功能模块:
本系统根据业务逻辑划分为 11 个主要功能域。各模块遵循高内聚低耦合原则,具体定义如下。
暂无详细描述。
功能包含:新增、查询、编辑、删除。
关联实体:题目
暂无详细描述。
功能包含:新增、查询、编辑、删除。
关联实体:学生
暂无详细描述。
功能包含:新增、查询、编辑、删除。
关联实体:学生试卷题目
暂无详细描述。
功能包含:新增、查询、编辑、删除。
关联实体:班级考试
暂无详细描述。
功能包含:新增、查询、编辑、删除。
关联实体:试卷
暂无详细描述。
功能包含:新增、查询、编辑、删除。
关联实体:学生试卷
暂无详细描述。
功能包含:新增、查询、编辑、删除。
关联实体:教师
暂无详细描述。
功能包含:新增、查询、编辑、删除。
关联实体:科目
暂无详细描述。
功能包含:新增、查询、编辑、删除。
关联实体:试卷题目
暂无详细描述。
功能包含:新增、查询、编辑、删除。
关联实体:管理员
暂无详细描述。
功能包含:新增、查询、编辑、删除。
关联实体:班级
系统实体关系图(E-R Diagram)如下图所示。
| 主实体 (A) | 关联类型 | 从实体 (B) | 业务语义 |
|---|---|---|---|
| 学生 (Stu) | N:1 | 班级 (Clazz) | 学生 (Stu) 关联 班级 (Clazz) |
| 科目 (Course) | N:1 | 教师 (Teacher) | 科目 (Course) 关联 教师 (Teacher) |
| 题目 (Testquestion) | N:1 | 科目 (Course) | 题目 (Testquestion) 关联 科目 (Course) |
| 题目 (Testquestion) | N:1 | 教师 (Teacher) | 题目 (Testquestion) 关联 教师 (Teacher) |
| 试卷 (TestPaper) | N:1 | 教师 (Teacher) | 试卷 (TestPaper) 关联 教师 (Teacher) |
| 试卷 (TestPaper) | N:1 | 科目 (Course) | 试卷 (TestPaper) 关联 科目 (Course) |
| 试卷题目 (TestDetail) | N:1 | 试卷 (TestPaper) | 试卷题目 (TestDetail) 关联 试卷 (TestPaper) |
| 试卷题目 (TestDetail) | N:1 | 题目 (Testquestion) | 试卷题目 (TestDetail) 关联 题目 (Testquestion) |
| 班级考试 (ClazzTest) | N:1 | 班级 (Clazz) | 班级考试 (ClazzTest) 关联 班级 (Clazz) |
| 班级考试 (ClazzTest) | N:1 | 试卷 (TestPaper) | 班级考试 (ClazzTest) 关联 试卷 (TestPaper) |
| 学生试卷 (StuTest) | N:1 | 班级考试 (ClazzTest) | 学生试卷 (StuTest) 关联 班级考试 (ClazzTest) |
| 学生试卷 (StuTest) | N:1 | 试卷 (TestPaper) | 学生试卷 (StuTest) 关联 试卷 (TestPaper) |
| 学生试卷 (StuTest) | N:1 | 学生 (Stu) | 学生试卷 (StuTest) 关联 学生 (Stu) |
| 学生试卷题目 (StuTestDetail) | N:1 | 学生 (Stu) | 学生试卷题目 (StuTestDetail) 关联 学生 (Stu) |
| 学生试卷题目 (StuTestDetail) | N:1 | 学生试卷 (StuTest) | 学生试卷题目 (StuTestDetail) 关联 学生试卷 (StuTest) |
| 学生试卷题目 (StuTestDetail) | N:1 | 题目 (Testquestion) | 学生试卷题目 (StuTestDetail) 关联 题目 (Testquestion) |
| 学生试卷题目 (StuTestDetail) | N:1 | 教师 (Teacher) | 学生试卷题目 (StuTestDetail) 关联 教师 (Teacher) |
注:N:M(多对多)关系通常通过中间表实现。
图 1 自动组卷在线考试(gitee) 实体关系图
核心数据表结构定义如下,包含表名、字段名、数据类型及约束条件。
| 字段名 | 类型 | 属性 | 说明 |
|---|---|---|---|
| name | String(12) | - | 姓名 |
| tele | String(11) | - | 电话 |
| 字段名 | 类型 | 属性 | 说明 |
|---|---|---|---|
| name | String(18) | UQ | 姓名 |
| gender | String(10) | - | 性别 |
| tele | String(11) | - | 电话 |
| numb | String(32) | UQ | 编号 |
| 字段名 | 类型 | 属性 | 说明 |
|---|---|---|---|
| name | String(18) | UQ | 姓名 |
| gender | String(10) | - | 性别 |
| tele | String(11) | - | 电话 |
| numb | String(32) | UQ | 学号 |
| age | int | - | 年龄 |
| clazzid | String(255) | FK | 班级 |
| idnum | String(18) | - | 身份证 |
| 字段名 | 类型 | 属性 | 说明 |
|---|---|---|---|
| numb | String(32) | UQ | 班级名 |
| name | String(255) | - | 班主任 |
| 字段名 | 类型 | 属性 | 说明 |
|---|---|---|---|
| name | String(18) | UQ | 科目名 |
| teacherid | String(255) | FK | 科目教师 |
| begintime | DateTime(255) | - | 开课时间 |
| score | double(255) | - | 学分 |
| 字段名 | 类型 | 属性 | 说明 |
|---|---|---|---|
| title | String(255) | UQ | 题目简介 |
| cid | String(255) | FK | 科目 |
| teaid | String(255) | FK | 录入人 |
| nandu | String(255) | - | 难度 |
| type | String(255) | - | 题目类型 |
| question | String(255) | - | 题目 |
| sele | String(255) | - | 选择题选项 |
| pic | String(255) | - | 补充图片 |
| answer | String(255) | - | 答案 |
| 字段名 | 类型 | 属性 | 说明 |
|---|---|---|---|
| numb | String(32) | UQ | 试卷编号 |
| teaid | String(255) | FK | 发布教师 |
| nandu | String(255) | - | 试卷难度 |
| createtime | DateTime | - | 创建时间 |
| keid | String(255) | FK | 科目 |
| 字段名 | 类型 | 属性 | 说明 |
|---|---|---|---|
| testid | String(255) | FK | 试卷编号 |
| timu | String(255) | FK | 对应题目 |
| score | double(255) | - | 分值 |
| 字段名 | 类型 | 属性 | 说明 |
|---|---|---|---|
| testname | String(255) | UQ | 班级考试名 |
| clazzid | String(255) | FK | 班级 |
| testid | String(255) | FK | 试卷 |
| time1 | DateTime(255) | - | 开始时间 |
| time2 | DateTime(255) | - | 结束时间 |
| score | double(255) | - | 总分 |
| 字段名 | 类型 | 属性 | 说明 |
|---|---|---|---|
| clazztestid | String(255) | FK | 所属班级考试 |
| testid | String(255) | FK | 试卷 |
| stuid | String(255) | FK | 学生 |
| numb | String(255) | - | 学生试卷编号 |
| score | double(255) | - | 分数 |
| 字段名 | 类型 | 属性 | 说明 |
|---|---|---|---|
| stuid | String(255) | FK | 学生 |
| stutestid | String(255) | FK | 学生试卷 |
| timuid | String(255) | FK | 学生试卷题目 |
| answer | String(255) | - | 答案 |
| teaid | String(255) | FK | 批改人 |
| defen | double(255) | - | 得分 |
| jieg | String(255) | - | 答题结果 |
文档生成时间: 2026-06-28 · Powered by JieMa AI