基于 C/S 结构学生成绩管理系统
需求分析
该系统主要分配两个角色,管理员角色和学生角色。管理员的主要功能:添加用户;学生的主要功能:查询成绩、选择课程;老师的主要功能:增加课程、给学生打分。
功能设计
项目是基于 JavaSE 的管理系统,数据库使用 MySQL,该系统主要分配两个角色,管理员角色和学生角色。管理员的主要功能:添加课程、删除课程、查询所有课程信息、添加学生信息;学生的主要功能:根据课程编号查找课程、选择课程、查看所有课程信息。
数据库设计
1表adminitrator
(管理员表)
Field | Type | Null | Key | Comment |
---|---|---|---|---|
Username | varchar(20) | —— | PRI | 用户名 |
password | varchar(20) | —— | —— | 密码 |
trueName | varchar(20) | —— | —— | 用户昵称 |
2 表 S(学生信息表)
Field | Type | Null | Key | Comment |
---|---|---|---|---|
Sno | varchar(20) | —— | PRI | 学号 |
Sname | varchar(20) | —— | —— | 姓名 |
Sx | varchar(20) | —— | —— | 系别 |
3 表 C(课程信息表)
Field | Type | Null | Key | Comment |
---|---|---|---|---|
Cno | varchar(20) | —— | PRI | 课号 |
Cname | varchar(20) | —— | —— | 课名 |
Csum | varchar(20) | —— | —— | 课程总数 |
Cselected | varchar(20) | —— | —— | 已选课程数 |
4 表 SC(学生-课程信息表)
Field | Type | Null | Key | Comment |
---|---|---|---|---|
Cno | nvarchar(50) | —— | PRI | 课号 |
Sno | nvarchar(50) | —— | PRI | 学号 |
系统功能描述
该小型系统主要是用于管理学生及课程的基本信息,主要功能包括四方面的:
注意
各类用户都要登录认证:LoginWindow.java 实现界面,管理员和学生双验证。
管理员负责管理课程信息:AdmintratorWindow.java 实现界面,添加、删除、查找课程;
学生可以查询课程信息并加以选择:StudentWindow 实现界面,可以通过课程 ID 来查找课程,也可以直接通过查看所有课程来选择课程;
学生查到的课程信息应与学生身份相符:学生只能选择已有的课程,课程满了不能再次选择,课程不能重复选择;
’数据库设计要充分考虑完整性约束:登录名和密码不能为空,选课是学生 ID 和课程 ID 能为空,根主键保证课程号、学生号唯一。包括选课人数的限制:每门课程都有人数上限,人员满不能再次添加,数据库学生选课 ID 不能冲突,学生不能重复选择课程。
流程图
登录页面
- 管理员界面
分别为添加学生、添加课程、课程修改(包括根据 ID 删除课程、查看所有课程)
管理员界面 2.添加学生
添加课程 4.修改课程
查看全部课程信息
- 学生界面