我的实验教学管理系统毕业设计Word下载.docx
《我的实验教学管理系统毕业设计Word下载.docx》由会员分享,可在线阅读,更多相关《我的实验教学管理系统毕业设计Word下载.docx(39页珍藏版)》请在冰豆网上搜索。
我谨在此承诺:
本人所写的毕业论文《基于ASP.NET的教学管理系统的设计与实现》均系本人独立完成,没有抄袭行为,凡涉及其他作者的观点和材料,均作了注释,若有不实,后果由本人承担。
承诺人(签名):
许静
2007年6月14日
摘要
随着信息技术在管理上越来越广泛的应用,管理信息系统的实施在技术上已逐步成熟。
管理信息系统是一个不断发展的系统,任何一个单位要生存要发展,要高效率地把内部活动有机地组织起来,就必须建立与自身特点相适应的管理信息系统。
本文介绍了在ASP.NET环境下采用“自上而下地总体规划,自下而上地应用开发”的策略开发一个管理信息系统的过程。
通过分析某一学校教学管理的不足,创建了一套行之有效的计算机管理学生的方案。
文章介绍了教学管理信息系统的系统分析部分,包括可行性分析、业务流程分析等;
系统设计部分主要介绍了系统功能设计和数据库设计及代码设计;
系统的功能分为:
系统管理模块、班级管理模块、学生资料管理模块、作业管理模块;
系统实现部分说明了几个主要模块的算法。
本系统界面友好,操作简单,比较实用。
关键字:
管理信息系统;
教学管理;
ASP.NET应用
ABSTRACT
Withmoreandmorewidespreadandprofoundapplicationofinformationtechnologyinmanagement,theimplementofmanagementinformationsystemhasbecomematureintechnologystepbystep.Managinginformationsystemisanewsubject.Enterpriseneedsexistenceanddevelopment,soenterpriseactivitiesshouldbeorganizedefficientlyandorganically,whichmeanstighteninguptheenterprisemanagementandstrengtheningeffectivemanagementofanyresourceinternaltheenterprise,andalsoestablishingamanagementinformationsystemfittinginwithitsowncharacteristics.
Thisarticleintroducesthedetailedprocessofexploringamanagementinformationsystemundertheenvironmentofvisual,utilizing“Top-Bottom”overallplanandastrategyaccordingto“Bottom-Top”applicationandexploitation.Thatistoestablishasetofeffectiveschemeforstudentmanagementbycomputer,throughanalyzingdisadvantagesofstudentmanagementbyhumanresources.Thisarticleemphasizesonthreesections.Thesystemanalysissectionofstudentmanagementinformationincludesfeasibleanalysis,managementfunction.Thesystemdesignsectionmainlyfocusesonsystemfunctiondesignanddatabasedesignanddatanumberdesign.Andthesystemrealizationsectionhasprovidedseveralmajorfunctions,togetherwiththemainwindowsandprograms.ThefunctionoftheSystem:
SystemManagementModuleandclassManagementModuleandStudentfilesManagementModuleandExerciseManagementModule.Thiseconomicalandpragmaticsystemhasexplicitinterface,withsimpleoperation.
Keywords:
MIS;
studentmanagement;
ASP.NETapplication
1引言
随着计算机网络技术的高速发展,传统的桌面系统、C/S架构系统已经不能满足社会的需要。
当今社会是一个网络社会,电子商务系统、企业信息系统已经走进了网络应用系统阶段。
如何快速开发出适应社会各个行业发展的网络应用系统是摆在人们前面的一个难题。
选择什么样的开发平台、开发工具、开发语言、开发技术直接影响行业的信息化建设。
.NET的问世给开发人员带来了一种全新的开发框架,它已经成为一种令人激动的、具有革命性和发展性的新技术。
.NET为行业的信息化提出了彻底解决方案,不论Web开发者、组件开发者、数据开发者、VBGUI开发者,还是任何基于Windows平台的开发者,.NET都以一种全新的开发模式使开发人员更好、更快速的完成工作。
本课题重点以.NET和为开发平台,综合利用ASP.NET的WEB开发技术和XML跨平台技术,通过开发一个通用网站,真正体验.NET新一代软件开发全新模式,实现网站快速开发和部署。
2技术简介
2.1HTML语言
超文本语言HTML(HyperTextMarkupLanguage)是当前创建Web页面最流行的语言。
HTML语言的流行是因为一个HTML文件不管在任何操作系统的浏览器上面得到的结果应该是相同的。
HTML语言是一种处理文字的语言,它包含的指令(标记)可以插入到未定个是的文件里,用来控制浏览器显示的网页或者打印出来的外观。
HTML语言不区分大小写,它有以下特点:
它有特定的逻辑结构,分成不同的逻辑但元,是一种结构化文本文档。
它可以提供图像、动画以及其他多媒体等信息的链接。
创建过程非常简单。
HTML语言版本开发采取向后兼容的方式,使它容易维护。
另外,HTML作为WEB上通用的描述语言,为各种计算机平台提供了一个公开的标准接口,于平台无关。
2.2IIS
IIS是InternetInformationServer的缩写,它是微软公司主推的服务器,最新的版本是Windows2003里面包含的IIS6,IIS与WindowsNTServer完全集成在一起,因而用户能够利用WindowsNTServer和NTFS(NTFileSystem,NT的文件系统)内置的安全特性,建立强大,灵活而安全的Internet和Intranet站点。
IIS支持HTTP(HypertextTransferProtocol,超文本传输协议),FTP(FileTransferProtocol,文件传输协议)以及SMTP协议,通过使用CGI和ISAPI,IIS可以得到高度的扩展
IIS支持与语言无关的脚本编写和组件,通过IIS,开发人员就可以开发新一代动态的,富有魅力的Web站点。
IIS不需要开发人员学习新的脚本语言或者编译应用程序,IIS完全支持Vbscript,Javascript开发软件以及Java,它也支持CGI和WinCGI,以及ISAPI扩展和过滤器。
IIS支持服务器应用的MicrosoftBackOffice系列,MicrosoftBackOffice系列包括以下内容:
(1)MicrosoftExchangeServer客户/服务器通讯和群组软件;
(2)MicrosoftProxyServer代理服务器;
(3)用于连接IBM企业网络的MicrosoftSNAServer;
(4)用于集中管理分布式系统的MicrosoftSystemsManagementServer;
(5)MicrosoftCommercialInternetSystem(MCIS)。
IIS的设计目的是建立一套集成的服务器服务,用以支持HTTP,FTP和SMTP,它能够提供快速且集成了现有产品,同时可扩展的Internet服务器。
IIS相应性极高,同时系统资源的消耗也是最少,IIS的安装,管理和配置都相当简单,这是因为IIS与WindowsNTServer网络操作系统紧密的集成在一起,另外,IIS还使用与WindowsNTServer相同的SAM(SecurityAccountsManager,安全性账号管理器),对于管理员来说,IIS使用诸如PerformanceMonitor和SNMP(SimpleNetworkManagementProtocol,简单网络管理协议)之类的NT已有管理工具。
IIS支持ISAPI,使用ISAPI可以扩展服务器功能,而使用ISAPI过滤器可以预先处理和事后处理储存在IIS上的数据。
用于32位Windows应用程序的Internet扩展可以把FTP,SMTP和HTTP协议置于容易使用的任务集中的界面中,这些界面将Internet应用程序的使用大大简化,IIS也支持MIME(MultipurposeInternetMailExtensions,多用于Internet邮件扩展),它可以为Internet应用程序的访问提供一个简单的注册项。
IIS的一个重要特性是支持ASP。
IIS3.0版本以后引入了ASP,可以很容易的张贴动态内容和开发基于Web的应用程序。
对于诸如Vbscript,Javascript开发软件,或者由VisualBasic,Java,VisualC++开发系统,以及现有的CGI和WinCGI脚本开发的应用程序,IIS都提供强大的本地支持。
ASP.NET是M的一部分,作为战略产品,不仅仅是ActiveServerPage(ASP)的下一个版本;
它还提供了一个统一的Web开发模型,其中包括开发人员生成企业级Web应用程序所需的各种服务。
ASP.NET的语法在很大程度上与ASP兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。
可以通过在现有ASP应用程序中逐渐添加ASP.NET功能,随时增强ASP应用程序的功能。
ASP.NET是一个已编译的、基于.NET的环境,可以用任何与.NET兼容的语言(包括VisualBasic.NET、C#和Javascript.NET.)创作应用程序。
另外,任何ASP.NET应用程序都可以使用整个.NETFramework。
开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。
ASP.NET可以无缝地与WYSIWYGHTML编辑器和其他编程工具(包括MicrosoftVisualStudio.NET)一起工作。
这不仅使得Web开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到Web页的GUI和完全集成的调试支持。
微软为ASP.NET设计了这样一些策略:
易于写出结构清晰的代码、代码易于重用和共享、可用编译类语言编写等等,目的是让程序员更容易开发出Web应用,满足计算向Web转移的战略需要。
ASP.NET提供了稳定的性能、优秀的升级性、更快速的开发、更简便的管理、全新的语言以及网络服务。
贯穿整个ASP.NET的主题就是系统帮用户做了大部分不重要的琐碎的工作。
新的ASP.NET引入受管代码(ManagedCode)这样一个全新概念,横贯整个视窗开发平台。
受管代码在NGWSRuntime下运行,而NGWSRuntime是一个时间运行环境,它管理代码的执行,使程序设计更为简便。
(1)高效率
对于一个程序,速度是一件非常令人渴望的东西。
一旦代码开始工作,接下来你就得尽可能地让它运作得快些。
在ASP中你只有尽可能精简你的代码,以至于不得不将它们移植到一个仅有很少一点性能的部件中。
而现在,ASP.NET会妥善地解决这一问题。
(2)易控制
在ASP.NET里,你将会拥有一个“Data-Bounds”(数据约束),这意味着它会与数据源连接,并会自动装入数据,使控制工作简单易行。
(3)语言支持
ASP.NET支持多种语言,支持编译类语言,支持比如VB、VC++、C#等,它比这些编译类语言运行速度快,更适合编写大型应用
(4)更好的升级能力
快速发展的分布式应用也需要更快速、更模块化、更易操作、更多平台支持和重复利用性更强的开发,需要一种新的技术来适应不同的系统,网络应用和网站需要提供一种更加强大的可升级的服务。
ASP.NET能够适应上面的要求。
对于今天的Web程序员来说,最大的挑战就是不断变化的浏览器兼容性以及它们不断升级的复杂性。
在保证页面能在所有浏览器下工作的同时,又得尽量使用每个浏览器的最新属性来建立更具交互性的页面,这简直不可想象。
更加可怕的是,需要对不同的用户设备建立不同的网页。
最简单的解决办法就是动态地对不同的用户生成不同的输出,或者就是对不同的用户写多个页面。
大多数开发者都会选择第一种方法。
但是,这就意味着用户的每次点击都会让服务器判断应该向用户显示什么。
而通过ASP.NET,我们可以看到一个新的服务控制的概念,它封装了一些普通的任务,提供了一种清晰的编程模块,有助于管理和处理不同的用户类型。
简单地说,ASP.NET把这些过程自动化了。
2.3Session对象
Session其实指的就是访问者从到达某个特定主页到离开为止的那段时间。
每一访问者都会单独获得一个Session。
在Web应用程序中,当一个用户访问该应用时,Session类型的变量可以供这个用户在该Web应用的所有页面中共享数据;
如果另一个用户也同时访问该Web应用,他也拥有自己的Session变量,但两个用户之间无法通过Session变量共享信息,而Application类型的变更则可以实现站点多个用户之间在所有页面中共享信息。
(1)SessionID属性
该属性返回当前会话的唯一标志,为每一个Session分配不同的编号。
我曾在开发过程中就遇到对用户的控制问题。
它要实现的功能就是,针对某个网站的一个模块,当一个会员登录后正在看此模块时,另一个人用同样的会员名登录,就不能浏览这个模块。
也就是说一个会员名同时只能一个人浏览此模块。
我通过用会员名(假设为UserID,唯一)和SessionID来实现了控制。
当会员登录时,给这个会员一个Session记录登录状态如:
Session("
Status"
)="
Logged"
,同时把这个会员的Session.SessionID写入数据库。
当他要浏览此模块时,先判断其是否登录,若已经登录再判断它的SessionID是否与数据库记录的相同,如果不同则不能访问。
这样,当另一个用户用相同的会员名登录时,那么数据库中记录的就是新的SessionID,前者访问此模块时就不能通过检查。
这就实现了一个会员名同时只能一个人浏览某个模块。
这个功能在一些收费网站有很有特别作用,它防止了一个会员名给多个人浏览的问题,为公司保障了利益。
(2)TimeOut属性
该属性用来定义用户Session对象的时限。
如果用户在规定的时间内没有刷新网页,则Session对象就会终止。
一般默认为20分钟。
(3)Abandon方法
该方法是Session对象的唯一方法,可以清除Session对象,用来消除用户的Session对象并释放其所占的资源。
如:
<
%Session.Abandon%>
(4)Session_OnStart和Session_OnEnd事件
和Application一样,当对象的例程每一次启动时触发Session_OnStart事件,然后运行Session_Onstart事件的处理过程。
也就是说,当服务器接收到应用程序中的URL的HTTP请求时,触发此事件,并建立一个Session对象。
同理,这个事件也必须定在Global.asa文件中。
当调用Session.Abandon方法时或者在TimeOut的时间内没有刷新,这会触发Session_OnEnd事件,然后执行里面的脚本。
Session变量与特定的用户相联系,针对某一个用户赋值的Session变量是和其他用户的Session变量完全独立的,不会存在相互影响。
2.4ASP.NET的控件和窗体
菜单是程序中提供的一种方便给命令分组的方法,目的是使用户容易访问这些命令。
它是程序最重要的特性之一,大多数程序都依赖一个良好的定义使程序易于使用和维护,在一个大型应用程序的界面中如果没有菜单和工具栏,用户将很难进行操作。
这是一种流行趋势,因为并不是所有用户都能够清晰地了解各种应用软件,所以对于他们来讲,必须含带菜单和工具栏来使用应用程序。
ASP.NET也提供了强大的创建菜单功能来使程序更加标准,我们可以使用ASP.NET的applicationwizard,也可以使用ASP.NET的菜单编辑器建立或者修改已经存在的菜单。
在ASP.NET中,设计和运行时都可以创建和修改菜单。
在菜单创建时,还可以定义菜单的访问键,使习惯了dos操作的用户也能方便地进行操作。
在菜单中还可以创建分隔符,但要注意的是,如果菜单控件是一个菜单标题,带有子菜单项,被复选或无效,或者有一个快捷键,那么它就不能作为分隔符条,分隔符条是不能响应click事件,而且也不能被选取的。
在所有的菜单功能项中,可以使菜单项命令有效或无效,所有的菜单控件都具有enable属性,当这个属性值为false时,菜单命令无效,它不响应任何动作。
此时,快捷键的访问也无效,一个无效的菜单项控件会变暗。
所有未变暗的菜单项控件都是有效的,可以响应其所定义的任何动作。
工具栏已经成为许多基本windows应用程序的标准功能,使用它可以进一步增强应用程序的菜单界面。
工具栏含有工具栏按钮,提供了对应用程序最常用的命令的快速访问。
如果使用的是ASP.NET的专业版或企业版,则用户可以直接使用其中的Activex控件——toolbar来创建工具栏。
2.4.1Activex控件
ASP.NET提供了大量的控件,在应用程序中使用各种控件是ASP.NET的特色。
控件用来获取用户的输入信息和显示输出信息。
应用程序中可用的控件可包括文本框、命令应用程序就好像是代码的一部分。
每个控件都有一组属性、方法和事件。
其次,在ASP.NET中还提供了Activex控件,以前被称作ole控件,是一个标准的用户接口元素,能够快速地把窗体和对话框组装起来。
在应用程序中使用各种控件经常被看作是ASP.NET的特色。
设计一个Activex控件就像设计一个ASP.NET窗体那样容易,用户可以使用所熟悉的ASP.NET图形命令来绘制控件,或者使用已有的控件来创建一个控件组。
Activex控件可以在运行中调试,因此可以直接从高度窗体的跳跃到Activex控件工程的代码中。
另外,可以使用ASP.NET的data控件或ado控件在ASP.NET的Activex控件上增加数据绑定,这样使用者就很容易地把控件中的各个字段绑定到数据库中适当的字段上。
Activex控件文件的扩展名为.ocx,将Activex控件和其它可加入的对象加到工具箱中,即可在工程中使用它们。
在工程的工具箱中加控件:
(1)“工程”菜单中,单击“部件”,显示“部件”对话框。
(2)在该对话框中将列出所有已经注册的可加入的对象、设计者和Activex控件。
(3)要在工具箱中加入Activex控件,选定控件名称左边的复选框。
(4)单击“确定”按钮,关闭“部件”对话框。
所有选定的Activex控件将出现在工具箱中。
要将Activex控件加入“部件”对话框,单击“浏览”按钮,并找到扩展名.ocx的文件。
在将Activex控件加入可用控件列表中时,ASP.NET自动在“部件”对话框中选定它的复选框。
2.4.2Toolbar工具条控件
Toolbar工具条控件,包含用来创建工具栏的button对象的集合,是实现工具条的主体。
其中的按钮可以显示图像的标题,并按功能分组或加入分隔符,还可以对其设置鼠标停留在其上显示的提示字符。
Toolbar也是一个控件容器且具有style属性,并可以为其增加下拉按钮和平滑按钮等。
一般情况下,工具栏中的按钮与应用菜单中的菜单项相对应,可以用它们来访问应用程序最常用的功能和命令。
其中,Toolbar控件也可以包含其它控件,如:
combobox控件或textbox控件。
要创建工具栏,必须先将button对象加入button集合,每个button对象可以拥有可选的文本,或者拥有相关联的imagelist控件提供的图像。
可以用caption属性为每一个button对象设置文本,用image属性设置图像。
在设计时,可以用add和remove的方法将按钮加入或删除button集合。
在设计时若添加其它控件,只须将需要的控件拖入工具栏中即可。
另外,还可以创建placeholder样式的button对象,并在resize事件中将需要的控件盖在该按钮上。
在运行时,双击工具栏将弹出“自定义工具栏”对话框,以便用户隐藏、显示或重新安排工具栏的按钮。
可以用allowcustomize属性选用或禁止用该对话框。
还可以用customize方法弹出“自定义工具栏”对话框。
如果需要保存或恢复工具允许最终用户这样做,可使用savetoolbar和restoretoolbar方法。
使用toolbar控件,主要是为了体现以下几个方面:
(1)用一致的工具栏为不同应用程序提供统一的界面。
(2)为常用功能例如文件操作等提供简便的访问方法。
(3)为应用程序提供图形化的直观界面。
选择“工程”下拉菜单中的“部件”选项,显示“部件”对话框。
在“控件”选项卡列表中选择“microsoftwindowscommoncontrols6.0”后工具栏中增加此控件,其属性及对象如下:
(1)Lign属性定义工具条在窗体中的位置。
(2)Tooltiptext属性是字符串类型,定义控件的提示字符。
(3)Style属性定义按钮外观。
(4)Imagelist属性设置一个imagelist控件名,该控件定义工具按钮显示的图像。
(5)Hotmangelist属性设置一个imagelist控件名,该控件定义按钮获得热点时显示图像。
(6)Disabledimagelist属性定义工具条按钮无效时显