# 第三次作业 **Repository Path**: a123475888/the-third-assignment ## Basic Information - **Project Name**: 第三次作业 - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-04-11 - **Last Updated**: 2026-05-31 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 学生选课系统 ## 项目介绍 这是一个基于 Spring Boot 3.0.0 开发的学生选课系统,用于展示 Spring Boot ORM 机制的使用。系统采用前后端分离架构,使用 MyBatis-Plus 实现 ORM,H2 作为嵌入式数据库,Bootstrap 作为前端框架。 ## 技术栈 - **后端框架**: Spring Boot 3.0.0 - **ORM 框架**: MyBatis-Plus - **数据库**: H2 嵌入式数据库 - **数据库连接池**: Druid - **API 文档**: Swagger 3.0 - **前端框架**: Bootstrap 5 - **构建工具**: Maven ## 功能特性 1. **学生管理** - 查看学生列表 - 添加新学生 - 编辑学生信息 - 删除学生 2. **课程管理** - 查看课程列表 - 添加新课程 - 编辑课程信息 - 删除课程 3. **学生选课** - 每个学生只能选一门课 - 查看已选课学生列表 - 支持更换课程 4. **数据初始化** - 系统启动时自动创建表结构 - 自动添加初始学生和课程数据(各5条) 5. **管理工具** - H2 数据库控制台 - Druid 监控页面 - Swagger API 文档 ## 项目结构 ``` src/ ├── main/ │ ├── java/com/example/studentclass/ │ │ ├── config/ # 配置类 │ │ ├── controller/ # 控制器 │ │ ├── entity/ # 实体类 │ │ ├── mapper/ # MyBatis Mapper │ │ ├── service/ # 服务层 │ │ │ └── impl/ # 服务实现 │ │ └── StudentclassApplication.java # 主应用类 │ └── resources/ │ ├── static/ # 静态资源 │ │ ├── index.html # 首页 │ │ ├── students.html # 学生管理 │ │ ├── courses.html # 课程管理 │ │ └── select-course.html # 选课页面 │ ├── schema.sql # 数据库表结构 │ └── application.yml # 配置文件 └── test/ # 测试代码 ``` ## 安装教程 1. **克隆项目** ```bash git clone https://gitee.com/blue_gown/student-class.git ``` 2. **进入项目目录** ```bash cd student-class ``` 3. **构建项目** ```bash mvn clean install ``` 4. **运行项目** ```bash mvn spring-boot:run ``` ## 使用说明 1. **访问系统**:打开浏览器,访问 http://localhost:8080 2. **学生管理**:点击导航栏中的"学生管理" - 查看学生列表 - 点击"添加学生"按钮添加新学生 - 点击"编辑"按钮修改学生信息 - 点击"删除"按钮删除学生 3. **课程管理**:点击导航栏中的"课程管理" - 查看课程列表 - 点击"添加课程"按钮添加新课程 - 点击"编辑"按钮修改课程信息 - 点击"删除"按钮删除课程 4. **学生选课**:点击导航栏中的"学生选课" - 选择学生和课程 - 点击"选课"按钮完成选课 - 已选课的学生可以更换课程 5. **查看数据库**:访问 http://localhost:8080/h2-console,使用以下信息登录: - JDBC URL: jdbc:h2:mem:student_db - Username: sa - Password: (留空) 6. **查看API文档**:访问 http://localhost:8080/swagger-ui.html 7. **查看Druid监控**:访问 http://localhost:8080/druid ## 在线文档和监控工具 1. **Swagger API 文档** - 访问地址:http://localhost:8080/swagger-ui.html - 功能:查看所有RESTful API接口文档,支持在线测试API 2. **H2 数据库控制台** - 访问地址:http://localhost:8080/h2-console - JDBC URL: jdbc:h2:mem:student_db - Username: sa - Password: (留空) - 功能:直接操作H2数据库,查看表结构和数据 3. **Druid 监控页面** - 访问地址:http://localhost:8080/druid - 登录用户名:admin - 登录密码:admin - 功能:监控数据库连接池状态,查看SQL执行情况 4. **需求规格和设计文档** - 文件位置:`需求规格和设计文档.md` - 功能:详细的项目需求、系统设计、架构说明 5. **测试用例文档** - 文件位置:`测试用例.md` - 功能:完整的测试用例、测试计划、测试报告模板 ## 注意事项 - 本系统使用 H2 嵌入式数据库,数据存储在内存中,系统重启后数据会丢失 - 系统启动时会自动创建表结构和初始数据 - 每个学生只能选一门课 ## 贡献指南 1. **Fork 本仓库** 2. **新建 Feat_xxx 分支** 3. **提交代码** 4. **新建 Pull Request** ## 许可证 本项目采用 MIT 许可证 - 详情请参阅 LICENSE 文件