基于BS结构的在线学籍管理系统

基于BS结构的在线学籍管理系统[java毕业论文下载]

基于B/S结构的在线学籍管理系统的设计与实现

    

随着科学技术的发展,计算机领域不断取得新的研究成果。计算机在代替和延伸脑力劳动方面发挥越来越重要的作用,不仅在工业方面而且在日常生活中也越来越离不开计算机。而在学校里,也需要计算机来处理大量的学生数据。在数字化的今天,为了加快学校学籍管理,以及使学校对学生数据的管理更加简单。开发一套学籍管理系统迫在眉捷,结合本次毕业设计的题目开发了学籍管理系统。

本文是对学校里的大量学生学籍信息处理的研究。本文是基于B/S结构的在线学籍管理系统,开发主要包括后台数据库的建立和维护以及前端应用界面的开发两个方面。本系统用ASP.NET进行开发与设计,用SQL开发后台数据库。在界面外观上便于浏览和操作,数据查询时简单快捷。系统实现了学生信息的添加、删除和修改,以及用户的注册、权限设置。

 

关键词:学籍管理;B/S结构;后台数据库设计

 

 

The Design and Implementation of On-line Student Status Management System Based on B/S structure

Abstract

With the development of the science and technology, computer plays a more and more important part in replacing and extending the people’s capacity. People use computer not only in the industry field, but also in the daily life. A lot of data needs to be dealt with,especially in school. In the modern society, student management is greatly improved by using computer.

The system is based on B/S structure, as a part of the application of the computer; student information management system has its own advantages. The system contains two aspects: setting up and maintenance of background database; and the development of the interface. The system is developed by using ASP.NET, and database is operated with SQL. The interface is friendly to browse and operate, and the data is easy to query. The following functions have been implemented, for example, student information’s addition, deletion and modification, as well as user's registration and privilege setup.

 

Key words: Student Management; B/S Structure; Background Database Design

 

 

  

论文总页数:22页

1 引言 1

1.1 课题背景 1

1.2 选题意义 1

1.3 主要研究内容 1

1.4 主要研究思路和方法 1

2 基础理论介绍 1

2.1 B/S模式 1

2.2 ASP.NET技术 2

2.3 C#语言 3

2.4 结构化查询语言SQL 3

3 系统方案 3

3.1 系统结构设计 3

3.2 系统模块划分 3

3.3 系统功能关系图 4

4 系统设计与实现 6

4.1 系统数据库设计 6

4.2 系统功能模块的设计与实现 9

5 系统测试 17

5.1 测试环境 17

5.2 测试过程 17

5.3 测试结果 19

结    论 19

参考文献 20

致    谢 21

声    明 22

 

 

 

 

 

引言

1.1 课题背景

随着科学技术、网络信息的不断发展,计算机科学也日渐成熟,其强大的功能已成为人们深刻认识,如今,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对学生信息进行管理,具有手工管理所无法比拟的优点。

现今学校的规模不断扩大,学生数量急剧增加,有关学生的各种信息量也成倍增长。而对庞大的信息量,需要有学生学籍管理系统来提高学生管理工作的效率。通过这样的系统,可以做到信息的规范管理,科学统计和快速查询,从而减少管理方面的工作量。

1.2 选题意义

针对目前学校发展迅速,学生管理要求不断加强和复杂化,在线学籍管理系统由此诞生,为使学校管理各种各样学生信息,为老师和学生方便简捷的查询所需信息和资源,也为了后台的维护和更新。学生学籍管理是一个教育单位不可缺少的部分,它的内容对于学校的管理和运行来说相当重要,所以本系统应该能够为用户提供充足的信息和快捷的查询方式。

1.3 主要研究内容

综合运用以前所学的专业知识,设计开发一个学籍管理系统,本设计要求实现部分功能——学籍的管理、学籍的录入、学籍的修改。具体包括以下内容:

(1)在设计与开发中,既探讨能实现用户对学籍资料的查询,又能实现安全可靠的修改,管理;

(2)能实现用户的添加与管理,添加时能进行身份验证。

1.4 主要研究思路和方法

主要针对B/S模式实现在线学籍管理,在界面外观上便于操作和浏览。数据库查询简单容易。

本系统将采用ASP.NET2.0来开发,用C#语言编写代码,SQL创立连接数据库。在模块开发和程序编写的过程中,学习和掌握系统模块的开发与设计,熟悉代码的编写和含义。掌握数据库的创建和修改、以及各个表之间的关系。

基础理论介绍

系统采用B/S工作模式,前台使用ASP.NET技术,用C#语言编译。后台使用SQL 2000数据库平台, 

2.1 B/S模式

B/S结构(Browser/Server结构)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN, WAN, Internet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全 。

2.2 ASP.NET技术 

(1)ASP.NET的含义

