## 项目结构 ``` smart-question-bank/ ├── backend/ # 后端服务 │ ├── src/ # 源代码目录 │ │ ├── common/ # 公共模块 │ │ │ ├── constants.py # 常量定义 │ │ │ └── exceptions.py # 异常定义 │ │ ├── exception/ # 异常处理 │ │ │ ├── api_exception.py # API异常 │ │ │ ├── business_exception.py # 业务异常 │ │ │ └── handler.py # 异常处理器 │ │ ├── models/ # 数据模型 │ │ │ ├── base_model.py # 基础模型 │ │ │ ├── user.py # 用户模型 │ │ │ ├── question.py # 题目模型 │ │ │ ├── practice_record.py # 练习记录模型 │ │ │ ├── knowledge_point.py # 知识点模型 │ │ │ ├── exam_score.py # 考试成绩模型 │ │ │ ├── learning_path.py # 学习路径模型 │ │ │ ├── question_version.py # 题目版本模型 │ │ │ ├── question_review.py # 题目审核模型 │ │ │ ├── question_tag.py # 题目标签模型 │ │ │ ├── wrong_question.py # 错题模型 │ │ │ ├── wrong_question_reason.py # 错题原因模型 │ │ │ ├── wrong_question_tag.py # 错题标签模型 │ │ │ ├── learning_goal.py # 学习目标模型 │ │ │ ├── learning_style.py # 学习风格模型 │ │ │ ├── target_score.py # 目标分数模型 │ │ │ ├── exam.py # 考试模型 │ │ │ ├── exam_analysis.py # 考试分析模型 │ │ │ ├── learning_progress.py # 学习进度模型 │ │ │ ├── knowledge_graph.py # 知识图谱模型 │ │ │ ├── difficulty_assessment.py # 难度评估模型 │ │ │ ├── question_recommendation.py # 题目推荐模型 │ │ │ ├── adaptive_learning.py # 自适应学习模型 │ │ ├── store/ # 数据持久层 │ │ │ ├── user_store.py # 用户数据操作 │ │ │ ├── question_store.py # 题目数据操作 │ │ │ ├── practice_store.py # 练习数据操作 │ │ │ ├── knowledge_store.py # 知识点数据操作 │ │ │ ├── exam_store.py # 考试数据操作 │ │ │ ├── learning_path_store.py # 学习路径数据操作 │ │ │ ├── wrong_question_store.py # 错题数据操作 │ │ │ ├── learning_goal_store.py # 学习目标数据操作 │ │ │ ├── learning_style_store.py # 学习风格数据操作 │ │ │ ├── target_score_store.py # 目标分数数据操作 │ │ │ ├── exam_analysis_store.py # 考试分析数据操作 │ │ │ ├── learning_progress_store.py # 学习进度数据操作 │ │ │ ├── knowledge_graph_store.py # 知识图谱数据操作 │ │ │ ├── difficulty_assessment_store.py # 难度评估数据操作 │ │ │ ├── question_recommendation_store.py # 题目推荐数据操作 │ │ │ └── adaptive_learning_store.py # 自适应学习数据操作 │ │ ├── services/ # 业务逻辑 │ │ │ ├── auth_service.py # 认证服务 │ │ │ ├── question_service.py # 题目服务 │ │ │ ├── practice_service.py # 练习服务 │ │ │ ├── analysis_service.py # 分析服务 │ │ │ ├── exam_service.py # 考试服务 │ │ │ ├── learning_path_service.py # 学习路径服务 │ │ │ ├── wrong_question_service.py # 错题服务 │ │ │ ├── learning_goal_service.py # 学习目标服务 │ │ │ ├── learning_style_service.py # 学习风格服务 │ │ │ ├── target_score_service.py # 目标分数服务 │ │ │ ├── exam_analysis_service.py # 考试分析服务 │ │ │ ├── learning_progress_service.py # 学习进度服务 │ │ │ ├── knowledge_graph_service.py # 知识图谱服务 │ │ │ ├── difficulty_assessment_service.py # 难度评估服务 │ │ │ ├── question_recommendation_service.py # 题目推荐服务 │ │ │ └── adaptive_learning_service.py # 自适应学习服务 │ │ ├── controllers/ # API控制器 │ │ │ ├── auth_controller.py # 认证接口 │ │ │ ├── question_controller.py # 题目接口 │ │ │ ├── practice_controller.py # 练习接口 │ │ │ ├── analysis_controller.py # 分析接口 │ │ │ ├── exam_controller.py # 考试接口 │ │ │ ├── learning_path_controller.py # 学习路径接口 │ │ │ ├── wrong_question_controller.py # 错题接口 │ │ │ ├── learning_goal_controller.py # 学习目标接口 │ │ │ ├── learning_style_controller.py # 学习风格接口 │ │ │ ├── target_score_controller.py # 目标分数接口 │ │ │ ├── exam_analysis_controller.py # 考试分析接口 │ │ │ ├── learning_progress_controller.py # 学习进度接口 │ │ │ ├── knowledge_graph_controller.py # 知识图谱接口 │ │ │ ├── difficulty_assessment_controller.py # 难度评估接口 │ │ │ ├── question_recommendation_controller.py # 题目推荐接口 │ │ │ └── adaptive_learning_controller.py # 自适应学习接口 │ │ ├── middleware/ # 中间件 │ │ │ ├── auth_middleware.py # 认证中间件 │ │ │ ├── logging_middleware.py # 日志中间件 │ │ │ ├── error_middleware.py # 错误处理中间件 │ │ │ ├── request_handler.py # 请求处理中间件(合并请求校验、转换、过滤等功能) │ │ │ ├── response_handler.py # 响应处理中间件(合并响应格式化、压缩、加密等功能) │ │ │ ├── performance_monitor.py # 性能监控中间件(合并性能、指标、响应时间等) │ │ │ ├── security_middleware.py # 安全中间件(合并限流、权限、CORS等) │ │ │ └── tracing_middleware.py # 追踪中间件(合并请求ID、日志、追踪等) │ │ ├── config/ # 配置文件 │ │ │ ├── config_loader.py # 配置加载器。加载环境变量和配置文件,环境变量优先级高于配置文件 │ │ │ ├── application.yml # 主配置文件 │ │ │ ├── application-dev.yml # 开发环境配置 │ │ │ ├── application-prod.yml # 生产环境配置 │ │ │ └── application-test.yml # 测试环境配置 │ │ ├── database/ # 数据库相关 │ │ │ ├── connection/ # 数据库连接 │ │ │ │ └── mysql.py # MySQL连接 │ │ │ ├── migration/ # 数据库迁移 │ │ │ │ ├── alembic.ini # Alembic配置 │ │ │ │ └── versions/ # 迁移脚本 │ │ │ └── utils/ # 数据库工具 │ │ │ ├── query_builder.py # 查询构建器 │ │ │ └── pagination.py # 分页工具 │ │ ├── utils/ # 工具类 │ │ │ ├── logger.py # 日志配置 │ │ │ ├── date/ # 日期相关 │ │ │ │ ├── date_util.py # 日期工具 │ │ │ │ └── timezone.py # 时区处理 │ │ │ ├── string/ # 字符串处理 │ │ │ │ ├── string_util.py # 字符串工具 │ │ │ │ └── validator.py # 字符串验证 │ │ │ ├── file/ # 文件处理 │ │ │ │ ├── file_util.py # 文件工具 │ │ │ │ └── storage.py # 文件存储 │ │ │ └── network/ # 网络相关 │ │ │ ├── request.py # 请求工具 │ │ │ └── ip_util.py # IP工具 │ │ ├── tests/ # 测试相关 │ │ │ ├── unit/ # 单元测试 │ │ │ │ ├── models/ # 模型测试 │ │ │ │ ├── services/ # 服务测试 │ │ │ │ └── utils/ # 工具测试 │ │ │ ├── integration/ # 集成测试 │ │ │ │ ├── api/ # API测试 │ │ │ │ └── database/ # 数据库测试 │ │ │ ├── fixtures/ # 测试夹具 │ │ │ │ ├── data/ # 测试数据 │ │ │ │ └── mocks/ # Mock数据 │ │ │ └── e2e/ # 端到端测试 │ │ │ ├── api/ # API端到端测试 │ │ │ └── web/ # Web端到端测试 │ ├── requirements.txt # 依赖包列表 │ └── Dockerfile # Docker配置 ├── frontend/ # 前端应用 │ ├── public/ # 静态资源 │ │ ├── index.html # 主页面 │ │ ├── favicon.ico # 网站图标 │ │ └── robots.txt # 爬虫协议 │ ├── src/ # 源代码目录 │ │ ├── assets/ # 静态资源 │ │ │ ├── images/ # 图片资源 │ │ │ ├── fonts/ # 字体文件 │ │ │ └── styles/ # 全局样式 │ │ ├── components/ # 通用组件 │ │ │ ├── Header.vue # 头部组件 │ │ │ ├── Footer.vue # 底部组件 │ │ │ ├── QuestionCard.vue # 题目卡片 │ │ │ └── ProgressChart.vue # 进度图表 │ │ ├── views/ # 页面视图 │ │ │ ├── Home.vue # 首页 │ │ │ ├── Practice.vue # 练习页面 │ │ │ ├── Analysis.vue # 分析页面 │ │ │ └── Profile.vue # 个人中心 │ │ ├── router/ # 路由配置 │ │ │ └── index.js # 路由配置 │ │ ├── store/ # 状态管理 │ │ │ ├── modules/ # 模块 │ │ │ │ ├── auth.js # 认证模块 │ │ │ │ ├── question.js # 题目模块 │ │ │ │ └── practice.js # 练习模块 │ │ │ └── index.js # 状态管理入口 │ │ ├── api/ # API接口 │ │ │ ├── auth.js # 认证接口 │ │ │ ├── question.js # 题目接口 │ │ │ └── practice.js # 练习接口 │ │ ├── utils/ # 工具函数 │ │ │ ├── request.js # 请求封装 │ │ │ ├── date.js # 日期工具 │ │ │ └── validate.js # 验证工具 │ │ ├── styles/ # 全局样式 │ │ │ ├── variables.scss # 样式变量 │ │ │ ├── mixins.scss # 样式混合 │ │ │ └── global.scss # 全局样式 │ │ └── main.js # 程序入口 │ ├── tests/ # 测试目录 │ │ ├── unit/ # 单元测试 │ │ ├── integration/ # 集成测试 │ │ └── e2e/ # 端到端测试 │ ├── package.json # 项目配置 │ ├── vue.config.js # Vue配置 │ └── Dockerfile # Docker配置 ├── docs/ # 文档目录 │ ├── api/ # API文档 │ └── design/ # 设计文档 ├── scripts/ # 脚本目录 │ ├── deploy/ # 部署脚本 │ ├── migration/ # 数据迁移脚本 │ │ ├── migrations/ # 迁移文件目录 │ │ ├── __init__.py # 初始化文件 │ │ ├── alembic.ini # Alembic 配置文件 │ │ └── env.py # Alembic 环境配置 ├── docker-compose.yml # Docker Compose配置 ├── README.md # 项目说明 └── .gitignore # Git忽略配置 ```