数据库课程设计总结记录。学生选课系统,分为学生端和教师端,学生端和管理员端,学生端可以查看学生个人信息,查看课程成绩、查看课表、选课和退课;教师端可以查看个人信息、创建课程、课程管理、对课程的学生管理、成绩给分等功能。管理员有班级管理、教师管理、学生管理、课程管理、选课管理等功能。功能基本完善,但仍有少量功能功能设计不合理,有待改进。


前言

系统用到的技术栈
前端:elementUI、vue、axios、html、jQuery等。前端管理信息系统的架构由之前做过的一个医疗项目改进而来。
后端:SSM(SpringMVC+Spring+MyBatis)、pagehelper、Jackson等
项目管理工具maven
数据库:mysql5.5
服务器:Maven的tomcat7插件

开发环境:
开发工具:intellij IDEA
jdk1.8
maven3.6
mysql5.5+Navicat
tomcat7(maven插件)

项目下载地址:资源下载地址

一、项目整体介绍

1.需求分析

本课题为学生选课管理系统,主要是面向高校的教师和学生进行选课或排课的平台。本系统用于帮助提高教务处排课的工作效率,简化学生选课的流程,使选课管理工作更规范化,系统化,程序化,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改选课排课相关信息。系统主要有学生用户,教师用户,以及系统管理员三种角色,三种角色分别具有不同的功能。
管理员:管理员负责整个系统的维护,其需求最为复杂,包括对学生、教师、选课进行管理和统计,以及系统状态的查看,对课程排课的管理。所涉及到的信息包括课程信息、教师信息和学生信息。因此系统管理员具有本系统的最高权限,能够编辑各种信息模块。
教师:在该系统中,为方便教师工作,教师在通过工号和密码登陆后,教师具备能够查询自己信息和学生信息,管理班级的功能,以及学生成绩登记等功能。
学生:该系统主要为学生提供选课服务。因此学生可以查看自己的选课情况,学生可以根据本人的学号和密码登陆系统。登陆系统后可以进行查看个人信息,查看课程信息以及教师信息,以及查看自己的选课结果和在期末时查看考试成绩。

2.系统总体功能结构

在对系统的功能进行需求分析后,可以将系统分为(管理员)教务管理模块、教师管理模块以及学生管理模块。系统详细的功能结构图如下图所示。
在这里插入图片描述

3.系统功能说明

在这里插入图片描述

二、数据库设计

1.E-R图

在这里插入图片描述

2.关系模式

将概念模型转换为具体的关系模式,具体关系如下:
学生(学号、姓名、性别、年龄、生日、年级、院系、专业、密码、班级名)
教师(工号、姓名、性别、职称、专业、院系、密码)
班级(班级名、专业、班级人数、班主任、所属院系)
课程(课程号、课程名、课程类型、开设学院、学分、学时、上课时间、上课地点)
选课(学号、课程号、学生姓名、成绩)
管理员(工号、姓名、性别、密码)
授课(教师工号、课程号、课程名、教师名)

三.项目页面

1.学生端

在这里插入图片描述
查看个人信息
在这里插入图片描述
选课
在这里插入图片描述
退课
在这里插入图片描述
成绩查询
在这里插入图片描述
课表查询
在这里插入图片描述

2.教师端

查看个人信息
在这里插入图片描述
创建课程班级
在这里插入图片描述
课程管理
在这里插入图片描述
学生管理
在这里插入图片描述
在这里插入图片描述
学生成绩管理
在这里插入图片描述
在这里插入图片描述

3.管理员端

班级管理
在这里插入图片描述
教师管理
在这里插入图片描述
学生管理
在这里插入图片描述
课程信息管理
在这里插入图片描述
选课管理
在这里插入图片描述

四.总结

在这次的实践课程中,让我对SQL语句的使用更加熟练,并且对于SSM框架和maven的环境搭建的熟练程度进一步加深了。对于做项目的能力得到了进一步的提高。
但是在一些项目的功能设计上存在一些问题,对于前端设计也应该进一步完善使其合理。如在添加课程的功能可以设计给出可以开设课程的提示信息,而不用自己填写课程号课程名等等。

Logo

前往低代码交流专区

更多推荐