当前位置:文档之家› asp .net学生管理系统课程设计报告

asp .net学生管理系统课程设计报告

华北科技学院

课程设计说明书

学号:201207014316

班级: 计科B123 姓名:小星星

设计题目:学生信息管理系统

设计地点:华北科技学院

设计时间:2015-12-28 至2016-1-8

成绩评定:

1、工作量: A(),B(),C(),D(),F( )

2、难易度:A(),B(),C(),D(),F( )

3、答辩情况:

基本操作:A(),B(),C(),D(),F( )代码理解:A(),B(),C(),D(),F( )

4、报告规范度:A(),B(),C(),D(),F( )

5、学习态度:A(),B(),C(),D(),F( )总评成绩:___________________________

指导教师:___________________________

1.课程设计目标和内容

1.1课程设计目标

使学生综合使用所学过的https://www.doczj.com/doc/d810069802.html,网络编程知识,掌握网络环境程序设计的基本概念;结合实际的操作和设计,巩固课堂学习内容,掌握网络环境编程的特点、原理和技术;将理论与实际相结合,应用现有的网络编程软件,结合数据库管理系统软件,规范、科学地完成一个小型网站的设计与实现。在此基础上强化学生的实践意识、提高其实际动手能力和创新能力。

课程设计的目的和要求:

(1)通过本课程设计的实践及其前后的准备与总结,复习、领会、巩固和运用课堂上所学的网络编程方法和知识。

(2)为学生适应毕业后团队合作,开发规模稍大项目和综合应用本专业所学习的多门课程知识创造实践机会。

(3)通过编写课程设计总结报告,培养学生撰写程序设计开发文档的能力。课程设计的思想和方法还可以作为学生做毕业论文时的参考资料。

(4)通过查阅手册和文献资料,培养学生独立分析问题和解决问题的能力。为学生做毕业设计打好基础。

(5)通过较大的富有挑战性的软件实验项目开发实践,为学生提供主动学习、积极探索与大胆创新的机会。比如,对web网页设计、https://www.doczj.com/doc/d810069802.html,交互网页技术、数据库应用、电子商务、客户机与服务器技术的应用。

(6)初步掌握开发一个小型实用程序的基本方法:结合实际应用的要求,使课程设计的内容既覆盖知识点,又接近工程实际需要。通过激发学习兴趣,调动学生主动学习的积极性,并引导他们根据实际编程要求,训练自己实际分析问题的能力及编程能力,并养成良好的编程习惯。

(7)培养学生的创新能力和创新思维。学生可以根据指导书和相关文献上的参考方法,自己设计出相应的应用程序。

(8)培养学生良好的程序设计风格。在实际编程中,为了提高编程质量,对空行、空格和注释均有要求。学生在课程设计书写代码时,应该严格按要求处理,以便建立良好的程序设计风格。

1.2设计环境

硬件:PC机,档次不低于CPU为P4,内存为512M,40G硬盘,其它硬件与此相

配套。

软件:操作系统为Windows XP或Windows 7,Microsoft Visual Studio 2010、Microsoft SQL 2008

1.3基本要求

(1)在https://www.doczj.com/doc/d810069802.html,网络编程课程设计指导老师的指导下,选定一个设计题目,完成软件的分析、设计和实现,并提交相应文档。课程设计完成至少包含五个功能模块。

(2)可以选择老师提供的参考选题,也可以自选,如果自选,需要将自选题目的详细内容以及实现要求提供给老师,老师批准后方可采用。

(3)要求利用模块化程序设计方法以及面向对象的编程思想来完成系统的设计。

(4)要求数据库结构设计合理,数据表字段结构设计详细,整个网站应包含多个页面且界面友好,设计中包括多个控件元素。

(5)学生所选课题必须上机通过,并获得满意的结果。

(6)程序书写风格:采用缩排格式编写程序。

(7)https://www.doczj.com/doc/d810069802.html,网络编程课程设计要在规定时间内,由学生独立完成,出现问题时,任课教师应当指引学生独立分析并解决问题。

(8)https://www.doczj.com/doc/d810069802.html,网络编程课程设计说明书书写正确、描述规范,要求附源代码,并且要进行设计总结。

2.需求分析

2.1需求详述

新的一个学期开始之后,学校教工人员可以添加新的班级信息,比如班级等;如果中途有新转来或转走或退学的学生,也可以修改班级信息;学生毕业之后,学校教工人员可以删除该班的所有信息。另外该系统应该提供一个方便的查询班级信息的接口。

学生登陆系统之后可以查看自己的信息,可以修改自己的用户密码,可以留言给教工人员,教工人员根据对留言的管理来改进教学

安全需求,非教工人员不可进入管理员界面进行班级和学生信息的修改,教工人员可对班级和学生进行增删改查。

鉴于这样的需求,这里通过https://www.doczj.com/doc/d810069802.html,技术编写出学生信息管理系统的服务器端程序。

本系统主要是对学生信息(如学号、姓名、性别、家庭住址等)进行管理,该系统必须有以下几个模块:

录入学生信息、查询学生信息、修改及删除学生信息、班级管理和留言管理。

2.2功能需求

学生:查看个人信息,修改用户密码,留言

管理员:录入班级信息,录入学生信息,班级信息管理,学生信息管理,留言管理

3. 总体设计

3.1 功能详细描述

学生信息管理系统主要有登陆注册模块、学生信息管理模块、班级信息管理模块、留言管理模块,系统功能图如下所示

学生通过注册成为用户,可以进行信息查询和添加留言的操作,管理员可以录入学生和班级信息,同时可以对班级和学生进行增删改查的操作。

4. 详细设计

4.1 数据库设计

数据库主要分为四个表,分别为管理员表manager,学生表xuesheng ,班级表banji,留言表board 。 Manager 表

