学生管理系统实验报告

您所在的位置:网站首页 比树莓派性能好 学生管理系统实验报告

学生管理系统实验报告

2023-08-07 18:12| 来源: 网络整理| 查看: 265

课程名称

ASP.NET程序设计

实验名称

学生信息管理系统

下载链接:https://download.csdn.net/download/mariodf/85671926?spm=1001.2014.3001.5501

目录

一、实验目的... 3

二、实验环境... 3

1. 运行环境.. 3

2. 开发工具.. 3

三、实验设计... 3

1. 系统框架.. 3

2. 系统总体设计.. 4

3. 数据库表结构设计... 6

4. 项目的实现... 11

四、实验结果和分析.. 17

1.用户登录模块.. 17

2.学生信息管理系统首页的实现.. 18

3.学生信息管理模块的实现.. 21

3.1学生信息管理.. 21

3.2学生成绩管理.. 23

3.3选课信息管理.. 25

4.系统管理模块的实现... 26

4.1用户管理... 26

4.2角色管理... 28

5.授课信息管理模块的实现.. 29

5.1教师管理... 29

5.2课程管理... 30

5.3班级管理... 30

5.4授课信息管理.. 31

五、总结.. 31

一、实验目的

编写学生信息管理系统,实现以下功能:

1. 学生信息管理:对在校学生信息进行添加、删除、修改、查询等操作。

2. 学生成绩管理:对已经录入的学生信息进行添加、删除、修改学习成绩,并可以通过关键字进行查询。

3. 课程信息管理:支持对授课教师、课程编号及授课老师所授课的年级进行添加、删除、修改等操作。

4. 课程管理:可显示每个班级每学期的课程表,并可以对已经开设的课程进行添加、删除和修改等操作。

5. 用户管理:用于管理系统用户,可进行账号增加、账号删除、权限修改等操作,方便对不同账号进行管理,避免出现系统权限混乱的情况。

二、实验环境

运行环境

1.1 服务端运行环境

1.1.1 硬件配置:作为服务端硬件必须具有服务器级别。

1.1.2 软件配置:对于web服务器应配置IIS等提供web服务的软件。

1.1.3操作平台:Windows 10。

1.2客户端运行环境

1.2.1 操作系统:Windows 10。

1.2.2软件需求:客户端需要安装Internet浏览器,如Chrome、Firefox。

开发工具

本系统采用c#语言开发,所用开发工具有Visual Studio 2019、Microsoft SQL server 2012、 绘图工具Process On等。

三、实验设计

  系统框架

在学习通的资料里,老师上传了三层体系结构的学习资料,三层体系结构有:用户界面表示层、业务逻辑层、数据访问层这三层,学习完三层架构模式后,在这个学生信息管理系统中使用了传统的四层架构模式,分布如下:

1.1 User Interface-表示层,负责向用户显示信息和解释用户的命令。

1.2 Application-应用层,定义了这个软件需要完成的任务,且指挥表达领域概念的对象来解决问题。这一层所负责的工作对这个学生信息管理系统来说有着很大的意义,起到关键的作用。

1.3 Domain-领域层,负责表达本身业务的概念、状态信息以及规则。

1.4 Infrastructure-基础设施层,向其他层提供通用的方法等,比如:为Application传递消息,为User Interface绘制屏幕组件等。这一层能够通过整个架构框架来支持四个层次之间交互的模式。

整个项目的结构如下:

  系统总体设计

对于学生而言:可以对成绩进行查看;

对于教师而言:可以进行学生成绩管理和学生信息管理;

对于系统管理员而言:可以进行学生成绩管理、学生信息管理、教师授课信息管理、用户管理和课程管理。

2.1系统功能结构图如下图所示:

2.2系统业务流程图:

 数据库表结构设计

StudentManage数据库中的表:

3.1班级信息表:T-Class

学校班级详细信息:

SeriaINumber:班级编号

MajorId:专业id

Name:班级名称

Description:班级描述

3.2课程信息表:T-Course

学校课程详细信息:

SeriaINumber:班级编号

MajorId:专业id

Name:班级名称

Description:班级描述

