# 学生管理 **Repository Path**: otacss/student_management ## Basic Information - **Project Name**: 学生管理 - **Description**: 使用SSM框架+MySQL+layUI实现 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-03-31 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 学生管理系统 ## 概述 四个阶段学生信息系统基于Java Web,数据库使用MySQL,前端框架使用layUI,项目构建使用maven,版本控制使用git, 由于时间关系,暂时只完成第一阶段 ## 第一阶段: ### 功能 学生信息管理、包括学生信息的新增、编辑、查看、删除,班级信息管理、包括班级信息的新增、编辑、查看、删除,教师信息管理、包括教师信息的新增、编辑、查看、删除,其中学生、教师、管理员都有自己的密码用来登录系统,且各个角色权限不一样,管理员有所有权限、教师只有班级管理和学生管理权限、学生只能查看和修改自己信息。 ### 数据库分析 一个班级有若干学生,一个老师只负责一个班级 - 学生信息 - 学号 - 密码 - 姓名 - 年龄 - 性别 - 班级编号 - 班级 - 班级编号 - 班级名称 - 教师编号 - 班长学号 - 学委学号 - 教师表 - 教师编号 - 教师名称 - 密码 - 管理员 - 账户 - 密码 ## 第二阶段: ### 功能 课程的添加、编辑、查看、删除,学生选课、修改选课、退课,教师查看学生选课,编辑学生选课,管理员有所有权限,学生只能查看自己选的课程、选课、退课,教师只能查看和编辑他的课程被选的信息,不能查看所有的课程。 ### 数据库分析 三元关系,一个老师讲授一门课程,一门课程可被多名老师讲,1:N。一个学生可选多门课,一门课可被多个学生选,M:N。一个教师管理多个学生,一个学生可被一个教师授课,1:N。 讲授(教师编号,课程编号,…) 选课(学号,课程编号,成绩) 管理(学号,教师编号,…) 教师编号做教师表主键,做讲授表外键,做管理表外键。 课程号做课程表主键,选课表外键。 学生号做学生表主键,做选课表。 ## 第三阶段: 功能:学生实现签到请假功能,只能签到他所选的课程,只能查看和编辑自己的请假信息,教师和管理员可以查看和编辑审核签到信息和请假信息,请假信息只有未审核的请假单老师和管理员才可以审核,学生只能修改未审核的自己发起的请假单。。 ## 第四阶段: 功能:学生成绩查询,只能查询自己所选课程的成绩,教师对学生成绩进行查看、编辑、删除等,教师和管理员可查看所有课程的成绩。成绩信息提供批量导入导出Excel文件功能。成绩统计信息,可通过课程来统计课程成绩信息,如最高分、平均分、最低分等,也可根据分数区间来统计展示。 ## 总结 - 权限管理 - 数据库的CRUD - 页面的显示 - 项目的初步了解