学生成绩管理系统1.docx
- 文档编号:13957359
- 上传时间:2023-06-19
- 格式:DOCX
- 页数:41
- 大小:316.64KB
学生成绩管理系统1.docx
《学生成绩管理系统1.docx》由会员分享,可在线阅读,更多相关《学生成绩管理系统1.docx(41页珍藏版)》请在冰点文库上搜索。
学生成绩管理系统1
基于SSH的学生课程及成绩管理系统的设计和实现
摘要
在当前信息化时代,学生的课程及成绩管理仅仅依赖于手工操作,不仅加大了管理者的工作量,而且还浪费了大量的人力、物力,并且容易造成学生学籍管理的不规范性。
学生课程及成绩管理系统是目前高校不可缺少的系统。
在当前计算机和网络技术高速发展的时代,人们开始充分利用现有的资源来进行学校学生课程及成绩的管理。
学生课程及成绩管理系统作为高校教务管理工作的一部分,既方便了学生选课和查看学分、教师的教学管理,又方便了学校的教务管理。
在这个学生课程及成绩管理系统中,系统主要由登陆模块、学生模块、教师模块和管理员模块四部分组成。
其功能包括:
学生登陆以后,可以选报课程,系统会根据学生所在系及课程的预修课判断(课程有系别,预修课等属性)所选课程。
教师在本系统中拥有是否接受学生所选课程,以及给学生打分的权力,只有先接受学生,才能给该生打分。
管理员在本系统中有着最高的权力,包括新增,更改,删除学生,教师,课程以及班级。
该系统的开发应用体现了当今学生课程及成绩管理技术的自动化、信息化的发展方向,使教务处在实施教学、管理等方面的更高效、更系统、更科学。
关键字:
学生课程及成绩管理系统;JSP;Hibernate;Struts;
ABSTRACT
IntheITage,tomanagethegradesofthecollegestudentsbyhandworkisnotonlytomultiplydifficultiestothemanagersbutalsotowastealotofmanpowerandresourcesandtomakethemanagementnostandard.InthetimeofthehighdevelopmentofInternettechnology.ThecontrolsystemofCourseandGradeManagementSystemofStudentsisnecessaryintoday'scollege.Peopleincollegemanagewithmoderninformation,thecontrolsystemisapartofcollegemanagement,it'seitherforstudentstolookuptheirgradeseasilyorfortheteacherstomanagetheirteachingresult,alsotomakeitconvenientforcollege.
Inthecontrolsystem,itcontainsfourparts,theyareloginmodular、themodularofstudents、modularofteacherandmanagermodular.It'sfunctioniswhenastudentisonthesystemhe(she)canannouncethelessonselected,thenthesystemwillassessthesituationsaccordingtothestudent'sinformationtoapprove.Teachershavetherighttoacceptthestudent'slessonandmarkit,onlyacceptthestudentfirstcanhardlymakethat.Themanagershavethehighrightinthesystem,hecanadd,changeorstrikeoutthestudents、teachers、lessonsandclasses.
Theuseofthissystemshowsthemanagementtechnologyofcurriculumofstudentsdevelopsintoautomationandinformalization.Theteachingaffairsofficeusesthecontrolsystemwillmakethemanagementhigheffect,normalandscientific.
Keywords:
CourseandGradeManagementSystemofStudents;JSP;Hibernate;Struts
目录
摘要Ⅰ
AbstractⅡ
目录Ⅲ
第1章绪论1
1.1学生课程及成绩管理系统的现状分析1
1.2学生课程及成绩管理系统的必要性1
1.3设计的概述及结构安排1
第2章系统相关技术简介2
2.1J2EE技术概述2
2.2MVC三层架构开发模式2
2.3MySQL简介4
2.3.1MySQL的特性4
2.3.2MySQL的应用5
第3章系统的总体设计6
3.1系统功能分析6
3.2系统模块分析6
第4章数据库设计7
4.1数据库逻辑结构设计7
4.2数据库的创建8
第5章系统功能模块的设计与实现11
5.1管理员模块功能的设计与实现11
5.1.1系统登录设计11
5.1.2管理员功能设计11
5.1.3管理员操作界面设计12
5.1.4代码实现15
5.2教师模块功能的设计与实现16
5.2.1教师功能设计16
5.2.2教师操作界面设计17
5.2.3代码实现18
5.3学生模块功能的设计与实现26
5.3.1学生功能设计26
5.3.2学生操作界面设计26
5.3.3代码实现28
第6章总结与展望32
参考文献33
致谢34
第1章绪论
1.1学生课程及成绩管理系统的现状分析
学生课程及成绩管理系统是目前高校不可缺少的系统。
在当前信息化时代,对学生课程及成绩的管理仅仅依赖手工操作,己经远远不能满足实际的需要了。
在当前计算机和网络高速发展的时代,人们开始充分利用现有的资源来进行学校学生课程及成绩的管理,并且充分利用了B/S开发模式的优势,系统中的各个角色只要通过网络浏览器就能使用系统,非常方便。
利用计算机对学生信息进行管理,具有人工管理无法比拟的优点,如:
检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等,这此优点能够极大的提高学生课程及成绩管理的效率,也是科学化、正规化的体现。
因此,开发适应新形势需要的学生课程及成绩管理系统是很有必要的。
1.2学生课程及成绩管理系统的必要性
在21世纪的科技时代,科学技术突飞猛进,计算机已经不仅是在科技上应用,而且在生活中也是同样得到了广泛在应用。
如今,不管是小学,初中,高中,甚至是很多大学生的学生课程及成绩管理基本上是靠人工进行管理,但随着时间的变化,学校规模的扩大,有关课程及学生成绩管理工作和所涉及到的数据量越来越大越来越多,大多数学校不得不靠增加人力,物力,财力来进行学生课程及成绩管理。
但是人工管理成绩档案具有效率低,查找麻烦,可靠性不高,保密性低等因素。
因此开发出一个不仅仅是适用于大中专院校以及其它高校通用的学生课程及成绩管理系统是必要的。
1.3设计的概述及结构安排
本设计的大致结构为:
第1章分析了学生成绩与课程管理系统的现状、重要性及论文的结构安排;第2章对系统的相关理论和技术支持进行了理论性说明;第3章阐述了系统的总体设计;第4章介绍系统数据库设计;第5章为管理员功能的设计与具体实现;第6章为教师功能的设计与具体实现;第7章为学生功能模块的设计与具体实现。
第2章系统相关技术简介
2.1J2EE技术概述
J2EE是一种利用Java2平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构。
J2EE技术的基础就是核心Java平台或Java2平台的标准版,J2EE不仅巩固了标准版中的许多优点,其最终目的就是成为一个能够使企业开发者大幅缩短投放市场时间的体系结构。
J2EE体系结构提供中间层集成框架用来满足无需太多费用而又需要高可用性、高可靠性以及可扩展性的应用的需求。
通过提供统一的开发平台,J2EE降低了开发多层应用的费用和复杂性,同时提供对现有应用程序集成强有力支持,完全支持EnterpriseJavaBeans,有良好的向导支持打包和部署应用,添加目录支持,增强了安全机制,提高了性能。
2.2MVC三层架构开发模式
MVC英文即Model-View-Controller,即把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行分离,这样一个应用被分成三个层——模型层、视图层、控制层。
视图(View)代表用户交互界面,对于Web应用来说,可以概括为HTML界面,但有可能为XHTML、XML和Applet。
随着应用的复杂性和规模性,界面的处理也变得具有挑战性。
一个应用可能有很多不同的视图,MVC设计模式对于视图的处理仅限于视图上数据的采集和处理,以及用户的请求,而不包括在视图上的业务流程的处理。
业务流程的处理交予模型(Model)处理。
比如一个订单的视图只接受来自模型的数据并显示给用户,以及将用户界面的输入数据和请求传递给控制和模型。
模型(Model):
就是业务流程/状态的处理以及业务规则的制定。
业务流程的处理过程对其它层来说是黑箱操作,模型接受视图请求的数据,并返回最终的处理结果。
业务模型的设计可以说是MVC最主要的核心。
目前流行的EJB模型就是一个典型的应用例子,它从应用技术实现的角度对模型做了进一步的划分,以便充分利用现有的组件,但它不能作为应用设计模型的框架。
它仅仅告诉你按这种模型设计就可以利用某些技术组件,从而减少了技术上的困难。
对一个开发者来说,就可以专注于业务模型的设计。
MVC设计模式告诉我们,把应用的模型按一定的规则抽取出来,抽取的层次很重要,这也是判断开发人员是否优秀的设计依据。
抽象与具体不能隔得太远,也不能太近。
MVC并没有提供模型的设计方法,而只告诉你应该组织管理这些模型,以便于模型的重构和提高重用性。
我们可以用对象编程来做比喻,MVC定义了一个顶级类,告诉它的子类你只能做这些,但没法限制你能做这些。
这点对编程的开发人员非常重要。
业务模型还有一个很重要的模型那就是数据模型。
数据模型主要指实体对象的数据保存(持续化)。
比如将一张订单保存到数据库,从数据库获取订单。
我们可以将这个模型单独列出,所有有关数据库的操作只限制在该模型中[3].[220~225]。
控制(Controller)可以理解为从用户接收请求,将模型与视图匹配在一起,共同完成用户的请求。
划分控制层的作用也很明显,它清楚地告诉你,它就是一个分发器,选择什么样的模型,选择什么样的视图,可以完成什么样的用户请求。
控制层并不做任何的数据处理。
例如,用户点击一个连接,控制层接受请求后,并不处理业务信息,它只把用户的信息传递给模型,告诉模型做什么,选择符合要求的视图返回给用户。
因此,一个模型可能对应多个视图,一个视图可能对应多个模型。
模型、视图与控制器的分离,使得一个模型可以具有多个显示视图。
如果用户通过某个视图的控制器改变了模型的数据,所有其它依赖于这些数据的视图都应反映到这些变化。
因此,无论何时发生了何种数据变化,控制器都会将变化通知所有的视图,导致显示的更新。
这实际上是一种模型的变化-传播机制。
模型、视图、控制器三者之间的关系和各自的主要功能,如图2.1所示:
图2.1MVC三层架构
2.3MySQL简介
MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司。
在2008年1月16号被Sun公司收购。
目前MySQL被广泛地应用在Internet上的中小型网站中。
由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
2.3.1MySQL的特性
1.使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性。
2.支持AIX、FreeBSD、HP-UX、Linux、MacOS、NovellNetware、OpenBSD、OS/2Wrap、Solaris、Windows等多种操作系统[5].[200~215]。
3.为多种编程语言提供了API。
这些编程语言包括C、C++、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl等。
4.支持多线程,充分利用CPU资源。
5.优化的SQL查询算法,有效地提高查询速度。
6.既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名。
7.提供TCP/IP、ODBC和JDBC等多种数据库连接途径。
8.提供用于管理、检查、优化数据库操作的管理工具。
9.可以处理拥有上千万条记录的大型数据库。
2.3.2MySQL的应用
与其他的大型数据库例如Oracle、DB2、SQLServer等相比,MySQL自有它的不足之处,如规模小、功能有限(MySQLCluster的功能和效率都相对比较差)等,但是这丝毫也没有减少它受欢迎的程度。
对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本[11].[57~58]。
目前Internet上流行的网站构架方式是LAMP(Linux+Apache+MySQL+PHP),即使用Linux作为操作系统,Apache作为Web服务器,MySQL作为数据库,PHP作为服务器端脚本解释器。
由于这四个软件都是遵循GPL的开放源码软件,因此使用这种方式不用花一分钱就可以建立起一个稳定、免费的网站系统。
第3章系统的总体设计
3.1系统功能分析
此章节阐述了学生课程及成绩管理界面登录模块的总体设计,本系统是用于高校教学管理的学生课程及成绩管理系统。
基本信息由管理员维护,学生和教师登录系统后,根据这些基本信息进行操作。
要实现的功能包括3个方面:
第一个方面是管理员的管理功能,包括学生管理、教师管理、课程管理和班级管理;第二个方面是学生管理功能,包括学生选择课程、查看学分和更改信息;第三个方面是教师管理功能,包括给自己所教课程、选择学生和给上自己课程的学生打分。
这三个方面加上登录模块共同组成了这个系统。
3.2系统模块分析
本系统中的中心对象是学生和教师。
管理员起着系统维护的作用,根据以上的模块划分和功能分析可知,该系统的流程主要描述的是学生选择课程后,教师根据选课的学生决定选哪些学生,最后教师给学生学分。
该系统的适用对象包括管理员、学生和教师,因此包括三个基本流程。
图3.1描述的是管理员这一模块的功能分析:
图3.1系统功能模块总体分析
第4章数据库设计
4.1数据库逻辑结构设计
根据功能模块的划分的结果可知,本系统的用户有三类:
管理员、学生和教师。
由于管理员、学生和教师的权限和操作功能大不相同,因此在本系统中我们需要分别进行数据记录。
所需要的数据实体有以下5个:
管理员数据实体:
只需要记录管理员的登录名、姓名和密码,其中登录名和密码是管理功能模块登录验证时所必需的。
学生数据实体:
包括学生号、密码、学生姓名、性别、学生所在系、籍贯、联系电话、电子邮件。
这些信息中,密码、联系电话和电子邮件由学生自己进行维护,管理员在学生入学时根据填写的信息初始化学生信息,在以后的维护过程中,仅在特殊情况下对信息进行修改操作。
教师数据实体:
包括教师号、密码、教师姓名、职称。
这些信息由管理员初始化,如果有所改动都要由管理员维护。
课程数据实体:
用于记录所有课程的基本信息,包括课程的课程号、课程名、学分、系别和预选修情况。
这些信息由学校的工作人员以管理员身份登录后进行维护。
班级数据实体:
用于记录班级的基本信息,包括班级号、教师、课程、教室和上课时间。
这些数据由管理员进行录入和维护(如果与学校排课系统等结合,数据就由那些系统来提供)。
以上的5个实体都是基本的数据实体。
作为学生课程及成绩管理系统,还要记录学生选课和学分情况,因此又有如下的实体:
学生课程及成绩数据实体:
包括学生号、所上课班级、是否被老师接收和所给学分。
以下是这六个数据实体的关联关系如图4.1所示:
教师ID
教师信息
图4.1数据实体关系
4.2数据库的创建
根据前一节数据实体关系的分析,在这个系统中我需要建立7张数据表:
A.管理员表(admin):
用于存放管理员用户的数据记录。
B.学生信息表(student):
用于存放所有学生的基本信息。
C.教师信息表(teacher):
用于存放所有上课教师的基本信息。
D.学生课程表(course):
用于存放所有学生课程及成绩信息。
E:
班级信息表(classes):
用于存放所有与班级相关的信息。
F:
系信息表(Departments):
用于保存系相关信息。
G:
成绩表(scores):
用于保存所有课程成绩相关信息。
表格创建如下:
表4.1admin管理员表
序号
字段
含义
类型
1
id
管理员编号
bigint
2
name
姓名
varchar
3
password
密码
varchar
表4.2teahcer教师信息表
序号
字段
含义
类型
1
teacherid
教师编号
bigint
2
name
姓名
varchar
3
title
职称
varchar
4
password
密码
varchar
表4.3student学生信息表
序号
字段
含义
类型
1
studentid
学生编号
bigint
2
name
姓名
varchar
3
password
密码
varchar
4
jiguan
籍贯
varchar
5
department
所在系
varchar
6
sex
性别
varchar
7
mark
学分
int
8
tel
联系电话
varchar
9
电子邮箱
varchar
表4.4course学生课程表
字段名
字段描述
数据类型
courseid
课程编号
bigint
coursename
课程名
varchar
teacherid
教师编号
bigint
classid
班级号
bigint
coursehours
学时数
int
slectedstage
学期
int
表4.5classes班级信息表
字段名
字段描述
数据类型
classid
班级号
bigint
classname
班级名称
varchar
partmentid
系号
bigint
teacherid
班主任教师号
bigint
表4.6departments系信息表
字段名
字段描述
数据类型
departmentid
系号
bigint
departmentname
系名
varchar
表4.7scores成绩表
字段名
字段描述
数据类型
courseid
课程号
bigint
studentid
学生号
bigint
score
成绩
Float
Soresbk
补考成绩
Float
本章是学生课程及成绩管理系统的数据库设计。
主要对相关数据库及其结构作了介绍。
第5章系统功能模块的设计与实现
5.1管理员模块功能的设计与实现
5.1.1系统登录设计
对于每一个操作用户,系统都给赋予了用户名,角色和密码,用户进入登陆界面login.jsp,输入已分配的用户名和密码,选择角色可以进入系统的相关页面。
如下图5.1所示:
图5.1系统登录设计
5.1.2管理员功能设计
管理员登陆到本系统后。
将进入到管理员首页,管理员可以通过这个页面来选择自己所要做的操作,基本信息管理、课程管理、成绩管理等等,下面分别加以介绍。
(1)基本信息管理
管理员也就是教务干事在基本信息管理子系统中完成对运行教务所需的基本数据的维护(如:
学生信息、教师信息、班级信息等)。
管理员可以对系、学生、教师、班级信息可以进行新增、编辑、删除、查询操作。
下面以学生信息的维护来说明基本信息管理子系统的功能。
在管理员首页中选择了基本信息管理中的学生信息将进入学生信息管理的页面,在此页面中显示出所有学生列表,包括学生的学号、姓名、班级、性别、籍贯等等,还提供对学生管理操作的入口,包括新增学生信息、删除学生信息编辑学生信息。
新增学生:
管理员要添加学生,就要进入新增学生的页面。
(2)学生功能设置
学生登陆课程及成绩管理系统后,将进入到学生页面,学生可以通过这个页面来选择自己所要做的操作,查看课程信息、查看成绩信息。
(3)课程管理
管理员可以在这个页面可以对课程信息进行维护,添加、修改、删除课程信息。
在这里还可以进行以多种方式查询课程信息如按班级查询,按学年学期查询,按课程名查询,按教师查询。
(4)成绩管理
成绩管理页面完成的功能,包括成绩信息的维护,成绩查询、信息的统计分析。
(5)教师功能设计
教师登陆课程及成绩管理系统后,将进入到教师页面,教师可以通过这个页面来选择自己所要做的操作:
输入修改学生成绩、查看所教授课程信息查看所教授学生信息、修改个人信息,以班级、课程、学期为条件进行成绩询。
5.1.3管理员操作界面设计.
管理员登陆到本系统后。
将进入到管理员首页,管理员可以通过这个页面来选择自己所要做的操作,基本信息管理、课程管理、成绩管理。
管理员可以对学生、教师班级信息可以进行新增、编辑、删除、查询等操作。
(1)登陆界面
界面如下图5.2:
图5.2管理员管理界面
(2)管理学生界面
界面如图5.3:
图5.3管理员管理学生界面
(3)管理教师界面
界面如图5.4:
图5.4管理管理教师界面
(4)管理班级界面
界面如图5.5:
图5.5管理员管理班级界面
(5)管理课程界面
界面如图5.6:
图5.6管理员管理课程界面
(6)修改管理员信息界面
界面如图5.7:
图5.7管理员管理管理员界面
5.1.4代码实现
系统的struts.xml文件中管理员的配置如下:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 成绩管理系统
![提示](https://static.bingdoc.com/images/bang_tan.gif)