3.3院系表:T-Department

基础数据,存放院系相关信息:

Name:院系名称

Description:院系描述

图片

3.4专业表:T-Major

基础数据,存放专业相关信息:

Name:专业名称

Description:专业描述

DepartmentId:所属院系

图片

3.5菜单表:T-Module

基础数据,存放各个模块的信息:

Name:菜单名称

Url:菜单url

Icon:菜单图标

ParentId:父级菜单

3.6多对多关系存储表:T-Relation

多对多映射关系表,一些关联关系可以存放在此表:

Key:多对多标识

FirstKeyId:所关联的第一个表id

SecongKeyId:所关联的第二表id

3.7角色表:T-Role

存放角色的详细信息:

Name:角色名称

Discription:角色描述

3.8成绩存储表:T-Score

学生的成绩表:

StudentId:学生id

TeachInfold:授课信息id

Scores:成绩

3.9学生信息存储表:T-Student

   用来存放学生信息的详情:

SerialNumber:学号

UserName:用户名

Password:密码

RealName:真实姓名

Sex:性别

Phone:手机号

ClassId:所属班级

EnterDate:入学时间

3.10学生成绩存储表:T-StudentScore

  用来存放学生各科成绩:

StudentId:学生id

StudentName:用户名

MajorId:专业id

MajorName:专业名称

CourseId:课程id

CourseName:课程名称

StudentTime:学时

StuGrade:学分

StuScore:成绩

3.11教师信息存储表:T-Teacher

用来存放教师相关的详细信息:

SerialNumber:教师编号

UserName:登录用户名

Password:登录密码

RealName:真实姓名

Sex:性别

Phone:手机号

3.12授课信息存储表:T-TeacherInfo

用来存放学校的授课信息:

TeacherId:教师id

CourseId:课程id

Hours:学时

Credit:学分

3.13系统用户表:T-User

用户信息,存放管理人员用户详细信息

SerialNumber:编号

UserName:登录用户名

Password:登录密码

RealName:真实姓名

Sex:性别

Phone:手机号

 项目的实现

4.1数据库连接

数据库连接部分的代码:

4.2增删改数据方法的实现

    

4.3查询数据方法的实现

4.4四层结构部分的设计实现

4.4.1表示层的实现:

在这里实现了界面内容的设计显示,向用户显示信息,在不同的模块应该显示数据库的哪部分内容等。

在Areas部分主要是实现对搜索框按钮的实现,可以根据关键字对数据库表中的内容进行查找并在界面显示给用户;

在Controllers部分实现了学生管理、课程管理,对一些数据内容通过按钮进行添加、删除、修改等内容的实现;

在Views中主要是对界面进行设计;

4.4.2 应用层的实现:

这一部分实现了对对象的获取和存储。

4.4.3 领域层的实现:

这一部分主要是定义了一些接口类、对该系统一些基本模块的实现。

在DbEntity、Model中对一些基本模块的实现;

在IRepository、Repository中定义了接口类:

4.4.4基础设施层的实现:

这一部分的代码主要是对数据连接,一些数据的增删查改的代码实现。

四、实验结果和分析

1.用户登录模块

1.1本模块主要实现了管理员、教师、学生的登录。只有通过身份确认后才可以访问相关的资源,例如学生不能访问用户管理模块。

1.2用户登录的输入、输出。

输入:用户名、密码、用户身份(管理员,教师,学生);

输出:登录成功进入系统首页(当验证失败时会弹出错误提示)。

1.3登录界面如下:

在下面可以选择用户的登录身份:

输入密码时,可以选择是否显示密码:

当输入错误时,会有弹窗出现:

1.4用户登录模块的程序流程图:

2.学生信息管理系统首页的实现

登录成功后进入系统首页。不同用户身份进入系统,左侧菜单栏的显示也会不同,右上角显示用户的头像和用户名称。

2.1学生的系统首页:

只有学生成绩查询模块。

2.2教师的系统首页:

有学生信息管理、学生成绩管理、选课信息管理模块。

2.3管理员的系统首页:

