# 基于Java和MySQL实现的大学生学籍管理系统
# 一、设计任务、要求与分工
进入 21 世纪后,计算机的重要性以为人们所广泛的认识,其强大地功能在社会的各个层面已经全面的展现出来。随着我国教育的迅速发展,各类院校招生规模逐步扩大,学籍管理负担对于学校来说越来越重。采用传统的学籍信息管理模式,必然会浪费大量的人力,物力和财力。如何提高院校学生信息管理的水平,建立适合高校学生信息管理系统的过程中,信息化建设已成为学校的一个重要问题亟待解决。特别是使用计算机进行学籍管理后,相比较老的手工管理方法在保密性和可靠性等方面的优势逐步体现出来,利用计算机技术和数据库技术设计开发学生学籍管理系统可以大大提高学生管理的效率,所以说设计出这样一套软件成为学生管理部门的迫切需要。这也是我们组选择高校学籍管理系统的目的及意义。
本课题下的功能要求有:
- 实现学生信息、班级、院系、专业等的管理
- 实现课程、学生成绩信息管理
- 实现学生的奖惩信息管理
- 创建规则用于限制性别项只能输入“男”或“女”
- 创建视图查询各个学生的学号、姓名、班级、专业、院系
- 创建存储过程查询指定学生的成绩单
- 创建触发器当增加、删除学生和修改学生班级信息时自动修改相应班级、学生人数
- 建立数据库相关表之间的参照完整性约束
其中我主要负责设计存储过程,创建用于修改学生班级信息时自动修改相应班级的学生人数的触发器,选课管理模块(选课、退课及查课),成绩管理模块(增、删、改、查成绩),奖惩管理模块(增、删、改、查奖惩信息)。
其余模块有 ×× 负责设计表结构,设计主页面,院系管理模块(增、删、查院系信息),专业管理模块(增、删、查专业信息),班级管理模块(增、删班级信息,班级人数查询);××× 负责设计视图,检查数据库各表参照完整性,数据库 JDBC 连接,学生管理模块(增、删、改、查学生信息),课程管理模块(增、删、改、查课程信息)。
## 1.1 需求分析
## 1.2 功能需求
- **学生管理模块**:创建学生信息表(stu_inf)可以实现对学生信息的添加、查询、修改、删除操作
- **课程管理模块**:创建课程信息表(course)可以实现对课程信息的添加、查询、修改、删除操作
- **院系管理模块**:创建院系信息表(department)可以实现对院系信息的添加、查询、删除操作
- **专业管理模块**:创建专业信息表(major)可以实现对专业信息的添加、查询、删除操作
- **班级管理模块**:创建班级信息表(class)可以实现对班级信息的添加、删除、查询班级人数操作
- **选课管理模块**:创建选课信息表(stu_cou)可以实现对选课信息的添加、查询、删除操作
- **成绩管理模块**:对选课信息表(stu_cou)可以实现对成绩信息的添加、查询、修改、删除操作
- **奖惩管理模块**:创建奖惩信息表(stu_san)可以实现对奖惩信息的添加、查询、修改、删除操作
## 1.3 性能需求
- **数据的完整性,准确性**:录入数据采用表格方式,限制录入数据类型及取值范围以保证数据的完整性及准确性,系统具有部分反悔功能,系统备有的修改功能均可反悔
- **数据完成的时间性**:如成绩的录入,仅当选课料录资入后方可录入成绩
## 1.4 数据需求
- 院系表(departname(Varchar))
- 专业表(majorname(Varchar),departname(Varchar))专业信息的院系必须是院系表的院系
- 班级表(majorname(Varchar),classnum(Int),classsum(Smallint))班级信息的专业必须是专业表的专业
- 学生表(Sno(Varchar),Sname(Varchar),Ssex(Enum),Sbirth(Date),Snative(Varchar),Sclass(Int),Smajor(Varchar))学生信息的班级必须是班级表的班级
- 课程表(Cno(Varchar),Cname(Varchar),Ccredit(Smallint),Cteacher(Varchar))
- 选课表(Cno(Varchar),Sno(Varchar),GradeSmallint))选课信息的学号必须为学生表的学号,课程号必须为课程表的课程号
- 奖惩信息表(id(Int),Sno(Varchar),Sname(Varchar),Reward(Varchar),Punish(Varchar))奖惩信息的学号、姓名必须为学生表的学号、姓名
- 用户表(username(Varchar),password(Varchar))
## 1.5 运行需求
- **用户界面**:要求简单实用,操作方便
- **软件接口**:使用 JDBC 来连接 Java 和 MySQL 数据库
# 二、系统设计
**总体功能框架**
![](http://www.writebug.com/myres/static/uploads/2021/10/19/af99dcc6132e5029b18488f6dba3064d.writebug)
**模块的详细设计**
- **选课**:输入已有的学号和课程号,然后执行 insert 语句添加此信息到数据库 stu_cou 表中
- **退课**:输入已有的学号,先执行 select 语句查询出相应选课信息,选中想退的课的对应信息,然后执行 delete 语句在数据库 stu_cou 表中删除此信息;
- **选课信息查询**:输入已有学生的学号,然后执行 select 语句查询出此学生所有课程,或输入已有课程的课程号,然后执行 select 语句查询出此课程下的所有学生
- **成绩添加及修改**:输入已有课程号,先执行 select 语句查询出此课程所有学生,选中添加成绩的学生并输入此课程的成绩,然后执行 update 语句更新此信息到数据库 stu_cou 表中
- **成绩删除**:输入已有课程号,先执行 select 语句查询出此课程所有学生,选中该学生,然后执行 update 语句在数据库 stu_cou 表中删除此学生、此课程对应成绩
- **成绩查询**:
- 按学号查询:输入已有学生的学号,然后执行 select 语句查询出此学生所有成绩,并列出该生总课程数、总学分、挂科课程数、已修学分和平均分
- 按课程号查询:输入已有课程的课程号,然后执行 select 语句查询出此课程下已有成绩学生的成绩信息,并自动统计总人数、及格人数、不及格人数及此课程平均成绩
- 奖惩信息添加:输入已有学生的学号和姓名,再输入奖惩信息,然后执行 insert 语句添加此信息到数据库 stu_san 表中
- 奖惩信息删除:输入已添加过奖惩信息学生的学号,然后执行 delete 语句在数据库 stu_san 表中删除此信息
- 奖惩信息修改:输入已添加过奖惩信息学生的学号,先执行 select 语句查询出所有奖惩信息,然后选中要修改的信息并输入修改后的奖惩信息,最后执行 update 语句在数据库 stu_san 表中修改此信息
- 奖惩信息查询:输入已有学生的学号,然后执行 select 语句查询出所有奖惩信息
# 三、数据库设计
**概念结构设计**
![](http://www.writebug.com/myres/static/uploads/2021/10/19/382c869dbd4c7e15a835f388f1bc7b20.writebug)
**逻辑结构设计**
- 院系(院系名) 主键=院系名
- 专业(院系名,专业名) 主键=专业名 外键=院系名
- 班级(专业名,班级号,班级人数) 主键=专业名、班级号 外键=专业名
- 学生(学号,姓名,性别,出生年月,籍贯,专业名,班级号)
- 主键=学号 外键=专业名、班级号
- 课程(课程号,课程名,学分,执教教师) 主键=课程号
- 选课(学号,课程号,分数) 主键=学号、课程号 外键=学号、课程号
- 奖惩信息(id,学号,姓名,奖励信息,惩罚信息) 主键=id 外键=学号
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
精选_基于Java和MySQL实现的大学生学籍管理系统_源码打包 (203个子文件)
GradeSSeaInter.class 10KB
GradeCSeaInter.class 9KB
MainFrm.class 8KB
SanctionModInter.class 8KB
GradeModInter.class 8KB
ClassSeaInter.class 7KB
StudentModInter.class 6KB
SCDelInter.class 6KB
MajorSeaInter.class 6KB
StudentAddInter.class 6KB
SanctionDelInter.class 6KB
SanctionSeaInter.class 6KB
SCSSeaInter.class 6KB
CourseSeaInter.class 5KB
ClassSeaByMajorInter.class 5KB
StudentSeaInter.class 5KB
CourseModInter.class 5KB
SCCSeaInter.class 5KB
SanctionAddInter.class 5KB
login.class 5KB
CourseAddInter.class 5KB
DepartSeaInter.class 4KB
StudentDelInter.class 4KB
ClassDelInter.class 4KB
MajorAddInter.class 4KB
MajorDelInter.class 4KB
ClassAddInter.class 4KB
SCAddInter.class 4KB
DepartDelInter.class 4KB
CourseDelInter.class 4KB
DepartAddInter.class 4KB
SanctionModInter$3.class 3KB
SanctionDelInter$2.class 3KB
StudentAddInter$2.class 3KB
SanctionAddInter$2.class 3KB
SCDelInter$3.class 3KB
StudentModInter$4.class 3KB
ClassSeaInter$2.class 3KB
CourseAddInter$2.class 2KB
ClassDelInter$2.class 2KB
StudentModInter$2.class 2KB
CourseModInter$3.class 2KB
ClassAddInter$2.class 2KB
login$2.class 2KB
CourseSeaInter$2.class 2KB
CourseModInter$2.class 2KB
StudentDelInter$2.class 2KB
StudentSeaInter$2.class 2KB
MajorAddInter$2.class 2KB
GradeModInter$3.class 2KB
SCAddInter$2.class 2KB
Data.class 2KB
DepartDelInter$3.class 2KB
MajorDelInter$2.class 2KB
CourseDelInter$2.class 2KB
GradeModInter$6.class 2KB
DepartAddInter$2.class 2KB
GradeSSeaInter$2.class 2KB
GradeCSeaInter$2.class 2KB
SanctionModInter$5.class 1KB
ClassSeaByMajorInter$2.class 1KB
SanctionSeaInter$2.class 1KB
SanctionDelInter$4.class 1KB
SanctionModInter$2.class 1KB
SCCSeaInter$2.class 1KB
SCSSeaInter$2.class 1KB
SCDelInter$2.class 1KB
GradeModInter$2.class 1KB
MajorSeaInter$2.class 1KB
GradeModInter$5.class 1KB
MainFrm$19.class 903B
MainFrm$28.class 895B
MainFrm$30.class 895B
MainFrm$29.class 895B
MainFrm$27.class 895B
MainFrm$3.class 891B
MainFrm$11.class 891B
MainFrm$25.class 891B
MainFrm$5.class 891B
MainFrm$12.class 891B
MainFrm$4.class 891B
MainFrm$2.class 891B
MainFrm$10.class 891B
MainFrm$26.class 891B
MainFrm$6.class 889B
MainFrm$14.class 889B
MainFrm$24.class 889B
MainFrm$9.class 889B
MainFrm$18.class 889B
MainFrm$16.class 889B
MainFrm$17.class 889B
MainFrm$7.class 889B
MainFrm$15.class 889B
MainFrm$8.class 889B
MainFrm$13.class 889B
MainFrm$23.class 885B
MainFrm$22.class 885B
MainFrm$21.class 883B
MainFrm$20.class 883B
login$3.class 879B
共 203 条
- 1
- 2
- 3
资源评论
工具盒子
- 粉丝: 60
- 资源: 1313
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功