# hwhelper **Repository Path**: etccq/hwhelper ## Basic Information - **Project Name**: hwhelper - **Description**: 使用Trae开发的家庭作业智能助手 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2026-02-12 - **Last Updated**: 2026-02-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 作业批改助手系统 本项目由Trae构建。 ## 项目简介 作业批改助手是一个基于Java和Vue3开发的全栈应用,实现了K12阶段学科作业的拍照批改和结果保存功能。系统集成了百度智能作业批改API,能够自动识别和批改作业,并将结果保存到数据库中。 ## 技术栈 ### 后端技术 - Spring Boot 3.2.0 - Spring Data JPA - H2内存数据库 - 百度智能作业批改API - Maven构建工具 ### 前端技术 - Vue 3.4.0 - Vite构建工具 - 原生JavaScript Fetch API - 响应式CSS设计 ## 核心功能 1. **作业拍照上传**:支持通过相机或相册上传作业照片 2. **智能批改**:集成百度智能作业批改API,自动识别和批改作业 3. **结果保存**:将批改结果保存到数据库,支持历史记录查询 4. **实时反馈**:批改过程中显示加载状态,批改完成后实时展示结果 5. **历史记录**:展示所有历史批改记录,方便查看和对比 ## 项目结构 ### 后端结构 ``` backend/ ├── src/ │ ├── main/ │ │ ├── java/ │ │ │ └── com/etccq/hwhelper/ │ │ │ ├── config/ # 配置类 │ │ │ ├── controller/ # 控制器 │ │ │ ├── entity/ # 实体类 │ │ │ ├── repository/ # 数据访问 │ │ │ ├── service/ # 业务逻辑 │ │ │ └── Application.java # 应用入口 │ │ └── resources/ │ │ └── application.properties # 配置文件 │ └── test/ ├── .env # 环境配置文件 └── pom.xml # Maven配置 ``` ### 前端结构 ``` frontend/ ├── src/ │ ├── assets/ # 静态资源 │ ├── components/ # 组件 │ ├── views/ # 页面 │ ├── App.vue # 主应用组件 │ ├── main.js # 入口文件 │ └── style.css # 全局样式 ├── index.html # HTML模板 ├── package.json # 依赖配置 └── vite.config.js # Vite配置 ``` ## API接口 ### 1. 作业批改接口 - **URL**: `/api/homework/correct` - **方法**: POST - **参数**: - `file`: 作业照片文件 - `subject`: 学科类型(math/chinese/english) - **返回**: 批改结果对象 ### 2. 获取批改结果接口 - **URL**: `/api/homework/result/{id}` - **方法**: GET - **参数**: `id` - 批改记录ID - **返回**: 批改结果对象 ### 3. 刷新批改结果接口 - **URL**: `/api/homework/result/{id}/refresh` - **方法**: GET - **参数**: `id` - 批改记录ID - **返回**: 批改结果对象 ### 4. 获取历史记录接口 - **URL**: `/api/homework/results` - **方法**: GET - **返回**: 批改历史记录列表 ## 环境配置 ### 后端配置 1. 在 `backend/.env` 文件中配置百度AI的App ID、API Key和Secret Key: ```properties # Baidu AI Configuration baidu.ai.app-id=your_app_id baidu.ai.api-key=your_api_key baidu.ai.secret-key=your_secret_key ``` ### 前端配置 前端配置已在 `vite.config.js` 文件中设置,默认代理到后端服务的8080端口。 ## 运行说明 ### 启动后端服务 1. 进入后端目录:`cd backend` 2. 启动后端服务:`mvn spring-boot:run` ### 启动前端服务 1. 进入前端目录:`cd frontend` 2. 安装依赖:`npm install` 3. 启动开发服务器:`npm run dev` ### 访问系统 打开浏览器访问前端服务地址(默认 http://localhost:3000) ## 使用流程 1. **上传作业照片**:点击上传按钮,选择或拍摄作业照片 2. **开始批改**:点击"开始批改"按钮,系统会上传照片并调用百度API提交批改任务 3. **刷新结果**:点击"刷新结果"按钮,系统会调用百度API获取最新批改结果 4. **查看结果**:批改完成后,系统会显示批改结果 5. **查看历史**:在页面下方可以查看所有历史批改记录 ## 注意事项 1. 确保已正确配置百度AI的API密钥,否则批改功能将无法使用 2. 上传的照片应清晰可见,确保作业内容完整 3. 系统默认使用H2内存数据库,重启服务后数据会丢失,生产环境建议使用持久化数据库 4. 前端开发服务器默认运行在3000端口,后端服务默认运行在8080端口 ## 扩展建议 1. **切换数据库**:将H2内存数据库切换为SQLite等持久化数据库 2. **优化批改结果展示**:在批改作业图片上叠加批改结果,方便用户查看 ## 许可证 本项目采用MIT许可证,详见LICENSE文件。