ASP.NET是一种将各种WEB元素组合在一起的服务器技术,是一个统一的WEB开发平台,它提供了生成一个完整的WEB应用程序所必需的各种服务。作为一种新的WEB技术,ASP.NET支持多种程序语言,如VB.NET、VC.NET和VC#等程序设计语言。ASP.NET在结构上与以前的版本不同,是一种建立在CLR(Common Language Runtime)基础上的程序开发架构。

(2)ASP.NET技术的特点:

1.增强的性能。ASP.NET 是在服务器上运行的编译好的公共语言运行库代码。与被解释的前辈不同,ASP.NET 可利用早期绑定、实时编译、本机优化和外缓存服务。

2.世界级的工具支持。ASP.NET 框架补充了 Visual Studio 集成开发环境中的大量工具箱和设计器。WYSIWYG 编辑、拖放服务器控件和自动部署只是这个强大的工具所提供功能中的少数几种。

3.威力和灵活性。由于 ASP.NET 基于公共语言运行库,因此 Web 应用程序开发人员可以利用整个平台的威力和灵活性。.NET 框架类库、消息处理和数据访问解决方案都可从 Web 无缝访问。ASP.NET 也与语言无关,所以可以选择最适合应用程序的语言,或跨多种语言分割应用程序。另外,公共语言运行库的交互性保证在迁移到 ASP.NET 时保留基于 COM 的开发中的现有投资。

4.简易性。ASP.NET 使执行常见任务变得容易,从简单的窗体提交和客户端身份验证到部署和站点配置。例如,ASP.NET 页框架使您可以生成将应用程序逻辑与表示代码清楚分开的用户界面,和在类似 Visual Basic 的简单窗体处理模型中处理事件。另外,公共语言运行库利用托管代码服务(如自动引用计数和垃圾回收)简化了开发。

5.可管理性。ASP.NET 采用基于文本的分层配置系统,简化了将设置应用于服务器环境和 Web 应用程序。由于配置信息是以纯文本形式存储的,因此可以在没有本地管理工具帮助的情况下应用新设置。此“零本地管理”哲学也扩展到了 ASP.NET 框架应用程序的部署。只需将必要的文件复制到服务器,即可将 ASP.NET 框架应用程序部署到服务器。不需要重新启动服务器,即使是在部署或替换运行的编译代码时。

6.可缩放性和可用性。ASP.NET 在设计时考虑了可缩放性,增加了专门用于在聚集环境和多处理器环境中提高性能的功能。另外,进程受到 ASP.NET 运行库的密切监视和管理,以便当进程行为不正常(泄漏、死锁)时,可就地创建新进程,以帮助保持应用程序始终可用于处理请求。

7.自定义性和扩展性。ASP.NET 随附了一个设计周到的结构,它使开发人员可以在适当的级别“插入”代码。实际上,可以用自己编写的自定义组件扩展或替换 ASP.NET 运行库的任何子组件。实现自定义身份验证或状态服务一直没有变得更容易。

8.安全性。借助内置的 Windows 身份验证和基于每个应用程序的配置,可以保证应用程序是安全的。

2.3 C#语言

C#是一种新的编程语言,是Microsoft Visual Studio.NET的一部分。C#是一种简单、类型安全、面向对象的编程语言,其语法风格源自C/C++语言。在语法和思维方面上,C#同Java非常相近。C#的优点是兼有Visual Basic语言的易用性和C/C++的执行效率。

2.4 结构化查询语言SQL

SQL全称是“结构化查询语言(Structured Query Language)”,它是数据库的核心语言。可以完成数据查询、数据定义、数据操作、数据控制等操作。SQL是一个标准的数据库语言,是面向集合的描述性非过程化语言。最早的是IBM的圣约瑟研究实验室为其关系数据库管理系统SYSTEM R开发的一种查询语言,它的前身是SQUARE语言。SQL语言结构简洁,功能强大,简单易学,所以自从IBM公司1981年推出以来,SQL语言,得到了广泛的应用。

系统方案

3.1 系统结构设计

学生学籍管理系统是一个完整的学校学生信息管理系统。在本系统中主要包括用户登录和注册功能、用户和角色管理功能、教师信息管理功能、班级和年级管理功能、课程信息管理功能、学生信息管理功能,学生成绩管理功能等。

3.2 系统模块划分

根据系统需求分析,系统划分为7个模块:

1.用户登录和注册模块

用户登录和注册功能主要包括的功能如下:

用户登录:验证用户的信息是否合法,以及验证用户是否为系统的合法用户。

用户注册:由系统管理员添加新的用户。

2.用户和角色管理功能

用户和角色管理功能主要包括用户管理、角色管理及其用户和角色之间的关系管理。在系统中主要包括:用户管理、角色管理、添加角色和用户修改密码。 

3.教师信息管理功能