xuesheng 表:classId 为banji 表的外键

学生信息管理系统

户登录

用户注册

班级管理

学生管理

留言管理

录入班级

录入学生

添加留言

学生

管理员

信息查询

banji表

board表:stuId为xuesheng表的外键

4.2模块逻辑设计

(1)登录模块

登录模块主要分为学生登录和管理员登录,两个登录方法如下

//学生登陆逻

protected void UserLogin(SqlConnection conn, string cmdText) { SqlCommand command = new SqlCommand(cmdText, conn);

try

{

//打开连接

conn.Open();

SqlDataReader dr = command.ExecuteReader();

while (dr.Read())

{

if(dr["stuId"].ToString().Equals(UserId.Text)&&

dr["pwd"].ToString().Equals(Userpwd.Text)){

Session["stuId"] = UserId.Text;

Session["name"] = dr["name"];

Response.Redirect("student/zhuyestu.aspx");

}

}

dr.Close();

}

catch (SqlException sqlex)

{

//显示错误信息

Response.Write(sqlex.Message + "
");

}

finally

{

//关闭数据库链接

conn.Close();

}

}

//管理员登录逻辑

protected void AdminLogin(SqlConnection conn, string cmdText)

{

SqlCommand command = new SqlCommand(cmdText, conn);

try

{

conn.Open();

SqlDataReader dr = command.ExecuteReader();

while (dr.Read())

{

if(dr["username"].Equals(UserId.Text)&&

dr["password"].Equals(Userpwd.Text))

{

Session["adminName"] = UserId.Text;

Response.Redirect("admin/zhuye.aspx");

}

}

dr.Close();

}

catch (SqlException sqlex)

{

Response.Write(sqlex.Message + "
");

}

finally

{

conn.Close();

}

(2)添加信息模块

添加信息包含班级信息的添加、学生信息的添加和留言信息的添加,如下

为班级信息的添加

string connectionString =

ConfigurationManager.ConnectionStrings["ConnectionString"].Conne

ctionString;

SqlConnection conn = new SqlConnection(connectionString);

String className=TextBox1.Text.ToString();

try

{

if (className != null && className != "")

conn.Open();

string cmdText = "INSERT INTO banji(class)VALUES('" + className + "')";

SqlCommand command = new SqlCommand(cmdText, conn);

command.ExecuteNonQuery();

}

}

catch (SqlException sqlex)

{

Response.Write(sqlex.Message + "
");

}

finally

{

conn.Close();

}

4.3界面设计

(1)登录界面如下

(2)用户注册界面

(3)管理员主页

(4)添加班级界面

(5)学生信息录入界面

(6)班级管理

(7)学生信息管理

(8)插入留言

(9)留言管理

5.系统测试

测试是在系统交付运行前,对软件的需求分析,设计规格和编码的最终复查。测试的内容应当包括界面测试、功能测试、需求测试和性能测试等。

管理员和学生通过输入正确的用户名与密码进入到不同的主页,当管理员或用户输入的用户名与密码不符时,会出现相应的提示信息。在未登录的情况下在地址框内直接输入各个界面地址不可直接进入而是跳到登录界面,当登录之后输入各个界面地址可进入,对管理员和学生进行安全认证,注销之后可销毁Session对象。

通过测试与调试,测试成功系统可以运行。

6.设计体会和小结

这次课程设计,我收获颇丰,首先是把原来淡忘的知识重新温故了一遍,很多知识直接做一点也想不起来了,但是只要稍微看下提示,或是书中的范例,那些语

法,方法都又跃然纸上,要是没有这个课程设计,说不定再过半年什么的,我就把

原来的知识都忘得干干净净的了。

这次课程设计使我学会了在短期时间内的系统开发,我感觉这种开发首先应该全神贯注,抓紧时间,应该先对系统中的主要功能加以认真实现,对细枝末节尽

量完善,避免由于这些小错误而出现的系统崩溃等现象。

通过本次课程设计,我加深了对数据库知识的了解。为了做好这次课程设计,

我复习了一遍跟题目相关的数据库知识和C#编程语言,特别是需要实现的那部分

原理。除此之外,还有上网查询一些相关的资料,和一些实际问题实现的例子,通

过理解别人实现的过程,学习实现的一些基本思路。在这个过程中,我对整个连接

数据库程序的过程有了一个更立体的认识和了解。在这次的设计中,让我进一步认

识了数据库的设计过程以及设计各阶段所做的工作和要注意的细节部分,对于数据

库的功能也有了更深的了解。

经过将近两周的课程设计,使我们对书本知识有了更深的了解和巩固,基本对该门课程体系熟悉,要求我们掌握数据库原理的应用,这也体现了知识结构的相互作用和衔接。在成功喜悦的同时我深知自己掌握的知识还远远不够,将学习到的一些理论知识应用到实践中去,总会出现这样或那样的问题,不是理论没有掌握好,而是光知道书本上的知识是远远不够的,一定要把理论知识和实践结合起来。把学到的知识应用到时间中去,多做多练,才可以把理论的精华发挥出来。知识不是知道,了解就好,一定要去应用它,发展它,让它在现实生活中得到充分的应用,从而解决一些问题,这才是学习的根本目的。而且知识又不是单一的,它是互相联系的,学科与学科之间都有着内在的联系。计算机是一门非常复杂且庞大的学科,一项课题往往需要多项技术才可以完成的。在设计阶段,通过对课题的深入分析与研究,迫使我们们对技术有了一定的了解。计算机技术的高速发展,使我们深深地认识到只有不断的加强学习,才能在计算机技术方面不至于被淘汰,今后,我还需加强学习。

相关主题
文本预览
相关文档 最新文档