英语单词测试
英文单词考试系统 课程设计完整文档材料
一、项目简介
本项目名为英文单词考试系统,是面向《网络工程导论》课程教学开发的Java Swing桌面应用,基于MVC分层架构设计,依托MySQL专业英语单词库实现课堂自动化单词测验。系统划分管理员、教师、学生三类权限角色,支持教师自定义考试、统一题库随机打乱考生题序、试卷自动批改、班级成绩统计Excel导出、学生错题词云可视化分析等完整教学流程。项目轻量化、本地部署即可运行,预留选择题拓展接口,可持续迭代升级,适用于高校专业英语随堂测试使用。
二、项目采用技术
- 开发语言与构建工具
Java 8、Maven项目管理,统一管理第三方依赖、编译打包 - 图形界面
Java Swing 实现全部桌面窗口、面板、交互组件 - 数据库相关
MySQL 9.7、JDBC原生数据库操作、Druid高性能数据库连接池 - 第三方工具库
Apache POI:实现班级考试成绩导出Excel文件 - 架构规范
MVC分层开发,划分为entity实体层、DAO数据访问层、Service业务层、UI界面层、Util工具层 - 版本协同工具
Git,管理项目源码、多人协作提交,规范功能迭代提交记录
三、功能需求分析
1. 用户权限管理需求
-管理员:支持教师与学生账号的新增、删除、信息修改与全量查询操作,能够统一管理全校全部用户的角色权限,调取查阅全校范围内全部考试的原始数据与汇总报表;配套账号检索功能,支持按照姓名、邮箱、学号等关键词快速定位账号,简化后台管理流程。
教师:可自主完成专业英语词库的更新维护,支持批量导入、新增、删除单词;创建考试,自定义考试起止时间;查看本班学生成绩、导出统计表格;支持生成班级高频易错单词词云,精准定位班级共性薄弱词汇。
学生:查看有效时间段内考试;进入答题页面,支持上一题/下一题、倒计时、提交试卷;查看个人历史试卷、错题记录、个人单词掌握词云等功能
2. 考试核心功能需求
(1)教师发起正式考试时,系统可从已搭建的单词题库中随机抽取指定数量的词汇题目,生成统一标准试卷,同一场考试内所有考生的题库题目完全一致,保障考试公平性。
(2)每位考生进入答题页自动打乱题目顺序,防止考场抄袭
(3)学生完成试卷提交之后,系统开展全自动线上阅卷,自动核算最终得分、答题正确率,归集所有错题,完整留存每一道题目的作答详情,方便师生后续复盘。
(4)考试结束后支持分数统计:平均分、最高分、最低分、及格率、各题目正确率
3. 数据可视化与导出需求
(1)词云分析模块:自动统计班级学生近7天内的全部错题数据,按照单词出错频次调整展示字号,出错频次越高单词字体越大,可视化呈现班级整体知识短板,便于教师规划后续复习重点。
(2)成绩文件导出:支持将班级全部考生的完整考试成绩一键导出为Excel表格文件,自动留存考试档案,满足院校教学存档、学情台账整理的使用要求。
4. 拓展预留需求
系统业务层预留题型拓展接口,后续可新增单选题、判断题出题与自动判分逻辑
四、项目亮点
- 标准 MVC 分层架构,模块解耦度高,系统可维护、可扩展性强
本项目严格遵循 MVC 设计思想,划分为实体 Entity 层、数据访问 DAO 层、业务逻辑 Service 层、UI 视图层与通用工具 Util 五层,各层级职责边界清晰、单向依赖,实现数据存储、业务规则、前端交互三者完全隔离。DAO 层仅负责原生 SQL 数据读写,不掺杂任何业务判断;Service 层统一承接参数校验、流程控制等核心业务逻辑,不直接操作数据库;Swing UI 视图层仅承担页面渲染、用户交互采集功能,无数据处理硬编码。若后续拓展单选、多选等新型题型,仅需在 WordDao、ExamService 中补充题型生成、答案校验逻辑,界面表格、答卷提交、统计模块无需大规模重构修改,代码复用率高,后期迭代与故障定位成本显著降低。 - 同套试题随机乱序分发,低成本落地课堂防作弊方案
系统针对同一套考试试卷设计题目乱序机制:教师创建考试时统一批量生成固定题库,学生进入作答窗口时,ExamService 调用集合随机洗牌算法打乱当前考生的题目列表,每位学生加载到的题干展示顺序完全不同。该方案无需额外硬件、网络监控设备,仅依托后端内存集合运算即可实现,有效规避学生横向抄袭答案的课堂乱象,轻量化完成考场防作弊需求,适配线下小班、大班各类教学考试场景。 - 事务化全自动阅卷流程,大幅降低教师人工阅卷负荷
学生提交答卷时,PaperDao 开启数据库事务保障数据一致性,整套判分流程全自动执行:先批量比对学生作答内容与标准答案,内置多分隔符兼容的答案匹配规则,自动判定作答正误;同步单题分值累加、总得分、答题正确率、对错题目数量运算;答错题目自动关联单词信息写入错题表,全部数据批量入库后提交事务,出现异常则自动回滚,杜绝分数、错题数据残缺。全程无需教师手动批改、登分、整理错题,完整替代传统人工阅卷工作,有效释放教师教学精力。 - 错题词云可视化分析模块,为针对性教学提供数据支撑
系统集成学情可视化功能,WrongRecordDao 自动统计近七日全体学生错题频次,词云面板基于统计数据渲染可视化字符云;出错频次越高的单词,展示字号越大,同时配套柱状词频统计图、词性分类统计视图。教师可直观识别班级共性薄弱词汇,精准定位学生单词掌握短板,依托量化数据规划专项复习内容,摆脱仅凭主观经验安排教学的模式,实现数据驱动的精准教学。 - 全流程一体化教学工具链路,完整覆盖单词教学全业务场景
系统整合单词资源管理、在线限时作答、自动化阅卷、多维度成绩统计、Excel 成绩导出、个人错题归档、班级错词分析七大核心功能,形成闭环教学工具链。管理员负责账号权限管控;教师可完成单词录入、考试创建、成绩导出、学情分析全操作;学生可独立参与限时测验、查阅个人错题本,覆盖课前单词储备、课中随堂测验、课后学情复盘完整教学环节,完全贴合高校英语词汇课程日常授课需求。 - 客户端轻量化部署架构,环境适配门槛低
项目采用 Java Swing 桌面客户端实现,无需 Tomcat、Nginx 等 Web 服务容器,本地仅配置 JDK 环境与 MySQL 数据库即可完整运行;工程基于 Maven 管理第三方依赖,执行打包命令即可一键编译构建程序。配套 SqlImporter 工具类支持本地一键执行数据库建表脚本,简化数据库初始化操作,普通教师、机房运维人员均可快速完成本地部署,不受校园网络、服务器资源限制,适配机房单机、教师个人电脑多类使用环境。
五、系统演示材料说明
方式1:主要功能截图清单(可直接截图填充报告)
项目目录结构截图(src分层包结构、sql脚本、db.properties配置)
IDEA数据库连接成功截图(Succeeded连接提示)
SQL脚本执行完成日志截图
系统登录窗口截图
管理员账号主页(用户管理面板)
教师端:单词库管理界面、创建考试弹窗
学生端答题页面(倒计时、单词作答框)
提交后自动判分结果页面
班级成绩统计面板
单词错题词云可视化面板
Excel导出成绩文件效果截图
Main程序启动运行控制台无报错日志
方式2:演示操作视频脚本
操作演示
六、团队成员负责模块(表格)
| 序号 | 姓名 | 身份 | 负责分层模块 | 具体开发内容 | 代码总量 |
|---|---|---|---|---|---|
| 1 | 贺庆龄 | 组长 | entity、dao | 1.编写User、Word、Exam、答卷全部实体类;2.开发UserDao、WordDao、PaperDao等所有数据库增删改查;3.编写sql建库建表脚本,数据库环境调试 | 500行 |
| 2 | 李韶歆 | 组员 | service | 1. 开发 AuthService、ExamService、StatisticsService 等全套业务服务,实现创建考试、随机动态组卷、题目乱序核心算法;2. 封装自动阅卷计分、整场成绩汇总统计、近七日高频错题聚合等完整业务逻辑;3. 编写 DBUtil 数据库连接池、Excel 导出、Swing 通用控件工具、SQL 脚本导入工具等通用工具类;4. 统一封装对外业务接口,预留拓展接口适配后续新增题型 | 444行 |
| 3 | 肖圣铱 | 组员 | ui、util | 1.全部Swing窗口:登录页、三角色主页、答题面板、词云面板、Main启动类; 2.工具类:Druid连接工具、词云生成、Excel导出、时间工具; 3.界面绑定业务、项目打包、README文档编写 | 490行 |
七、项目Git地址
https://gitee.com/rolling-cigarettes/ ## 八、团队Git提交记录截图说明 ### 需要截取两张截图放入文档: 1. Git仓库全部提交总记录截图(展示所有迭代feat提交,对应README里的提交规范)  2. 分成员提交明细截图:分别展示组长、组员1、组员2各自的提交日志,证明三人均等参与开发,每人负责对应模块迭代。 组长贺庆龄   组员李韶歆   组员肖圣铱 