教师信息管理功能主要对教师信息的管理,如教师信息的添加、修改和删除等。在系统中主要包括:添加新的教师信息、删除教师信息、删除教师信息。

4.班级和年级管理功能

班级和年级管理功能主要实现班级和年级的管理功能,如班级和年级的添加、修改、删除、查看等。在系统中主要包括管理班级和年级、添加班级和年级、修改班级和年级、查看班级和年级。

5.课程信息管理功能

课程信息管理功能主要对课程信息进行管理,如课程信息的添加、修改、删除等。在系统中主要包括添加课程信息、添加课程信息、删除课程信息。

6.学生信息管理功能

学生信息管理功能主要对学生信息进行管理,如学生信息的添加、修改、删除等。在系统中主要包括添加学生信息、修改学生信息、删除学生信息。

7.学生成绩管理功能

学生成绩管理功能主要对学生的成绩进行管理,如学生成绩的添加、删除、修改等。在系统中主要包括添加学生信息、修改学生信息、删除学生信息。

3.3 系统功能关系图

1.系统功能关系图,如图1

图1  系统功能关系图

2.学生模块

学生登录系统后,学生可以操作学生信息的查看,学生成绩的查询和学生退出系统。学生信息查看主要对学生信息进行浏览,如学生信息的姓名、地址、联系方式等。学生成绩管理查询主要对学生的成绩进行浏览,如学生成绩的分数、科目,如图2。

图2  学生模块

3.教师模块

教师登录系统后,教师可以操作学生和教师信息的查看,学生成绩的添加、删除和修改,以及教师退出系统。信息查看主要对信息进行浏览,如信息的姓名、地址、联系方式等,这里可以查看到教师和学生的信息。学生成绩管理功能主要对学生的成绩进行管理,如学生成绩的添加、删除、修改等,如图3。

图3  教师模块

4.系统管理员模块

系统管理员是系统最大权限的拥有者。在本系统中主要包括用户登录和注册功能、用户和角色管理功能、教师信息管理功能、班级和年级管理功能、课程信息管理功能、学生信息管理功能,学生成绩管理功能等,如图4。

 

 

 

 

 

图4  系统管理员模块

系统设计与实现

4.1 系统数据库设计

总体设计:数据库包括用户数据、角色数据、部门数据、教师数据、年级和班级数据、学生数据、课程数据、成绩数据。

1.功能模块表(Tree)

功能模块表Tree用来存储功能模块的数据。

表1  功能模块表

字段名

数据类型

字段说明

键引用

备注

TreeID

Int

功能模块ID

PK

主键(自动增一)

Title

Varchar(200)

功能模块名称

 

 

ParentID

Int

父节点ID

 

 

Url

Varchar(200)

页面链接地址

 

 

ProName

Varchar(200)

功能模块所属的名称

 

 

 

2.角色表(Role)

角色表Role用来存储系统的角色数据。

表2  角色表

字段名

数据类型

字段说明

键引用

备注

RoleID

Int

角色ID

PK

主键(自动增一)

RoleName

Varchar

角色名称

 

 

TreeID

int

关联的功能模块ID

 

引用表Tree的TreeID的字段

 

3.用户表(User)

用户表User用来存储用户的数据。

表3 用户表

字段名

数据类型

字段说明

键引用

备注

UserID

Int

用户ID

PK

主键(自动增一)

UserName

Varchar(200)

用户名称

 

 

Password

Varchar(255)

用户密码

 

 

Email

Varchar(200)

电子邮件

 

 

RoleID

 

所属角色ID

FK

引用Role表的RoleID字段

 

4.年级表(Grade)

年级表Grade用来存储年级的信息。

表4  年级表

字段名

数据类型

字段说明

键引用

备注

GradeID

Int

年级ID

PK

主键(自动增一)

Desn

Varchar(200)

年级名称

 

 

YearDate

Int

时间(年)

 

 

Swmester

int

包含的学期

 

 

 

5.部门表(Department)

部门表Department用来存储部门的信息。

表5  部门表

字段名

数据类型

字段说明

键引用

备注

DepartmentID

Int

部门ID

PK

主键(自动增一)

Desn

Varchar(200)

部门名称

 

 

Body

text

部门备注

 

 

 

6.教师表(Teacher)

教师表Teacher用来存储教师的信息。

表6  教师表

字段名

数据类型

字段说明

键引用

备注

TeacherID

Int

教师ID

PK

主键(自动增一)

Name

Varchar(200)

教师姓名

 

 

Age

Int

年龄

 

 

Address

int

联系地址

 

 

Phone

Varchar(200)

联系电话

 

 

Birthday

Datetime

出生日期

 

 

HireDate

Datetime

雇用日期

 

 

DepartmentID

int

所属部门

FK

引用Department表的DepartmentID字段

 

