# 学生管理系统作业 **Repository Path**: chen-lyx/student-management-system-task ## Basic Information - **Project Name**: 学生管理系统作业 - **Description**: No description available - **Primary Language**: Java - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-05-25 - **Last Updated**: 2025-06-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 学生成绩管理系统 一个基于Spring Boot + Thymeleaf + LayUI的完整学生成绩管理系统。 ## 项目概述 本系统是一个完整的学生成绩管理系统,实现了用户登录、学生管理、课程管理、成绩管理等核心功能。系统采用前后端分离的设计思想,使用LayUI作为前端UI框架,提供了良好的用户体验。 ## 技术栈 - **后端框架**: Spring Boot 2.7.18 - **模板引擎**: Thymeleaf - **前端框架**: LayUI 2.9.8 - **数据库**: MySQL 5.7+ - **ORM框架**: Spring Data JPA + Hibernate - **构建工具**: Maven - **Java版本**: JDK 8+ ## 功能特性 ### 1. 用户管理 - 用户登录/登出 - 支持三种用户角色:管理员、教师、学生 - 用户信息管理 ### 2. 学生管理 - 学生信息的增删改查 - 学生成绩查看 - 学生信息统计 ### 3. 课程管理 - 课程信息的增删改查 - 课程状态管理(进行中、已结束、已取消、待开始) - 课程与教师的关联 ### 4. 成绩管理 - 成绩录入、修改、删除 - 成绩等级自动计算(A、B、C、D、F) - 成绩统计分析 - 学生平均分计算 - 课程平均分计算 ### 5. 系统特性 - 统一的返回值格式 - 完善的异常处理 - 数据验证和约束 - 响应式设计界面 ## 数据库设计 系统包含以下四张主要数据表: ### 1. 用户表 (user) - id: 主键 - username: 用户名(唯一) - password: 密码 - real_name: 真实姓名 - role: 用户角色(ADMIN/TEACHER/STUDENT) - email: 邮箱 - phone: 电话 - enabled: 是否启用 - create_time: 创建时间 - update_time: 更新时间 ### 2. 学生表 (student) - id: 主键 - student_number: 学号(唯一) - name: 姓名 - age: 年龄 - email: 邮箱 - phone: 电话 - class_name: 班级 - major: 专业 - user_id: 关联用户ID - create_time: 创建时间 - update_time: 更新时间 ### 3. 课程表 (course) - id: 主键 - course_code: 课程代码(唯一) - course_name: 课程名称 - description: 课程描述 - credits: 学分 - hours: 学时 - status: 课程状态 - teacher_id: 授课教师ID - semester: 学期 - academic_year: 学年 - create_time: 创建时间 - update_time: 更新时间 ### 4. 成绩表 (grade) - id: 主键 - student_id: 学生ID - course_id: 课程ID - score: 分数 - grade_level: 成绩等级 - exam_date: 考试日期 - remarks: 备注 - recorded_by: 录入人ID - create_time: 创建时间 - update_time: 更新时间 ## 快速开始 ### 1. 环境要求 - JDK 8 或更高版本 - Maven 3.6+ - MySQL 5.7+ ### 2. 数据库配置 修改 `src/main/resources/application.properties` 中的数据库连接信息: ```properties spring.datasource.url=jdbc:mysql://localhost:3306/chensong?useSSL=false&serverTimezone=UTC spring.datasource.username=your_username spring.datasource.password=your_password ``` ### 3. 运行项目 ```bash # 编译项目 mvn clean compile # 运行项目 mvn spring-boot:run ``` ### 4. 访问系统 打开浏览器访问:http://localhost:8081 ### 5. 默认账号 系统初始化时会自动创建以下测试账号: | 用户名 | 密码 | 角色 | 说明 | |--------|------|------|------| | admin | admin123 | 管理员 | 系统管理员账号 | | teacher | teacher123 | 教师 | 教师账号 | | student | student123 | 学生 | 学生账号 |