学生信息查询系统毕业论文.doc
《学生信息查询系统毕业论文.doc》由会员分享,可在线阅读,更多相关《学生信息查询系统毕业论文.doc(42页珍藏版)》请在三一办公上搜索。
1、摘 要在校人数已经达到一万五千人之多的今天,对学生各项信息的分散式手动管理模式已经不能适应如此庞大的办学规模,如何实现学生信息的集中式自动化管理模式已经成为了一个亟待解决的问题。为了更简便、更快捷、更统一、更高效的管理学校的学生信息,我们特地开发了这款“学生信息查询系统”。充分考虑到学校办公室计算机配置情况以及现有空闲服务器配置情况,我们决定采用C/S模式,以SQL Server 2005数据库服务器为数据中心,将数据处理分配到了客户端计算机上。系统的开发环境为微软公司出品的功能强大的集成开发环境Visual Studio 2008,以C#为编程语言,实现了学生信息的统一存储,多层管理和多层共
2、享。系统主要提供学生信息查询和导出到Excel文件的功能。关键字:学生信息管理系统, C/S,C#, Visual Studio 2005,SQL Server 2005ABSTRACTToday, enrollment in our school has reached as many as 15,000. The students distributed information manual management mode can not adapt to such a large school size any more. How to implement automated, cent
3、ralized student information management has become an urgent problem. For easier, faster, more unified, more efficient management of the schools student information, we have specially developed this student Information Inquiry System. Full consideration to the school office computer configuration as
4、well as existing free server configuration, we decided to use C / S mode and use SQL Server 2005 database servers for data centers, data processing will be assigned to the client computer. We chose Visual Studio 2008, a powerful integrated development environment produced by Microsoft Inc. for our d
5、evelopment environment, Use C # as the programming language to realize the unity of student information storage, multi-layer management, and multi-sharing. System will provide students information query and export to Excel files.Key words: Student Information Query System, C/S, C#, Visual Studio 200
6、5,SQL Server 2005目 录第1章 引言11.1 课题背景11.2 实用价值11.3 国内现状11.4 重点难点2第2章 系统分析32.4 基础管理62.4.1 班级管理62.4.2 用户管理62.5 学生管理72.5.1 学生查询72.5.2 学生修改82.5.3 学生添加82.5.4 毕业标记82.8 运行环境92.9 系统可用性92.10 系统可靠性10第3章 开发平台113.1 Net Framework113.1.1 公共语言运行库113.1.2 统一编程类113.1.3 ASP.Net123.2 Visual Studio 2005123.2.1 Visual C# 2
7、005123.2.2 Windows程序设计133.3 SQL Server 2005143.4 Visual Source Safe15第4章 系统实现174.1 数据库设计174.1.1 数据表设计174.1.2 存储过程设计184.2 数据库操作204.2.1 参数传递204.2.2 返回数据集214.2.3 返回数据读取器224.2.4 返回单个值224.2.5 无返回值234.3 辅助类设计234.3.1 树数据操作244.3.2 数据操作辅助类244.3.3 其他辅助类设计254.4 系统开发254.4.1 系统登录274.4.2 数据录入274.4.3 学生修改314.4.4 数
8、据查询32第5章 结论33参考文献34致谢35外文资料原文36译文38第1章 引言1.1 课题背景学校自2001年创办以来,规模在不断的扩大,在校学生人数已经达到了一万五千人之多,与学生相关的各项信息也就出现了成倍的增长,对于学生信息的日常管理自然而然也就变的不那么容易了。以往辅导员们对于学生信息的管理都是没有规范的,各个辅导员管理各自的学生信息,这就导致了学生信息的不集中。而且,学生的各种信息也存放在各种不同的文档里面。对于查找和统计只能依靠手工的收集所有信息,并手工进行统计。这不但耗时而且也不精确。往往导致许多错误的出现。现在,随着计算机在校园里的普及,辅导员们都会使用各种辅助软件来管理自
9、己学生信息,但是对于整个学校来说,学生信息分散于各个辅导员手中,对于统一管理学生信息已成为学校信息化建设的一大障碍。现今,随着计算机软硬件技术的不断发展,对于集中处理大量信息已不再困难。对于高校规模的不断扩大所带来的学生信息大量增长,有必要开发一套学生信息查询系统,以方便、快捷、高效的处理学生信息。1.2 实用价值“学生信息查询系统”可以合理的整合本校学校的各项信息,方便辅导员,系学工科,院学工处及时对学生信息进行必要的增、删、改、查,打开对全院学生信息管理的通道,大幅提高工作效率。而且,系统完成之后,可以方便的与其它系统(如:教职工信息管理系统,成绩管理系统,学生选课系统,奖学金管理系统等)
10、进行有效的集成,对学校信息化建设具有重要意义。1.3 国内现状虽然国内很多高校都推出了自己的学生信息管理系统,但是,由于不同院校的管理模式并不相同,使得这些系统不能够在其它院校通用。所以,为了能够方便的管理和查询本校学生的各项信息,就需要针对本校的具体情况,开发出具有本校特色,适合本校使用的“学生信息查询系统”。1.4 重点难点做好“学生信息查询系统”的开发,重点在于,理清学生信息管理的操作流程,以及如何通过编程使得系统能够实现这样的流程,这其实也就是系统的需要分析。众所周知,需要分析是系统设计中最重要的一个环节,只有在清楚需要的情况下,才能开展后续工作。也只有在清楚需要的情况下,才能开发出适
11、合本校使用的学生信息查询系统。在项目的实施过程中,我们发现,系统不仅要处理大量的学生信息,还要处理上万条的基础数据,如学生宿舍床位信息和国家行政区域信息等。作为一个应用型系统,基础信息的完整性是必不可少的,所以,这些数据的收集整理也成了系统设计的重点也是难点。开发过程中的一些需求变动,也使得整个项目的进度和流程受到了很大的影响。因为对学校日常管理的方式和流程的不熟悉,导致了需求变动的高频出现,这便成为了系统设计的又一难点。另外,因为项目为团队开发,实施过程中人员的变动比较大,使得项目开发的连续性受到很大影响,做好系统开发的同时还要做好人员的分配,这也是系统设计的一个难点。第2章 系统分析充分考
12、虑到学校办公室计算机配置情况以及现有空闲服务器配置情况,我们决定采用C/S模式,以SQL Server 2005数据库服务器为数据中心,将数据处理分配到了客户端计算机上。系统的开发环境为微软公司出品的功能强大的集成开发环境Visual Studio 2008,以C#为编程语言,实现了学生信息的统一存储,多层管理和多层共享。2.1 体系结构本“学生信息查询系统”采用的是C/S,即Client to Server结构,中文全称客户端服务器结构。这里提到的客户端和服务器都是指通信中的两个应用软件。操作计算机的人是系统的用户(User)而不是客户(Client)。它具有可以充分利用两个端的硬件资源的优
13、势,能将任务合理地分配到Client端和Server端来协同实现相应的功能,降低了系统的通信开销。目前,大多数的应用型软件系统都采用的是Client/Server结构。考虑到学校的具体情况是没有专业的硬件配置优良的服务器,本“学生信息查询系统”选用了胖客户端思想,把用户界面展示和业务逻辑实现放到了客户端来实现。这样可以充分发挥客户端计算机机的处理能力,很多工作可以在客户端处理完成后再提交到服务器端,缓解了服务器端在多用户并发访问的时候的处理压力和通信压力。客户端软件是使用C# 2.0编写的桌面应用程序对数据进行加工处理并显示,服务器端是采用SQL Server 2005提供数据库支持。2.2
14、三层架构本“学生信息查询系统”在结构上采用的是目前用得最广泛的三层架构设计,即表示层,业务逻辑层以及数据访问层。采用三层架构的优点在于可以使系统变得具有扩展性,可以根据需要改动其中的任意一层而不影响其它的模块,也可以根据需要而方便的添加更多的应用功能。表现层:是系统与用户直接打交道的层面,也就是用户在使用系统的时候直接见到的层面。在设计这一层的时候,我们严格按照Windows应用程序的用户界面设计准则,在满足用户使用需求的前提下,最大限度的优化了显示效果。表现层直接相关的只是业务逻辑层,与数据访问层并没有直接联系。在业务逻辑层中向表现层中提供了相应的接口,因此,如果在后续开发中如果需要替换用户
15、界面,就只需要将这一层替换掉,而不影响其它层面。业务逻辑层:是系统中对数据进行处理加工的层面,也就是解决实际问题的层面,是系统中的核心部分,也是设计和编码的重点。我们把系统的各项需要都封装到了这一层,并预留出了可编程的接口。这样,当需求发生变动的时候,我们也只需要根据这些接口开发新的业务逻辑,同样不会对其它层产生影响。业务逻辑层在三层体系结构中起着非常关键的作用,困为它处于表示层和数据访问层的中间,起着数据交换中的承上启下的作用。层是一种弱耦合的结构,层与层之间的依赖关系是自上而下的,底层对于上层来说是“未知”的,改变上层的设计,对于其调用的底层来说是没有影响的。如果在分层设计的时候,完全遵循
16、了面向接口程序设计的思想,那么,这种向下的依赖关系就应该是一种弱依赖关系。因而,在保持接口定义不变的前提下,理想的分层式结构设计,应该是支持可抽取,且可替换的“抽屉”式结构。也正因为如此,业务逻辑层的设计在一个支持可扩展的结构中尤为关键。因为,它同时扮演了两个不同的角色。对于数据访问层来说,它是调用者;而对于表示层来说,它却成了被调用者。依赖与被依赖的关系都同时作用在业务逻辑层之上,如何做到依赖关系的解耦,则成为了设计师们实现业务逻辑之外的重要任务。数据访问层:是系统中直接操作数据库的层面,也就是对数据的增、删、改、查等操作的层面。我们把系统中所有对数据的操作方法都封装在了该层里,在这里定义了
17、一系列跟数据库中表相对应的类,这些类能够反应数据库中的数据结构,同时也包含了对数据库的操作方法。系统的业务逻辑层也就是直接和该层打交道,并不直接访问数据库内容。这就意味着,如果我们对数据库进行了调整,那么受到影响的也只有数据访问层。系统中对于该层的实现,主要有两个突破点。首先,一个数据访问类表示了一张数据库表的数据结构。例如,Student类表示了Student表的结构。Student类的属性,也就是Student表中的字段。Student类的一个对象,就对应了Student表中的一行实际数据,即一个学生的学生信息。接下来,数据访问类还包含了对数据的基本操作方法。当然,这些方法都是借助于数据操
18、作辅助类再对数据库中的数据进行操作的。2.3 安全考虑本“学生信息查询系统”中所存储的信息包括学生的个人信息和学校的组织架构情况,都是相当敏感的信息,如何保证这些信息的安全则成为本系统所要面临的一大难题。在反复的团队讨论之后,我们选用了多级安全控制,即采用网络过滤、数据库隐患排除、系统登录验证三种方式相结合的方式来提高系统的安全性。另外,系统还加入了操作记录功能,对进入系统的所有用户的操作进行记录,如果出现问题,事后可以根据日志进行分析,以找到事故的发生真正原因以及相关责任人。2.3.1 网络安全为了避免系统中敏感信息在网络上传输时的泄露,系统将会对数据进行加密后再传输。为了进一步保障系统数据
19、的安全,我们可以对访问系统的IP段进行隔离,让学校办公室所使用的网段能顺利登录系统,使用系统的所有资源,而其它网段则不能够登录到系统当中。2.3.2 数据库安全SQL注入式攻击是黑客常用的对数据库攻击手段之一。一般情况下,SQL注入攻击都是通过恶意的构造SQL语句,骗取系统的登录验证来获得系统的访问权限。这种攻击可能造成的后果是无法想象的。通过SQL注入式攻击可以获得超出系统用户最高权限的权限级别,可以修改数据库中的数据,甚至可以删除数据库的数据。为了防止SQL注入式攻击,最佳的解决方安就是使用存储过程。因为,存储过程都是通过其名字调用的,不涉及具体的SQL语句,传递进去的参数都需要经过SQL
20、 Server服务器的审核才能够正常使用。而且,具体的SQL语句都存储在SQL Server服务器中,攻击者无法再通过构造恶意SQL语句来对系统数据进行破坏。为了避免用户无意中删除数据库中的表影响到数据的完整性,我们在数据库服务器中定义了不同的角色,并将用户加入到不同的角色里,实现了不同用户具有不同数据库操作权限的划分。2.3.3 用户安全在前一小节中有提到数据库的用户划分了不同权限,但仅仅这样还不够,还需要在应用程序级建立不同的角色,划分不同的权限。通过验证登录和基于角色的授权,保证通过验证的用户才能访问本系统,并且,只是属于某一角色的用户,才能获得相应的许可,对系统中的数据进行更改。角色的
21、思想方便了对系统用户的管理。对任何一个应用软件来说,日志记录都是非常重要的,通过对日志的分析,管理员可以很快了解到系统中做了哪些更改,并从中找到合理的和不合理的改动,定位到相关责任人,并阻止错误的扩大化,及时修复已经发生的错误。2.3.4 数据备份由于是学校管理类实际应用软件,对系统中数据的安全性要求非常高,数据的丢失若不能被快速的恢复,就意味着系统是失败的。所以,数据库的备份就显得非常有必要。数据库的备份操作能使学生数据意外丢失的可能性降至最低。即使数据库服务器发生意外,学生数据丢失,我们也能尽快的回复丢失的数据。随时保持数据的完整性、一致性。SQL Server 服务器提供了非常杰出的数据
22、自动备份功能,这当然给我们带来了极大的便利。不过,考虑到学生数据的重要性。我们建议每隔一段时间,管理员自己手动备份一次。而且数据备份要放到其他机器上,避免和数据库服务器在同一机上。这样如果数据库服务器被Down机,我们仍有备份数据可以使用,可以随时准备恢复使用。2.4 基础管理学生信息并不是单独存在的,需要依赖于学校组织架构及国家行政区域划分等各项基本信息,因此,系统提供了对各项基本信息的管理功能,保证了系统具有更好的灵活性以适应各种未知的改变。2.4.1 班级管理院系管理:能查看当前已有的院系,并能添加没有的院系。专业管理:能选择当前已有的院系,并能为选中的院系添加专业。班级管理:能选择当前
23、已有的院系、专业,并为班级指定班级号、所属年级、辅导员。2.4.2 用户管理列出当前系统的所有用户,包括用户的姓名、联系电话、手机号码、状态、权限级别。修改用户的姓名、联系电话、手机号码、状态、权限级别。添加新用户,包括设定姓名、账户名、密码、联系电话、手机、状态、权限级别。2.5 学生管理虽然系统的主要功能是查询,但对学生信息的管理也是有必要的,系统需要能提供学生信息的添加、修改和查询功能。2.5.1 学生查询学生信息查询分为两种方式,一种是快速查询,以树形列表导航的方式;另一种是自定义条件查询,用户可自行组合不同的查询条件,并选择不同的显示项目。所有的查询结果都可以导出到Excel表格,以
24、方便打印或传阅。快速查询方式有四种分类:按年级,可快速查询到某个年级的所有学生,该年级某个院系的所有学生,该年级某个专业的所有学生,某个班级的所有学生;按寝室,可快速查询到某个楼幢的所有学生,该楼幢某个单元(楼层)的所有学生,该楼幢该单元某个寝室的所有学生,某个床位的单个学生;按地域,可快速查询到籍贯为某个省,某个市,某个县(某个区)的所有学生;按民族,可快速查询到某个民族的所有学生。需要注意的是,快速查询的结果是当前在校的学生中符合条件的学生。用户可以根据自己的查询需要,指定查询条件中的一个,或多个条件的组合对数据库中的学生进行查询。查询条件有:学号,姓名,性别,政治面貌,民族,生日范围,院
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生信息查询系统 毕业论文 学生 信息 查询 系统
链接地址:https://www.31ppt.com/p-3941588.html