有学生信息管理、学生成绩管理、选课信息管理模块;用户管理、角色管理模块;教师管理、课程管理、班级管理、授课信息管理模块。

2.4当点击右上角的用户名时,会出现一个下拉框,可以选择基本资料和退出登录:

当点击退出时,会回到系统登陆页面;

当选择基本资料时,会出现一个编辑页面,可以对用户基本信息进行编辑。点击重置可以对输入的内容进行清空,点击提交便可保存所修改的信息。

3.学生信息管理模块的实现

学生管理模块包含学生信息管理、学生成绩管理和选课信息管理。其中以学生身份登录时,只能查看到学生成绩模块;而以教师和管理员身份登录时,则可以使用这三个功能,并且可以对信息进行增删查改操作。

3.1学生信息管理

      3.1.1学生信息管理界面:

      可以在页面下面的下拉框选择当前页面显示多少条信息:

3.1.2新增学生信息:

3.1.2新增学生信息:

可以在性别、班级的下拉框对性别、班级进行选择:

3.1.3编辑/删除学生信息,当编辑/删除成功时,会有一个弹窗出现,提示你编辑/删除成功。

编辑:

删除:

3.2学生成绩管理

      3.2.1学生成绩管理页面:

教师、管理员的页面(可以对信息进行增删查改操作):

学生的页面(只能对信息进行查看):

3.2.2 新增、删除、修改和查询和上面学生信息管理模块类似:

      查询信息(可以根据输入的姓名或课程号进行查询):

添加信息:

可以在下拉框选择专业,课程名称等:

在学时、学分、成绩处可以选择右边的按钮上下进行加减:

新增成功的弹窗:

可以选择右边的按钮进行编辑、删除;

删除成功的弹窗:

3.3选课信息管理

3.3.1选课信息管理页面:

3.3.2添加、删除、修改、查询实现和上面类似:

添加:

添加成功:

4.系统管理模块的实现

系统管理主要实现该系统的用户和角色的管理。跟据角色不同,不同的用户会有不同的路径访问权限。这一模块只有以管理员身份进入系统,才有这部分功能,以学生、老师身份进入则没有这部分功能。

4.1用户管理

      4.1.1用户管理首页:

      4.1.2新增用户弹窗:

      4.1.3用户的编辑界面:

      4.1.4用户的删除:

4.1.5用户的模糊查询:

4.2角色管理

      4.2.1角色管理首页:

      4.2.2新增,修改,删除,查询同上面所述功能类似。

新增角色:

              4.2.3设置权限

5.授课信息管理模块的实现

授课信息包含教师管理、课程管理、班级管理、授课信息管理,在授课信息编辑时添加了专业,班级,课程之间的关联。这一模块只有以管理员、教师身份进入系统,才有这部分功能,以学生身份进入该系统则没有此部分功能。

5.1教师管理

      5.1.1教师管理界面:

      5.1.2新增,修改,删除,查询同上面所述功能类似。

新增教师:

5.2课程管理

      5.2.1课程管理界面:

      5.2.2新增,修改,删除,查询同上面所述功能类似。

5.3班级管理

       5.3.1班级管理首页:

      5.3.2新增,修改,删除,查询同上面所述功能类似。

5.4授课信息管理

5.4.1授课信息管理界面:

      5.4.2新增,修改,删除,查询同上面所述功能类似。

五、总结

这个学生信息管理系统是尽自己最大的努力去写的,在程序编写过程中,我认为这个系统的实现有一些比较难的地方:一个是业务逻辑的理解实现;还有一个是数据库逻辑结构的设计。这两个方面都是会对整个系统运行情况及程序设计产生重大的影响。因此,在设计过程中,都需要充分考虑到设计的科学性、结构性、安全性等问题。

我觉得学习就是在程序不断的出错,不断的改正,不断的调试中提高的。通过设计这个系统我掌握了项目基本的设计流程,学会了设计系统的思维方法。虽然这个系统还不够完善,系统实现的功能还没有达到自己想要的效果,还有界面也不是特别美观等,这些地方是有待改善的。我想通过我以后更多的实践和学习,最后可以不断的完善系统,达到自己想要的效果。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3