# 学校管理系统 本项目包含三个主要的管理系统,用于学校的不同业务场景管理。 ## 1. 社团管理系统 (Club Management System) ### 功能概述 社团管理系统用于管理学校中的学生社团活动,包括学生信息管理、指导教师管理和社团管理。 ### 主要类结构 - **Student**: 学生类,包含学生基本信息 - **Advisor**: 指导教师类,包含教师基本信息 - **Club**: 社团类,包含社团基本信息 - **ClubManagementSystem**: 社团管理系统主类,提供社团管理的核心功能 ### 主要功能 - 学生信息管理 - 指导教师信息管理 - 社团创建和管理 - 学生加入社团 - 教师指导社团 ## 2. 成绩管理系统 (Grade Management System) ### 功能概述 成绩管理系统用于管理学生的课程成绩,包括学生信息管理、教师信息管理、课程管理和成绩录入。 ### 主要类结构 - **Student**: 学生类,包含学生基本信息 - **Teacher**: 教师类,包含教师基本信息 - **Course**: 课程类,包含课程基本信息 - **Grade**: 成绩类,管理学生的课程成绩 - **GradeManagementSystem**: 成绩管理系统主类,提供成绩管理的核心功能 ### 主要功能 - 学生信息管理 - 教师信息管理 - 课程创建和管理 - 学生选课功能 - 成绩录入和管理 ## 3. 课程管理系统 (Subject Management System) ### 功能概述 课程管理系统用于管理学校的学科和课程体系,建立学科与课程之间的层次关系。 ### 主要类结构 - **Subject**: 学科类,包含学科基本信息和与课程的一对多关系 - **Course**: 课程类,包含课程基本信息 ### 主要功能 - 学科信息管理 - 课程信息管理 - 学科与课程的关联管理 - 课程列表维护 ## 系统架构 ### 项目结构 ``` com.school/ ├── ClubManagementSystem.java # 社团管理系统主类 ├── GradeManagementSystem.java # 成绩管理系统主类 ├── Student.java # 学生类 ├── Teacher.java # 教师类 ├── Advisor.java # 指导教师类 ├── Club.java # 社团类 ├── Subject.java # 学科类 ├── Course.java # 课程类 └── Grade.java # 成绩类 ``` ### 数据关系 - **Student** 与 **Course**: 多对多关系,通过选课功能实现 - **Student** 与 **Grade**: 一对多关系,一个学生有多门课程成绩 - **Course** 与 **Grade**: 一对多关系,一门课程有多名学生的成绩 - **Subject** 与 **Course**: 一对多关系,一个学科包含多门课程 - **Student** 与 **Club**: 多对多关系,学生可以加入多个社团 - **Advisor** 与 **Club**: 一对多关系,一个指导教师可以指导多个社团 ## 编译和运行 ### 编译命令 ```bash javac -d target/classes src/main/java/com/school/*.java ``` ### 运行方式 分别运行三个管理系统的主类: ```bash java -cp target/classes com.school.ClubManagementSystem java -cp target/classes com.school.GradeManagementSystem ``` ## 使用说明 1. **社团管理系统**:用于学校社团的日常管理,包括社团创建、成员管理和指导教师分配。 2. **成绩管理系统**:用于教师录入和管理学生成绩,支持按学生、按课程查询成绩。 3. **课程管理系统**:用于建立学校的学科课程体系,维护学科与课程之间的层次关系。 ## 扩展建议 1. 添加数据库持久化功能 2. 开发图形用户界面 3. 实现用户权限管理 4. 添加数据报表和统计功能 5. 集成学生信息系统和教务管理系统