搜索
您的当前位置:首页asp net课程设计-教师信息管理系统

asp net课程设计-教师信息管理系统

时间:2021-09-23 来源:乌哈旅游


asp net课程设计-教

师信息管理系统

-CAL-FENGHAI.Network Information Technology Company.2020YEAR

教师信息管理系统 1.课程设计的目的 为了进一步巩固课堂上所学到的知识,锻炼解决实际问题的能力。利用一周时间,使用Visual Studio 2010开发工具完成教师信息管理系统的分析设计和开发。 教师信息管理系统其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面,对于前者要求建立起数据库一致性和完整性、安全性好的数据库。而对于后者则要求应用程序功能完备,易使用的特点。经过分析,我们使用易于与数据库连接的Visual Studio开发工具,利用其提供的各种面向对象的开发工具,尤其是数据库窗口这一功能强大而简洁操纵数据库的智能化对象,首先在短时间内建立系统应用原形,然后对初始原型系统进行需求分析,不断修正和改进,直到形成用户满意的可行系统。 本系统采用软件工程的指导方法,选用B/S模式设计的方案,应用SQL Server 2008数据库管理系统, Visual Studio 2010开发工具等开发出来的基于WINDOWS系列的教师信息管理系统.该系统面向各部门和全体教师,实现对教师的信息以及公告,通讯情况,又要实现信息共享等。只有进行实际操作,才能将理论知识和实际应用有机的结合起来。 2 2.设计方案论证 2.1系统分析 (1)对系统的简要描述 使用了先进的数据库技术与数据管理技术,使数据的准确性与安全性得到了很大的提高,且在用户的并行操作与用户管理方面也有了极大地改善。 (2)行性分析 研究在当前的具体条件下,开发新系统是否具备必要的资源和其它条件。一般说来,应从技术可行性、经济可行性、运行可行性等方面研究可行性。可行性研究需要的时间长短取决于工程的规模,一般说来,可行性研究的成本只占预期的工程中成本的5-10%。 (3)技术可行性分析 技术上的可行性分析要考虑将来要采用的硬件和软件技术能否满足用户(这里是校方)提出的要求(如计算机的容量、速度等)。此外,还要考虑开发人员的水平,作为计算机专业毕业的学生,数据库设计方面对于我们应该还过得去,在学校里生活了五年,对这个管理模式应该比较熟悉。 我们掌握了数据库及其应用技术、数据库原理、计算机网络技术等课程,对数据库的设计、应用、维护及局域网的组成有了深刻的认识与一定的动手实践能力,从一定程度上具备了开发一个小型系统的能力。 (4)经济可行性 主要从对项目的经济上进行分析评价,一方面是支出的费用,包括设备购置费、管理和维护费用、人员工资和培训费等,另一个是取得的收益。这是个超小型的管理系统,从投入的人力,财力与物力来讲是非常之小的,只要一台电脑,一台打印机,3 这个系统就可以搞起来。从节省人力方面,可以让管理人员从繁与复杂的工作中解脱出来,做更多的工作,可以给教学管理提高一个层次。 (5)运行可行性 Internet正在迅猛发展,学院从硬件到软件都投入了大量的人力、物力、财力,在教务上,给各个办公室配置了计算机,并能联接到互联网,并且学院领导对这方面比较重视,在教务上配置了一定数目的能够训练操作计算机的干事,可以快速、方便、高效地使用计算机进行日常工作。学院开展了计算机及其维修专业,可让学生以实践方式对系统进行维护,使此系统在实践上具备了可行性。 由此可知,开发教师信息管理系统在学校中具有可行性。 2.2需求分析 任何一个组织或是集体,实现它内部人员的管理或是各个部门的协同工作都是必要的。作为一个学校,要管理许多教师的档案以及考试,奖惩情况,又要实现信息共享,愈来愈成为老师们管理的一个难题。因此,一个便利的教师信息管理系统在众人的期盼中需要实现。 随着因特网发展的日新月异,人们利用网络来实现相互之间的协同工作以及资源共享越来越成为时代的潮流,一个不可扭转的趋势。目前,因特网已经深入到我们生活的各个领域——学校,银行,医院,公司,企业等等。因此,我们在这里用Visual Studio 2005和SQL Server 2008开发教师信息管理更是顺应了时代发展的方向。我们要实现的系统主要面向一个中小学校。各个部门或老师的主要任务是实现相应的信息发布,更新,录入工作,而教师则主要实现信息的反馈,相应的查询事件。要实现这个系统,需要先调研,弄清楚各个部门和教师的需求情况,以便于有的放矢。系统的开发过程需要两台机器,需要安装win2000/xp服务器版以及完成相关的配4 置。开发由本人独自开发。程序完成以后,需要调试运行,整个实现需要一个星期左右。 (1)需求 教师档案管理:教师的基本信息与个人情况。 (2)性能需求 该档案管理系统主要实现的是信息的录入,发布,更新,因此,不管对学校管理的需要或是教师获知信息的需要以及各个部门之间的紧密衔接关系,网上的数据必须具有高度的完整性和准确性,这就要求系统的高度安全性,可维护性,可靠性及灵活性。比如教师档案管理,老师在录入档案的时候或是数据库出现异常而产生差错,可能会影响教师奖惩的评定或是造成不该重修的出现重修情况,这就要求系统具有高度的安全性,可维护性和可靠性;灵活性指的是系统要具有强大的功能以适应不同层次的用户不同的需求。另外,系统的操作界面要求简便,通俗,以便于操作。 2.3系统设计 模块设计 模块是软件结构的基础,软件结构的好坏完全由模块的属性体现出来,把软件模块化的目的是为了降低软件复杂性,使软件设计,测试,调试,维护等工作变得简易,但随着模块数目的增加,通过接口连接这些模块的工作量也随之增加。从这些特性可得出如图九的一条总的成本(或工作量)曲线,在考虑模块化时,应尽量使模块数接近于图中的M,它使得研制成本最小,而且应尽量避免不足的模块化或超量。 功能分配 从程序的结构中可以看出,教师的信息输入功能是由教师进行的。教师的信息输出功能是由管理员进行的。教师活动的信息输入输出也是由管理员进行的。 接口设计 5 由于系统的各种内外部接口是通过借助数据库开发软件来实现的,是完全在数据库内部操作的,故在此略过此内容。 根据使用人员对信息、信息处理和信息安全性、完整性的要求,分别对用户的信息需求目标进行分析: (1)登录模块:为了每位教师的个人安全,在进入系统之前先要进行登录,设置了用户名和密码,来保护教师个人信息。 (2)教师模块:设置修改信息、查看通信录、查看公告等信息处理功能。 (3)管理员模块:设置了添加教师、查看通信录、查看公告等信息。 分别从教师和管理员对主要功能模块进行描述。系统功能如图1所示 教师信息管理系统 登录 教师 管理员 6 修改信查 看查 看公图1 模块图 添 加教查 看通 查看公2.4数据库的设计 进行数据库程序设计,首先要做的工作就是设计数据库表格,就是设计每一个表应该由哪几列构成,这项工作看似很简单,实际上是很复杂的,实现得不好,会使表格中产生大量的重复性数据,造成存储空间的浪费,还有可能造成记录内容的不一致,即所谓的存储异常问题。 数据表格的设计是很重要的,如果设计的不合理,将会带来大量的问题。为了解决上面这个问题,我们应该将上述表格分成几个表格,具体的如何分解表格才算符合要求,这就需要用到数据组织的规范化形式。 在数据的规范化表达中,一般将一组相关联的数据称为一个关系,而在这个关系下的每个数据指标项则被称为数据元素,这种关系落实到具体数据库上就是基本表,而数据元素就是基本表中的一个字段。规范化表达还规定在每一个基本表中必须定义一个数据元素为关键字,它可以唯一的标识出该表中其他相关的数据元素。 在规范化理论中表是二维的,它具有如下四个性质: (1)在表中的任意一列上,数据项应属于同一个属性。 (2)表中所有行都是不相同的,不允许有重复组出现。 (3)在表中,行的顺序无关紧要。 (4)在表中,列的顺序无关紧要,但不能重复。 7 ASP.NET是借助SQL Server 2008来实现的数据库对数据进行统一管理的。在教师信息管理系统中需创建SQL Server 2008数据库“教师信息管理系统”,该数据库包含的表有Admin(管理员信息表)、tblUser(职员信息表)、Teacher(教师表)、Notice(公告信息表)、TeacherAddressBook(教师通讯录表)。 2.4.1 Admin管理员信息表 表1 Admin表 字段名称 username password addtime 2.4.2 tblUser职员信息表 表2 tblUser表 字段名称 username password addtime 2.4.3 Teacher教师表 3 Teacher表 字段名称 operator_id operator_name operator level operator_level operator_ phone 2.4.4 Notic 公共表 表4 Notice表 字段名称 PID PName CID 数据类型 int nvarchar(100) int 允许空 否 否 否 字段说明 公告ID 公告名称 公告类别ID 类型 文本 文本 文本 文本 文本 长度 允许空 是否主键 否 是 50 否 否 50 否 否 50 否 否 50 否 否 50 字段说明 教师编号 教师姓名 教师密码 确认密码 电话 数据类型 允许空 nvarchar(50) 否 nvarchar(50) 否 nvarchar(50) 否 字段说明 职员登录名 职员密码 职员注册时间 数据类型 nvarchar(50) nvarchar(50) datetime 允许空 否 否 否 字段说明 管理员登录名 管理员密码 管理员注册时间 8 PCTime PFPrice money money 否 否 公告时间 公告必读 2.4.5 TeacherAddressBook教师通讯录 表5 TeacherAddressBook表 列 名 PName Phone PCPrice Email OState 序号 1 2 3 4 列名 Id Title Body DateAdded 数据类型 int nvarchar ntext datetime 数据类型 nvarchar(50) int money nvarchar(50) int 长度 4 100 16 8 标识 √ 允许空 否 否 否 否 否 表6 Placard表 字段说明 教师名称 教师号码 教师编号 用户Email 状态 允许空 字段说明 公告编号 标题 正文 添加日期 主键 √ 数据库管理,利用Microsoft SQL Server 2008数据库管理系统来建立及管理本教师信息管理系统的数据库Teacher.MDF。 2.5面向对象的程序设计 (1) 面向对象设计不再是单纯的从代码的第一行一直编到最后一行,而是考虑如何创建类和对象,利用类和对象来简化程序设计,并提供代码的封装和重用性,便于程序的维护与扩展。 (2) 所谓的对象是一种抽象的名称,用来对应实现世界存在的“东西”。一个窗口、一个按钮、一个菜单都可视为一个对象,而按钮对象、菜单对象、又会出现在窗9 口对象中,因此按钮对象、菜单对象便是窗口的组件之一。对象内部的数据是不能随意更改的,必须由外部向其传递信息,再由对象按其方法加以处理。用户无需知道其任何细节,操作是封闭的,对象之间能通过函数调用相互通信。 (3) 类可视为一个产品模具、一个模块。在面向对象设计中,类是对象的原型,是对象的制作器。类的概念是面向对象程序设计最重要的特征。所谓类,是指由数据结构及其相关操作所形成的集合,描述该类任意对象的共同的行为特征,是对一组性质相同的对象的程序描述,概括了对象的共同性质和数据。 (4) 面向对象设计的核心是类的设计。例如:可以定义一个“成绩查询”类,该类中可以定义查询的姓名、学号、班级等信息,则以此类为原型可以设计出众多的“成绩查询”类的对象实例,这些实体都具有类中所定义的特征。 只要资源和时间不加以限制, 所有的项目都是可行的, 然而, 由于资源缺乏和交付时间限制的困扰, 给基于计算机系统的开发带来了困难。 因此对软件项目的可行性做出细致而谨慎的评估是十分必要的。如果在定义阶段尽早发现将来可能在开发过程中遇到的问题, 及早做出决定, 可以避免大量的人工, 金钱, 时间上的浪费。 因此, 我在开发教师信息管理系统之前, 对本次开发的可行性进行了分析。 3.设计结果与分析 3.1 用户登录模块的实现 在整个教师信息管理系统中,首先要做的就是系统的登录。只有有正确用户名及密码的用户才能进入系统界面,系统登录界面如图 2所示。 10 图2 用户登录界面 系统登录的主要代码如下: public partial class MyControl_UserLogin : System.Web.UI.UserControl { BaseClass bc = new BaseClass(); protected void Page_Load(object sender, EventArgs e) { } #region 登录函数 protected void btnLogin_Click(object sender, EventArgs e) { //先连接 if (txtPwd .Text == \"\" ||txtName .Text == \"\") { Response.Write(bc.MessageBox(\"用户名和密码不能为空\")); return; } if (rdoBtnAdmin.Checked ) //管理员登录 { DataSet ds = bc.GetDataSet(\"select count(*) from sy_sysUser where userName='\" + txtName.Text + \"'and userPwd='\" + txtPwd.Text + \"'and system=1\11 if (ds.Tables [0].Rows.Count >0) { //如果登录成功,则记录登录时间; bc.SqlExecute(\"update sy_sysUser set logintime='\" + DateTime.Now + \"',sign=1 where userName='\" + txtName.Text + \"'\"); //存储登录用户名; Session[\"LoginName\"]=txtName.Text; // 转入管理页面; Response.Redirect (\"~/SystemDefault.aspx\"); } else { Response .Write (bc.MessageBox (\"用户名和密码错误!\")); return; } } else// 普通用户登录 { DataSet ds = bc.GetDataSet(\"select userName from sy_sysUser where userName='\" + txtName.Text + \"'and userPwd='\" + txtPwd.Text + \"'and system=0\ int i = ds.Tables[0].Rows.Count; if (ds.Tables[0].Rows.Count>0) { bc.SqlExecute(\"update sy_sysUser set logintime='\" + DateTime.Now + \"',sign=1 where userName='\" + txtName.Text + \"'\"); Session[\"LoginName\"] = txtName.Text; Response.Redirect(\"~/SystemDefault.aspx\"); } else { Response.Write(bc.MessageBox(\"用户名和密码错误!\")); return; } 12 } } #endregion protected void btnCancel_Click(object sender, EventArgs e) { this.txtName.Text = \"\"; this.txtPwd.Text = \"\"; } } 3.2主界面 这里是用户登录后看到的第一个界面,在主界面中可以进行查看公告,查看教师信息,修改教师信息和查看教师通信录。主界面如图3 所示 图3主界面 主界面程序代码如下: 13 14 3.3公告模块 公告模块主要功能可以进行查看学校发布的公告,查看之后对公告进行删除操作。公告功能功能模块如图4所示。 图 4公告功能模块界面 公告模块主要代码如下: protected void Page_Load(object sender, EventArgs e) { if (Session[\"LoginName\"]==null) { Response.Write(\"\"); } if (!IsPostBack) { DataSet ds = bc.GetDataSet(\"select * from sy_notice\ this.DataList1.DataKeyField = \"noticeID\"; DataList1.DataSource = ds; DataList1.DataBind(); } } protected void DataList1_DeleteCommand(object source, DataListCommandEventArgs e) { int id = (int)DataList1.DataKeys[e.Item.ItemIndex]; bc.SqlExecute(\"delete from sy_notice where noticeID ='\" + id + \"'\"); 15 DataList1.DataSource = bc.GetDataSet(\"select * from sy_notice\ DataList1.DataKeyField = \"noticeID\"; DataList1.DataBind(); } protected void DataList1_ItemDataBound(object sender, DataListItemEventArgs e) { string strTitle; int id = (int)DataList1.DataKeys[e.Item.ItemIndex]; DataSet ds = bc.GetDataSet(\"select * from sy_notice where noticeID='\"+id+\"'\\"sy_notice\"); if (ds.Tables[0].Rows.Count>0) { strTitle = ds.Tables[0].Rows[0][\"noticeTitle\"].ToString(); ((Button)e.Item.Controls[1]).Attributes.Add(\"onclick\confirm('公告 \"+strTitle+\" 确认删除吗');\"); } } 3.4 教师信息界面 教师信息模块主要功能是输入教师自己的姓名、密码、重新确认密码、电话就可以进入教师自己的信息界面。教师界面如5 所示 图 5教师信息界面 教师信息界面的主要代码如下: protected void Button1_Click(object sender, EventArgs e) { if (TPwd.Text == rpwd.Text) { 16 bool bl = bc.SqlExecute(\"UPDATE sy_sysuser SET username = '\" + this.TName.Text + \"', userpwd = '\" + this.TPwd.Text + \"',tel='\" + this.TTel.Text + \"' WHERE (username ='\" + Session[\"LoginName\"] + \"')\"); if (bl) { Response.Write(bc.MessageBox(\"信息更改成功!\")); Response.Write(\"\"); } else { Response.Write(bc.MessageBox(\"信息更改失败!\")); } } else { Response.Write(bc.MessageBox(\"密码不一样!\")); } } 3.5教师个人信息界面 教师个人信息界面,其主要记录每一位教师的信息,包括姓名、电话等,教师个人信息如图6所示。 图6学生成绩管理 教师个人信息界面的主要代码: #region 按照某列进行排序 private void SortGridView(string sortExpresion, string direction) 17 { DataSet ds = bc.GetDataSet(\"select * from sy_sysuser\ DataTable dt = ds.Tables[0]; DataView dv = new DataView(dt); dv.Sort = sortExpresion + direction; GridView1.DataSource = dv; GridView1.DataBind(); } protected void GridView1_Sorting(object sender, GridViewSortEventArgs e) { string sortExpression = e.SortExpression; if (GetViewSortDirection == SortDirection.Ascending) { GetViewSortDirection = SortDirection.Descending; SortGridView(sortExpression, \" DESC\"); } else { GetViewSortDirection = SortDirection.Ascending; SortGridView(sortExpression, \" ASC\"); } } #endregion 3.6 用户管理界面 用户管理界面中可以对公告进行查看,删除。对教师可以添加等操作。用户管理界面如图7 所示 18 图7用户管理界面 用户管理界面的主要代码如下: private void AdminData() { string cn = \"Data Source=.;Initial Catalog=xjgl1;Integrated Security=True\"; SqlConnection cnn = new SqlConnection(cn); string sel = \"select User_id as 用户ID,User_name as 姓名,User_password as 密码 from Users\"; SqlCommand com = new SqlCommand(sel, cnn); da = new SqlDataAdapter(); dt = new DataTable(); da.SelectCommand = com; da.Fill(dt); dataGridView1.DataSource = dt; } 3.7添加教师界面 添加教师界面的功能就是对教师进行添加。添加教师界面如图 8 所示 图8 添加教师界面 添加教师界面主要代码如下: private void button2_Click(object sender, EventArgs e) { listBox1.Items.Clear(); string paths = Directory.GetCurrentDirectory() + \"\\\\log.txt\"; StreamWriter sw = new StreamWriter(paths, false, Encoding.Default); 19 sw.WriteLine(); sw.Close(); } 4.设计体会 在这次课程设计中,对ASP.NET这门课程有了更深的了解,课程设计不仅需要细心严谨的态度,还需要充分发挥想象力。课程设计中,非常感谢莫老师的指导,才能顺利的完成。细节决定成败这句话在程序设计中最恰当不过了,因为一个小小的错误代码就可以使整个的程序无法进行,有时候绞尽脑汁也没能找出错误所在,只好老老实实的重新进行编写工作。所以课程不仅理论性强,实际操作性更强,没有一个好的心态很难学好这门课程。学习的不仅是科学的方法,还包括用什么样的态度去对待这门课程,并且让自理论性和实践性在自身得到充分的发挥,用细心严谨的态度去认识事物,在今后社会的发展和学习实践过程中,一定要不懈努力,不能遇到问题就想到要退缩,一定要不厌其烦的发现问题所在,然后一一进行解决,只有这样,才能成功的做成想做的事。 5.参考文献 [1]朱玉超,鞠艳,王代勇. ASP.NET 项目开发教程[M].北京:电子工业出版社,2012.6: 144-180 [2]刘乃丽.完全手册ASP.NET 2.0网路开发详解[M].北京:电子工业出版,2013.3:18-78 [3]尚俊杰,秦卫中. ASP.NET 程序设计案例教程[M]北京:清华大学出版社,2011.3:18-68 [4]张悦,舒贵阳等. ASP.NET 2.0快速入门及实例精选[M].北京:电子工业出版社,20116:56-90 [5] 胡勇辉,曹倬瑝,兰湘涛. Visual C++实践与提高网络编程篇[J]. 高等理科教育,2011(1):78-93 20 [6] 龙马工作室.ASP+Access组建动态网站实例精讲[M].北京:人民邮电出版社.2011,4:21-45 [7] 李严,于亚芳,王园辉.ASP.NET数据库开发实例解析[M].北京:机械工业出版社.2012,3:56-78 [8] 张克非.ASP.NET网络程序设计与应用[M].北京:北京航空航天大学出版社2012.7:101-230 [9] 蒋金楠 ASP.NET MVC 4框架揭秘[M] .北京:电子工业出版社 2013.9:203-269 [10] 刘楠,陈晓宇 ASP.NET 4.5 入门经典[M]. 北京:清华大学出版社 2015.9:23-169 21

因篇幅问题不能全部显示,请点此查看更多更全内容

Top