7.班级表(Class)

班级表Class用来存储班级的信息。

表7  班级表

字段名

数据类型

字段说明

键引用

备注

ClassID

Int

班级ID

PK

主键(自动增一)

Desn

Varcher(200)

班级名称

 

 

TeacherID

Int

班主任ID

FK

引用Teacher表的TeacherID字段

GradeID

Int

所属年级ID

FK

引用Grade表的GradeID字段

StartDate

Datetime

开始日期

 

 

EndDate

Datetime

结束日期

 

 

StuNum

int

学生数量

 

 

 

8.课程表(Course)

课程表Course用来存储班级的信息。

表8  课程表

字段名

数据类型

字段说明

键引用

备注

CourseID

Int

课程ID

PK

主键(自动增一)

Desn

Varchar(200)

课程名称

 

 

Body

Text

课程的详细信息

 

 

StartDate

Datetime

开始日期

 

 

EndDate

Datetime

结束日期

 

 

CourseHour

Int

课时

 

 

TeacherID

Int

任课教师ID

FK

引用Teacher表的TeacherID字段

ExamineDate

Datetime

考试时间

 

 

TotalMark

decimal

总学分

 

 

 

9.学生信息表(Student)

学生信息表Student用来存储班级的信息。

表9  学生信息表

字段名

数据类型

字段说明

键引用

备注

StudentID

Int

学生ID

PK

主键(自动增一)

ClassID

Int

班级ID

FK

引用Class表的ClassID字段

Name

Varcher(200)

学生姓名

 

 

Age

Int

年龄

 

 

Sex

Int

性别

 

 

Address

int

联系地址

 

 

Phone

Varcher(200)

联系电话

 

 

Birthday

Datetime

出生日期

 

 

EntranceDate

Datetime

入学时间

 

 

Nationality

Varcher(200)

民族

 

 

Political

Varcher(200)

政治面貌

 

 

NativePlace

Varcher(200)

籍贯

 

 

IdentityCard

Varcher(200)

身份证号码

 

 

Marital

int

婚姻状况

 

 

Hukou

Varcher(200)

户口

 

 

State

int

学生状态

 

1.在校2.休学3.退学4.离校5.其他

Desn

text

备注

 

 

 

10.成绩表(Score)

成绩表Score用来存储班级的信息。

表10  成绩表

字段名

数据类型

字段说明

键引用

备注

ScoreID

Int

成绩ID

PK

主键(自动增一)

CourseID

Int

课程ID

FK

引用Course表的CourseID字段

StudentID

Int

学生ID

FK

引用Student表的StudentID字段

Mark

Decimal

课程成绩

 

 

Flag

int

审核的标志

 

 

 

 

在本系统数据库中,各个表之间的关系比较简单,表之间的引用关系也比较简单。用户表User通过Role表和功能模块表Tree形成关联;教师表Teacher引用部门表Department;班级表Class和课程Course都引用教师表Teacher的主键ID作为外键;班级表Class还引用年级表Grade的主键ID作外键;学生表Student引用班级表Class的主键ID作外键;成绩表Score分别引用学生表Student,课程表Course的主键ID作外键;最终设计各个表之间的关系图,如图5。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

图5 数据库表关系

4.2 系统功能模块的设计与实现

系统主要针对B/S模式实现在线学籍管理,要求在界面外观上便于操作和浏览。数据库查询简单容易。在设计系统界面时,为了能使系统便于操作和浏览,我把系统主页面分左右设计。左边主要是功能模块的选择,登入系统后,点击[学生信息管理系统],用Treeview下拉导航出系统所以可操作的功能,用户根据自己身份的权限进行操作。右边是点击功能模块相关项后出现的操作界面。

系统总的设计风格是简单、简捷、便于所以用户操作。在外观上便于信息的浏览和查找,用户功能模块查看清晰,使用方便。在外观颜色基调是蓝色,比较柔和、轻快,不易产生视觉疲劳。

1.系统登录模块

登录功能由LoginBtn按钮控件实现,它触发LoginBtn_Click(object sender,EventArgs e)事件。该事件验证用户输入的用户名称和密码是否正确,只有当都正确时才能登录系统中,否则页面将通过Message控件显示相关错误信息。用户登录成功后,将跳转到Main.aspx(系统主界面)。

验证用户名称和密码时,通过User类的函数GetUserLogin()从数据库获取用户的ID信息。如果ID为空,则用户登录失败。用户登录成功后,程序使用Session变量保存用户的ID信息。首先定义类并获取用户的登陆信息,再通过用户输入的信息判断用户是否合法,再验证用户合法性,并跳转到系统平台,如图6。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

图6 系统登录模块

基于BS结构的在线学籍管理系统[点击下载]

如需要全部源码,联系QQ:2812491287如需要全部源码,联系QQ:2812491287

评论