You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
hnu202326010318 8275712b9f
稳定版本合并
4 months ago
doc 运行说明 4 months ago
src/main/java/com/mathgenerator 更新注册逻辑(不在考核范围内) 4 months ago
.gitignore 修改页面逻辑 4 months ago
README.md 稳定版本 4 months ago
pom.xml 设置打包环境 4 months ago

README.md

中小学数学卷子自动生成程序

本项目是一个基于 Java 开发的命令行应用CLI旨在为小学、初中和高中的数学老师提供一个便捷的工具用于自动生成符合教学要求的数学练习卷。

程序设计遵循了现代软件工程原则通过模块化和面向对象的设计实现了UI与逻辑分离、高内聚、低耦合以及良好的可扩展性。

主要功能

  • 多学段支持:可为 小学初中高中 三个不同学段生成题目。
  • 分级与混合难度
    • 题目难度逐级递增,高年级题目会自动包含低年级知识点(例如,高中题可能包含平方、开根号等)。
    • 生成的试卷会自动混合不同难度的题目(例如,一份高中试卷会包含一定比例的初中和小学基础题),更贴近真实考试。
  • 历史题目查重:确保为同一位老师生成的题目不会与历史试卷中的题目重复,保证每次练习都是全新的。
  • 菜单式交互界面:提供清晰、易用的数字菜单进行操作,无需记忆复杂命令。
  • 自动保存与归档:生成的试卷会自动以“年-月-日-时-分-秒.txt”的格式命名并保存在每位教师专属的文件夹下方便管理和追溯。

技术栈

  • 开发语言Java 21(及更高版本)
  • 构建工具Apache Maven

如何启动

配置 JDK 23 (或更高版本)Apache Maven

1. 环境要求

  • JAVA_HOME 环境变量已正确设置。
  • 全平台通用

2. 构建项目

首先,需要使用 Maven 将项目打包成一个可执行的 .jar 文件。

在项目的根目录(即 pom.xml 文件所在的目录)下,打开终端并执行以下命令:

mvn clean package

该命令会编译所有代码,并 T 在 target/ 目录下生成一个名为 mathgenerator.jar 的文件。

3. 运行程序

构建成功后,使用以下命令来启动程序:

java -jar mathgenerator.jar

如果一切顺利,您将在终端看到欢迎界面和用户登录提示。

项目结构

项目采用标准的 Maven 目录结构,核心逻辑清晰分离:

.
├── pom.xml                 # Maven 核心配置文件
├── users.json              # 用户数据文件
└── src
    └── main
        └── java
            └── com
                └── mathgenerator
                    ├── Application.java    # 程序主入口:负责组装和启动
                    │
                    ├── model/              # 数据模型包
                    │   
                    ├── ui/                 # 用户界面包
                    |
                    ├── storage/            # 存储包
                    │  
                    ├── generator/          # 题目生成器包
                    │
                    └── service/            # 核心业务服务包
                        │
                        └── strategy/         # 试卷组合策略子包