基于web的学生课程以及成绩管理系统毕业设计.docx
- 文档编号:7216643
- 上传时间:2023-01-21
- 格式:DOCX
- 页数:63
- 大小:367.05KB
基于web的学生课程以及成绩管理系统毕业设计.docx
《基于web的学生课程以及成绩管理系统毕业设计.docx》由会员分享,可在线阅读,更多相关《基于web的学生课程以及成绩管理系统毕业设计.docx(63页珍藏版)》请在冰豆网上搜索。
基于web的学生课程以及成绩管理系统毕业设计
毕业设计(论文)
题目:
基于web的学生课程以及成绩管理系统
学生姓名
学号201022030213
班级计算机102202H
所属院(系)计算机科学与技术系
指导教师
2014年5月20日
基于Web的学生课程以及成绩管理系统
摘要
进入21世纪后,科学技术突飞猛进,信息时代的来临不仅让计算机在科技上得到应用,更让计算机在生活上得到了更广泛的应用,对如今的学校来说,实现电子信息化的办公是必然趋势,学校中的信息量主要体现在学生成绩的管理上面,因此学生成绩管理系统是一个教育单位不可缺少的部分。
本毕业设计所描述的学生成绩管理系统是采用ASP.NET作为网络编程框架,SQLServer2005作为数据库编写的一个B/S模式的系统。
系统主要实现了:
用户管理、成绩查询、成绩管理和科目管理等功能。
本文详细介绍了学生成绩管理系统的需求分析、功能设计和系统设计,在系统设计中给出数据库的设计和本系统的总体设计方案,在系统实现中具体介绍了各个功能的所能实现的情况和主要代码,同时附有运行界面图。
关键词:
成绩管理,成绩录入,成绩查询,B/S
STUDENTS’PERFORMANNCEMANAGEMENTSYSTEM
Abstract
Afterenteringthe21stcentury,scienceandtechnologyadvancebyleapsandbounds,theadventoftheinformationageisnotonlymakethecomputeriswidelyusedinscienceandtechnology,moremakethecomputerinlifehasbeenmorewidely,fornow,theschoolofelectronicinformationofficeisaninevitabletrend,theschoolofinformationaremainlyembodiedinthemanagementofstudents'gradesabove,educationmanagementsystemisaindispensablepartoftheunit.
Thegraduationdesignofstudentachievementmanagementsystemisdescribedusingisanetworkprogrammingframework,SQLServer2005asadatabaseofwritingaB/s-basedmodeofthesystem.Systemismainlyrealized:
usermanagement,scoresquery,performancemanagementandmanagementofsubjectetc.Function.Thispaperintroducesthestudentperformancemanagementsystemrequirementsanalysis,functionaldesignandsystemdesign,systemdesignindatabasedesignandtheoveralldesignschemeofthesystem,inthesystemareintroducedindetailsofeachfunctioncanrealizethesituationandthemainoperationinterfacewithcode.
KeyWords:
GradeManagement,Achievementsrecordedscoresquery,B/S
4.5.2管理员登录模块14
第一章引言
1.1课程背景
随着多媒体教学的推广,电脑和网络的普及,人民对于电脑的应用已经不再陌生。
目前社会上信息管理系统发展飞快,在各级各类的学校中,学生成绩管理一直都是学校工作中的一项重要内容,因为学生工作的很多方面都需要它的支持,比如学生就业推荐书的书写、学生档案的建设等等。
随着学校办学规模的扩大和招生人数的增加,学生成绩管理成为一项十分繁重的工作。
为了解决这一问题,有必要开发一套功能强大,操作简单,具有人性化的成绩管理系统,使计算机在学生成绩处理的领域中发挥高效灵活的功能。
因此为了充分利用计算机硬件资源,做好学生成绩管理工作,提高工作效率,实现全面的、相对集中的办公自动化,开发本系统就成了当务之急。
Internet和Web的迅猛发展使数据库技术也开始与Web产生了紧密的联系,一种新兴的技术—Web数据库技术出现了,并且开始在数据库的应用中发挥着越来越重要的作用。
基于Web的成绩管理系统利用JSP技术与Web数据库想结合实现,具有数据输入、查询修改等功能,应用该系统可大大提高工作效率。
1.2目的和意义
本系统的研究意义主要是改变以往的成绩管理模式,改人工手动管理为计算机网络化管理。
使学校在处理学生成绩的问题上,变得更加方便和快捷。
同时可以降低了人工管理的错误率,提高了数据的安全性。
随着教育的发展、高校规模的扩大、学生人数的增加,对学生各种信息的汇总、统计、分析等管理工作面临着很多困难。
如果高校对学生各种信息的管理通过手工整理等方式来处理完成的,那么在这个工作过程中奖花费大量的人力和时间,而且查询各种信息也不方便不准确,影响了各级领导和学生管理部门对学生信息的及时掌握和分析。
运用学生成绩管理系统可以减轻学校教学人员的工作量,加快查询速度,加强管理,还有就是缩小开支,提高工作效率与准确率。
学生成绩管理系统的应用也为今天的高校教育在未来市场的竞争力的提高打下坚实的基础。
本系统利用网络这个平台,充分利用了网络的快捷性,提高教育的时效性,使学生随时随地查询自己的学习情况,达到促进学生自主管理的目的,提高教师对学生管理工作的效率,让老师及时掌握学生学习上的动态。
而且通过本课题的研究,能够充分了解网络数据库的相关知识,培养网络软件开发的能力,提高实践操作和知识综合运用能力。
第二章可行性研究
2.1可行性分析
2.1.1经济可行性
系统的经济可行性是指分析学校的经济状况和投资能力,估算系统建设、运行和维护的费用,估计系统建成后取得的效益。
目前,计算机价格已经十分低廉,计算机性能却有了质的飞跃。
开发本系统为学校的工作效率带来了长足的进步,为此主要表现有以下几个方面:
第一,运行本系统可以方便查询和管理学生信息;
第二,运行本系统可以节省人力和物力;
第三,运行本系统可以提高学校的工作效率;
第四,本系统可以减少信息管理的错误率。
所以,本系统的开发在经济上是可行的。
2.1.2技术可行性
本系统通过网络和网页实现,校园网的覆盖为实现学生成绩管理系统打下了基础。
使用支持动态网页的JSP技术,利用支持多用户的MySQL作为本系统的数据库,它适用于大中规模的数据量需求。
使用MyEclipse7.5作为系统开发的开发环境,MyEclipse是Eclipse的插件,也是一款功能强大的JavaEE集成开发环境,支持代码编写、配置、测试以及除错。
综上所述,本系统的设计与开发在技术上和硬件设备上的条件都是满足的,因此,它在技术上是可行的。
2.1.3运行和操作可行性
本系统是小型的学生信息管理系统,所需要的资源比较小,学校电脑的硬件和网络都能够满足条件,因此,本系统在运行上是可行的。
本系统使用方便,界面简洁,直观易懂,无论是学生还是教师都可直接上手,管理员通过简单的培训操作本系统也没有问题。
2.1.4法律可行性
开发本系统不会侵犯他人利益,不存在侵权问题,不违反国家法律法规,因此具有法律可行性。
第三章开发工具简介
3.1MySQL数据库
MySQL[5]是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司。
MySQLAB是一家基于MySQL开发人员的商业公司,它是一家使用了一种成功的商业模式来结合开源价值和方法论的第二代开源公司。
MySQL是MySQLAB的注册商标。
MySQL的SQL“结构化查询语言”。
SQL是用于访问数据库的最常用标准化语言。
MySQL软件采用了GPL(GNU通用公共许可证)。
由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库[1]。
MySQL是一个快速的、多线程、多用户和健壮的SQL数据库服务器。
MySQL服务器支持关键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置(mass-deployed)的软件中去。
3.1.1MySQL是一个数据库管理系统
数据库[14]是一个结构化的数据集合。
如果要对存储在计算机数据库中的大量数据进行添加、访问等处理,你就需要一个像MySQL这样的数据库管理系统。
数据库系统在计算机处理中和独立应用程序或其他部分应用程序一样扮演着重要的角色。
3.1.2MySQL是一个关系数据库管理系统
关系数据库把数据存放在分立的表格中,这比把所有数据存放在一个大仓库中要好得多,这样做将增加你的速度和灵活性。
“MySQL”中的SQL代表“StructuredQueryLanguage”(结构化查询语言)。
SQL是用于访问数据库的最通用的标准语言,它是由ANSI/ISO定义的SQL标准。
SQL标准发展自1986年以来,已经存在多个版本:
SQL-86,SQL-92,SQL:
1999,SQL:
2003,其中SQL:
2003是该标准的当前版本。
3.1.3MySQL是开源的
开源意味着任何人都可以使用和修改该软件,任何人都可以从Internet上下载和使用MySQL而不需要支付任何费用。
如果你愿意,你可以研究其源代码,并根据你的需要修改它。
3.2MVC设计模式
MVC[1]是Model-View-Controller的简称,即模型-视图-控制器。
MVC是目前最流行的Web应用设计模式,它可以灵活、动态地设计开发系统,有利于修改和扩展简化程序,有利于代码重复使用。
模型:
用于封装与应用程序的业务逻辑相关的数据以及对数据的处理方法。
模型用来封装和显示数据对象。
视图:
把表示模型数据及逻辑关系和状态的信息以特定形式展示给用户。
它从模型获得显示信息,对于相同的信息可以有多个不同的显示形式或视图。
控制器:
是处理用户与软件的交互操作的,其职责是控制提供模型中任何变化的传播,确保用户界面于模型间的对应联系;它接受用户的输入,将输入反馈给模型,进而实现对模型的计算控制,是使模型和视图协调工作的部件。
通常一个视图具有一个控制器。
使用MVC的优点:
(1)用户在视图界面上发出请求;
(2)可以很容易地用新的实现来替换原有层次的实现;
(3)可以降低层与层之间的依赖;
(4)有利于标准化;
(5)有利于各层逻辑的复用。
总的来说,MVC设计可以达到如下目的:
分散关注、松散耦合、逻辑复用、标准定义。
3.3SSH架构
3.3.1Struts2
ApacheStruts2[10]是一个优雅的,可扩展的JAVAEEweb框架。
它采用MVC模式,能够很好地帮助java开发者利用J2EE开发Web应用。
和其他的Java架构一样,Struts[2]也是面向对象设计,将MVC模式“分离显示逻辑和业务逻辑”的能力发挥得淋漓尽致。
Web应用都是请求-响应的程序结构。
程序是由客户端client发出http请求开始的,客户端请求被ActionServlet拦截。
在ActionServlet处,通常有2种情况:
要求逻辑控制器处理的请求以及单转发的请求。
系统主要以第一种请求为主,即ActionServlet需要调用对应的Action。
因此,ActionServlet将请求转发到Action,如果请求还配置了响应的FormBean,则ActionServlet还负责用请求参数填充ActionForm。
此时的Action无须从HTTPRequest中获取请求参数,而是从ActionForm中或得请求参数。
Action或得请求参数后,调用Model对象由JavaBean处理用户请求。
Action处理完用户请求之后,将处理结果包装秤ActionForward,再回送给ActionServlet。
Struts2框架的大概处理流程如下:
(1)加载类(FilterDispatcher)
(2)读取配置(struts配置文件中的Action)
(3)派发请求(客户端发送请求)
(4)调用Action(FilterDispatcher)从struts配置文件中读取与之相对应的Action
(5)启用拦截器(WebWork拦截器链自动对请求应用通用功能,如验证)
(6)处理业务(回调Action的execute()方法)
(7)返回响应(通过execute方法将信息返回到FilterDispatcher)
(8)查找响应(FilterDispatcher根据配置查找响应的是什么信息如:
SUCCESS、ERROER,将跳转到哪个jsp页面)
(9)响应用户(jsp--->客户浏览器端显示)
3.3.2Spring
Spring[3]是一个开源框架,由RodJohnson创建。
它视为了解决企业应用开发的复杂性而创建的。
Spring使用基本的JavaBean来完成以前只能由EJB完成的事情。
然而,Spring的用途不仅限于服务器端的开发。
从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益.
简单来说,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。
轻量-从大小和开销两个方面而言Spring都是轻量的。
Spring应用中的对象不依赖于Spring的特定类。
控制反转-Spring通过IoC技术促进了松耦合。
当应用其的时候,一个对象依赖的其他对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象。
可以理解成为IoC和JNDI相反。
面向切面-Spring提供了面向切面编程的丰富支持,允许通过分离应用的业务逻辑与系统级服务进行内聚性的开发。
应用对象只实现它们应该做的-完成业务逻辑-仅此而已。
它们不负责其他的系统级关注点,例如日志或事务支持。
容器-Spring包含并管理应用对象的配置和生命周期,在这个意义上它是一种容器。
然而,Spring不应该被混同于传统的重量级EJB容器,它们经常是庞大与笨重的,难以使用。
框架-Spring可以将简单的组建配置、组合成为复杂的应用。
在Spring中,应用对象被声明式地组合,典型地是在一个XML文件中。
Spring也提供了很多基础功能(事务管理、持久化框架集成等),将应用逻辑的开发留给了你。
3.3.3Hibernate3
Hibernate[4]是一个开放源代码的对象关系映射框架,它对JDBC进行了轻量级的对象封装,使Java程序员可以随心所欲的使用对象编程思维来操纵数据库。
它不仅提供了从Java类到数据表之间的映射,也提供了数据查询和恢复机制。
相对于使用JDBC和SQL来手工操作数据库,Hibernate可以大大减少操作数据库的工作量。
另外Hibernate可以利用代理模式来简化载入类的过程,这将大大减少利用HibernateQL从数据库提取数据的代码的编写量,从而节约开发时间和开发成本Hibernate可以和多种Web服务器或者应用服务器良好集成,如今已经支持几乎所有的流行的数据库服务器。
Hibernate技术本质上是一个提供数据库服务的中间件。
它的架构如图2.4所示:
图3.1Hibernate架构
图3.1显示了Hibernate的工作原理,它是利用数据库以及其他一些配置文件如Hibernate.properties,XMLMapping等来为应用程序提供数据持久化服务的。
Hibernate具有很大的灵活性,但同时它的体系结构比较复杂,提供了好几种不同的运行方式。
在轻型体系中,应用程序提供JDBC连接,并且自行管理事务,这种方式使用了Hibernate的一个最小子集;在全面解决体系中,对于应用程序来说,所有底层的JDBC/JTAAPI都被抽象了,Hibernate会替你照管所有的细节。
3.4JSP介绍
JSP[2](JavaServerPages)是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。
JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。
用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。
网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。
JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。
JSP与JavaServlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。
网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。
JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。
Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。
插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。
JSP与Servlet一样,是在服务器端执行的,通常返回给客户端就是一个HTML文本,因此客户端只要有浏览器能浏览。
JSP页面由HTML代码和嵌入其中的Java代码所组成。
服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。
Servlet是JSP的技术基础,而且大型的Web应用程序的开发需要JavaServlet和JSP配合才能完成。
JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。
JSP技术的优点:
(1)一次编写,到处运行。
除了系统之外,代码不用做任何更改。
(2)系统的多平台支持。
基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。
相比ASP/.net的局限性是显而易见的。
(3)强大的可伸缩性。
从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。
(4)多样化和功能强大的开发工具支持。
Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下
(5)支持服务器端组件。
web应用需要强大的服务器端组件来支持,开发人员需要利用其他工具设计实现复杂功能的组件供web页面调用,以增强系统性能。
JSP可以使用成熟的JAVABEANS组件来实现复杂商务功能。
内部对象说明:
request客户端请求,此请求会包含来自GET/POST请求的参数;response 网页传回客户端的响应;pageContext网页的属性是在这里管理;session与请求有关的会话;applicationservlet正在执行的内容;out用来传送响应的输出流;config 代码片段配置对象;page JSP网页本身;exception 针对错误网页,未捕捉的例外。
3.5JavaScript
JavaScript[8]是一种基于对象和事件驱动并具有相对安全性的客户端脚本语言。
同时也是一种广泛用于客户端Web开发的脚本语言,常用来给HTML网页添加动态功能,比如响应用户的各种操作。
JavaScript的一个重要功能就是面向对象的功能,通过基于对象的程序设计,可以用更直观、模块化和可重复使用的方式进行程序开发。
在HTML基础上,使用Javascript可以开发交互式Web网页。
Javascript的出现使得网页和用户之间实现了一种实时性的、动态的、交互性的关系,使网页包含更多活跃的元素和更加精彩的内容。
在本系统中很多地方使用了javascript技术,比如说,检验用户输入数据的有效性,是否重复,是否为空等等。
3.6MyEclipse
MyEclipse[6],是一个十分优秀的用于开发Java,J2EE的Eclipse插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开元产品的支持十分不错。
MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。
它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS,Javascript,SQL,Hibernate。
第四章系统设计
4.1总体设计
根据前面的需求分析,我们将系统划分为如下的三大功能模块。
管理员管理模块重点是学生管理、教师管理、课程管理、班级管理。
对学生、教师、课程、班级的管理包括添加、修改、查看。
教师模块包括对学生成绩的录入和查询,以及对自己联系信息的修改。
学生模块主要是学生对自己成绩进行查询,以及对自己的信息进行修改。
整个系统的主要结构如图4.1所示。
图4.1系统模块结构图
4.2流程设计
学生和教师是本系统的中心对象。
根据模块划分和需求分析可知,该系统的流程主要描述的是当教师对自己所教课程的学生打分以后学生可以登录查询到自己该科目的成绩。
该系统包括三个基本流程,适用于管理员、教师、学生。
图4.2描述的是管理员的操作流程:
首先管理员要进行学生、教师、班级、和课程数据的初始化,这样学生和教师就可以登录使用该系统了。
在系统使用过程中,管理员再进行管理工作。
图4.2管理员的操作流程
图4.3描述的是教师的操作流程:
教师根据管理员提供的初始密码和教师号登录系统。
教师登陆系统后可修改密码、个人信息、公布和查询成绩。
图4.3教师的操作流程
图4.4描述的是学生操作流程:
学生根据学号和初始密码登录系统。
学生登录后,可以查询成绩和修改个人信息。
图4.4学生的操作流程
4.3实体联系图
实体联系图:
简记E-R图是指以实体、关系、属性三个基本概念概括数据的基本结构,从而描述静态数据结构的概念模式。
各实体之间的E-R图:
图4.5学生和班级属性E-R图
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 web 学生 课程 以及 成绩管理系统 毕业设计
![提示](https://static.bdocx.com/images/bang_tan.gif)