-
--
学生成绩管理系统
摘要
目前,学校工作繁杂、资料重多
,管理信息系统已进入高校,但还未普及,
而对于学生成绩管理来说,还没有一套完整的
、统一的系统。因此,开发一套适
和大众的、
兼容性好的系统是
很有必要的。
根据开发要求,
它主要应用于教育系
统,
完成对日常学生成绩的录入查询更新删除等管理操作,
< br>实现学生成绩管理的
计算机化。
开发学生成绩管理系统可
使学院教职员工减轻工作压力,
比较系统地
对教务、教学上的各
项服务和信息进行管理,同时,可以减少劳动力的使用,加
快查询速度、加强管理。本论
文叙述了现在高校学生成绩管理的现状以及
JAVA
语言和一些
开源框架的概况。
重点介绍了学生成绩管理系统的实现过程:
包
括系
统分析、
系统调查、
数据库设计、
功能设计、
系统物理配置方案、
系统实现、
系统测试以及系统功能简介。
关键词:
JSP
,
J2E
E
,学生成绩维护系统,
MySQL
,
Hibernate
,
Struts<
/p>
Abstract
:
At
present, the school work is numerous and diverse,
material is heavy, the
management
information system enters into the university, but
does not popular, but
regarding the
student achievement management, does not have a
set completely and
unification system.
Therefore, develops a set
suitable
,
populace and
compatible good
system is very
necessary. According to the development request,
it mainly applies in
the educational
system, completes to daily student achievement
maintenance
operations and so on input
inquiry renewal deletion, realizes student
achievement
maintenance computerizing.
Developing the student achievement maintenance
system
can let the institute teaching
and administrative staff to reduce the working
pressure,
compare with systematically
to the educational administration, teaching each
service
and the information carries on
the management, simultaneously, can reduce the
labor
force which is used, speed up the
inquiry speed, strengthen the management. The
paper narrated the present university’s
study result management in the present
situation and the JAVA language and
some opens the source frame of the survey.
Introduced the realizes process of the
student achievement management system:
Including the system
analysis
、
the system
investigation
、
the database
design
、
the
functional
design
、
the system physics
disposition plan
、
the system
realize
、
the system
test and the System
Introduction.
--
--
Key words: JSP, J2EE,
Student performance management system,
MySQL,
Hibernate,
Struts
一、绪论
1.1
项目开发背景
一直以来学生的成绩管理是学校工作中的一项重要内容
,
我国的大中专院校
的学生成绩管理水平普遍不高。
随着办学规模的扩大和招生人数的增加,
建立一
个
成绩维护系统是非常必要的。
普通的成绩管理已不能适应时代的发展,
< br>因为它
浪费了许多的人力和物力。
在当今信息时代这种传
统的管理方法必然被以计算机
为基础的信息管理系统所代替。
为
了提高成绩管理的效率,
我选择了学生成绩管
理系统作为毕业设
计的课题。
本系统在大多数
成绩管理系统的基础上,
主要增加了教师对成绩的操作,
教
p>
师改完试卷后不用在往学院的教务处办公室报送成绩,
可以直接的把
成绩上传到
网络上,
学生也可以方便快速的查询到自己的成绩,
考试后教务管理人员也不必
总呆在学院的办公室,
他们都不受时间,
位置,
空间的限制,
只要有上网的条件,
在家里就可以完成有关成绩的录入,更新,管理,查询和
删除。本系统将会改变
以前靠手工管理学生成绩的状况,
提高工
作效率。
希望能为老师和学校的工作带
来便利。
1.2
项目开发的目标
建立学生成绩管理系统,<
/p>
采用计算机对学生成绩进行管理,
进一步提高办学
效益和现代化水平。
帮助广大教师提高工作效率,
实现
学生成绩维护工作流程的
系统化、
规范化和自动化。
为了使系统在学院的管理中发挥更大的作用,
实现工
作过程的计算机化,提高工作效率和工作质量,现提出如下的系统开发目标:
(
1
)系统应具有实用性、可靠性和适用性,同时注意到先进性。
(
2
)对各个数据库进行动态管理,防
止混乱。
(
3
)不同用户有不同的查询和修改权限
,
防止非法查询
,
非法修改。
(
4
)能够对查询结果进行分类汇总,实现报表打印和下载。
(
5
)方便用户的操作,尽量减少用户
的操作。
1.3
项目提出的意义
随着高校办学规模的扩大和招生人数的增加,学生成
绩管理维护是学校管
理中异常重要的一个环节,作为学校,除了育人,就是育知,学生成
绩管理的计
--
--
算机化是整个
学校教务管理中的重要一部分,
介于它的重要性,
学生成绩管理
系
统的开发与应用就逐渐提入议程,并占着越来越重要的份量。
运用学生成绩管理维护系统可以减轻学院教学人员的工
作量,
缩小开支,
提
高工作效率与准确
率,能够节省时间,学生也能够尽快的知道自己的考试成绩,
投入新的课程的学习或复习
这次没有考过的课程。
而学生成绩管理系统的应用也
为今天的民
办教育在未来市场的竞争力有所提高。
在现代高科技的飞跃发展,人们工作习惯的改变,特别是电脑的大量普及,
人
们生活节奏越来越快,
怎样提高工作效率是人们首先考虑的问题。
学生成绩管
理是一个非常繁琐与复杂的一项工作,
一个原因就
是工作量大,
不好管。
对于一
个学校而
言,
管理好学生的成绩,
是非常重要的。
因此开发出一套学生成绩管理
系统是非常必要的。
1.4
系统开发所用的技术准备
1.4.1
数据库技术的现状与发展
数据库是
60
年代末出现的一门计算机软件技术
,到现在虽然只有三十多年
的历史,
但在理论和时间上都已经趋
于成熟,
使我们能够方便的使用。
数据库技
术是信息系统的核心和基础,
它的出现极大地促进了计算机应用向各行各业的渗
p>
透数据库的建设规模、
数据库信息量的大小和使用频度已成为衡量一
个国家信息
化程度的重要标志。
My
SQL
作为一种开放源码数据库,
以其简单易用的特点广泛被广
大用户采用,
MySQL
虽然是免费的,
但同
Oracle,
Sybase,
Informix,
Db2
等商业数
据库一样,
具有数据库系统的通用性:
(
1
)数据库管理系统。我们知道,所谓的数据库就是一些结
构化的数据的联合
体,
要提供对这些数据的存取、
增加、
修改、
删除或更加复杂的数据抽取等操作,<
/p>
需要有一个支撑系统,这就是数据库管理系统(
DBMS
),
MySQL
完全具有这方面
的功能。
(
2
)关系型数据库管理系统。在数据库的发展历程中,曾出现过多种不同形式
的
数据库系统,但关系型数据库管理系统(
RDBMS
)以其优越
性而被广为采用,
象现在几种广泛使用的数据库全为关系型数据库。同样,
MySQL
也是关系型的数
据库系统,支持标准的结
构化查询语言(
Structured Query
Language
)。
--
--
(
3
)
开放源码数据库。同商业性的数据库相比,这是
MySQL
最大
的特点。
MySQL
的源码是公开的,
这就意味着任何人,
只要遵守
GPL
的
规则都可以对
MySQL
的源
码使用、
修改以符合自己特殊的需求。
(
4<
/p>
)技术特点。
MySQL
服务器端是多线
程的,为客户端提供了不同的程序接口
和链接库,如
C
、
C++
、
Java<
/p>
、
Perl
、
P
HP
、
Tcl
等,也提供了简单的管理
工具,
如
mysqladmin
,
p>
mysql
等。
正因为
MySQL
的源码是公开的,使
得我们有机会从源码级,更深入的了解
MySQL
。从这一层面
上可以探求、了解
MySQL
数据库的特性:良好的内存管理机
制,尤其是内存泄漏的管理,通过了
Purify
的严格测试;支持多种平台;
提供
多种形式的
API
,为我们开发工具的选择提供了便利
;
使用多线程的技术,可
充分发挥系
统的特点,
避免在
SMP
系统中出现仅
使用单
CPU
的现象;
对磁盘表的
p>
管理采用
B
树加密及索引的技术,为我们快
速访问数据提供了可能;
高性能的
内
存申请技术;
临时表采用在内存中以哈希表实现;
提供多种数据
类型;
支持定
长的和变长的纪录;所有的列都有缺省值,为我们
的某些“粗心”提供了方便;
灵活、安全的权限和密码系统,密码在传输中加密传送,允
许主机端验证密码;
13
)客户端可以通过
TCP/IP
、
Unix
套接字、
命名管道(
NT
)连接到
MySQL<
/p>
数据
库服务器;对多种字符集的完全支持等等许多优点。
MySQL
有如此多的特点,又
由于其免费的特
点,
这就给许多的中小应用提供了不错的选择。
尤其是对一些中
小企业,
无论是从降低成本,
还是从性
能方面,
采用
MySQL
作为其数据支
撑系统,
都是一种可行的方案。
但也应当注意,
采用
MySQL
作为应用数据库,
就意味着所
有的问题都需要自己解决,要承担一定的风险。
1.4.2 JAVA
语言的概述
<
/p>
Java
是一种简单的,面象对象的,分布式的,解释的,键壮的
,安全的,
结构的,中立的,可移植的,性能很优异的多线程的,动态的语言。当
1995
年
SUN
推
出
Java
语言之后,全世界的目光都被这个神奇的语言所吸引
。
Java
语言其实最早诞生于
p>
1991
年,起初被称为
OAK
语言,是
SUN
公司为一
些消费性电子产品而设计的一个通用环境。
他们最初的目的只是为了开发一种独
立于平台的软件技术,而且在网络出现之前,
OAK
可以说是默默无闻,甚至差点
夭折。但是,网络的出现改变了
OAK
的命运。在
Java
出现以前
。
Internet
上的
信息内容都是
一些乏味死板的
HTML
文档。这对于那些迷恋于
WEB
浏览的人们来
--
--
说简直不可容忍。
他们迫切希望
能在
WEN
中看到一些交互式的内容,
开发人员也
极希望能够在
WEB
上创建
一类无需考虑软硬件平台就可以执行的应用程序,
当然
这些程序
还要有极大的安全保障。
对于用户的这种要求,
传统的编程语言
显得无
能为力,
而
SUN
的工程师敏锐地察觉到了这一点,
从
1994
年起,
他们开始将
OAK
技术应用于
WEB
上,并且开发出了
HotJava
的第一个版本。当
SUN
公司
1995
年
正式以
Java
这个名字推出的时候,几乎所有的
WEB
开发人员都想到:噢,这正
是我想要的。于是
< br>Java
成了一颗耀眼的明星,丑小鸭一下了变成了白天鹅。
1.4.3
编码
程序设计语言是人和计算机通信的最基本的工具,
它的特点必然会影响人的
思维和解决问题的方式,
会影响人和计算机通信的方式和质量,
也会影响其他人
阅读和理解程序的难易程度。因此在编码时所选
择的编码语言是很重要的。
本系统主要使用了基于
JAVA
语言的
JSP
技
术
Servlet
技术,
Hibern
ate
开
源框架技术,
Struts<
/p>
开源框架技术,以及
HTML
、
CSS
、
XML
等等语
言和技术。因
此该系统据有
JAVA
的
所有优点,移植性能比较好,数据库移植也比较容易。本
系统使用了许多的框架技术扩展
也比较容易。
在编码实现过程中,
使
用了基本的控制结构,
每行只写一行代码,
在必要的
地方加了许多的注释,
结构清晰,
代码容易阅读。
对所有的输入数据都进行了检
验,
并且
对组合输入也进行了级联验证,
输入的格式也比较简单。
对于验
证出错
的,
给出详细的错误信息,
使用
户可以很清楚的知道自己在哪里出错了,
方便用
户的使用。
p>
二、系统需求分析
2.1
系统调查
21
世纪以来,人类经济高速发展,
人们发生了日新月异的变化,特别是计
算机的应用及普及到经济和社会生活的各个领域。
使原本的旧的管理方法越来越
不适应现在社会的发展。
许多人还停留在以前的手工操作。
这大大地阻碍了人类
< br>经济的发展。
为了适应现代社会人们高度强烈的时间观
念,
我对河南科技学院新科学院的
原有的学生成绩管理系统进行
了调查研究,
并对一些教师和学生进行了调查,
听
取他们对学生成绩管理的一些建议和要求以及他们对这方面的一些需求,
根据
我
--
--
所具有的知识,决定开
发的这个系统采用当前较为流行的编程软件
Java
作为实
p>
现语言,以数据库
MySql
作为系统的后
台操作
.
2.2
系统构架
系统采用的是
B/S
结构,
即浏览
器和服务器架构,
示意图如图
2-1
所
示。
浏
览器端提供用户操作界面,
接受
用户输入的各种操作信息,
向服务器发出各种操
作命令或数据请
求,
并接收执行操作命令后返回的数据结果,
根据业务逻辑进行
相关的运算,
向用户显示相应的信息。
服务器端接收浏览器端的数据或命令请求,
并请求数据库服务器执行数据库操作得到相应
的数据集,
对数据集进行相应的处
理,然后将数据集或处理后的
数据集返回给浏览器端。
用户浏览器
Web
服务器
数据库服务器
图
2-1
系统架构示意图
2.3
用户需求
2.3.1
学生的需求
(1)
在第一时间查询自己所有的成绩(自己的平均成绩
p>
,
总成绩)
(2)
查询某一科成绩
,
该科平均成绩,所在名次,最高成绩,最低成绩
(3)
打印和下载自己的成绩
2.3.2
老师的需求
(1)
查询某一学生的所有成绩(平均成绩
< br>,
总成绩)
(2)
查询某一学生某一科成绩
,
该科平均成绩,所在
名次,最高成绩,最低成绩
(3)
查询某一班级的成绩
(所有成绩
,
某一
学期的所有成绩
,
某一学期的某一科目
的所有成绩)
(4)
对某一科成绩
进行统计(及格人数,及格率,不及格人数,不及格率,优秀
人数,优秀率,某一分数段
的人数)
(5)
录入成绩和修改更
新成绩(自己所教授的那一科成绩
)
(6)
打印和下载所查询或统计出的结果
2.3.3
管理员的需求
(1)
查询某一学生的所有成绩(平均成绩
< br>,
总成绩)
(2)
查询某一学生某一科成绩
,
该科平均成绩,所在
名次,最高成绩,最低成绩
(3)
查询某一班级的成绩
(所有成绩
,
某一
学期的所有成绩
,
某一学期的某一科目
的所有成绩)
--
--
(4)
对某一科成绩进行统计(及格人数,及格率,不及格人
数,不及格率,优秀
人数,优秀率,某一分数段的人数)
(5)
录入成绩和修改成绩
(6)
打印和下载所查询或统计出的结果
(7)
用户管理
(8)
数据库管理
2.4
系统方框图
系统层次方框图如图
2-2
所示:
图
2-2
系统层次方框图
2.5
系统设计思想
(
1
)采用现有的资源,先进的管理系统开发方案,充
分利用学校现有的资源,
减少开发中的时间和财力、物力、提高系统开发的水平和应用效
果。
(
2
)系统就满足学校的需求,例如学生成绩的录入、查询、更新,学生成绩录
入与排名等等。
(
p>
3
)系统具备数据库维护功能,及时根据用户需求进行数据添加、删
除、修改
等操作。
2.6
系统设计分析
本系统使用
Struts
开源框架实现
MVC
三层模式进行开发,使模型,视图和
控制分开,
业务逻辑和显示分开,这样有利于错误的查找和系统的升级。
该系统适用于各个学校,其功能主要为:
成绩管理:用于对成绩的录入、修改、汇总、排名以及查询等
操作。
三、数据库设计
3.1
数据库表的设计
本系统将数据存储在六个表中,这六个表分别是:学生表(见
表
3-1
):保
存学生的基本信息,包括学生的姓名,登录系统时的密码,学生的学号,所在的
班级以
及一些备注信息。
表
3-1
学生表
字段名称
中文解释
保存类型
默认
值
id
主键自增
int
无
--
16
不能
是
长度
可否为空
主键
--
name
password
姓名
登录时密
码
student_id
classes
remark
学号
班级
备注
varchar
varchar
varchar
无
无
无
20
24
56
不能
不能
可以
否
否
否
varchar
varchar
无
无
24
24
不能
不能
否
否
教师表(见
表
3-2
):保存教师的基本信息,包括教师的姓名,登录系统时的
密码,教师号,备注,其中备注默认为“
0
”,当为“
p>
1
”的时候教师可以录入和
修改学生的成绩
,为空或者是其他值的时候,录入功能将被锁定。
表
3-2
教师表
字段名称
id
name
password
中文解释
主键自增
姓名
登录时密
码
student_id
remark
教师号
备注
varchar
varchar
无
“
0
”
20
56
不能
可以
否
否
保存类型
int
varchar
varchar
默认值
无
无
无
长度
可否为空
主键
16
24
24
不能
不能
不能
是
否
否
p>
班级表(见表
3-3
):保存班机的基本信
息,包括班级名称和备注。
表
3-3
班级表
字段名称
中文解释
保存类型
id
classes
remark
主键自增
班级名称
备注
int
varchar
varchar
默认值
无
无
无
长度
16
24
56
可否为空
主键
不能
不能
可以
是
否
否
教师所担任课程的表(见
表
3-4
):保存教师所教的课程信息。
表
3-4
教师所担任课程的表
字段名称
id
subject
中文解释
主键自增
所教授的科
目
--
保存类型
int
varchar
默认值
无
无
长度
可否为空
主键
16
24
不能
不能
是
否
--
classes
student_id
remark
班级
教师号
备注
varchar
varchar
varchar
无
无
无
24
20
56
不能
不能
可以
否
否
否
教务管理员表(见
表
3-5
):保存管理员的基本信息。
表
3-5
教务管理员表
字段名称
id
name
password
中文解释
主键自增
登录名
登录时密
码
remark
备注
varchar
无
56
可以
否
保存类型
int
varchar
varchar
默认值
无
无
无
长度
可否为空
16
24
24
不能
不能
不能
主键
是
否
否
成绩表(见
表
3-6
):主要保存关于学生成绩的一些信息,本系统主要是对该
表的操作。
表
3-6
成绩表
字段名称
id
name
subject
student_id
classes
property
term
teacher
中文解释
主键自增
姓名
科目
学号
班级
考试性质
学期
该科目的教
师
result
remark
成绩
备注
int
varchar
无
无
16
56
可以
可以
否
否
保存类型
int
varchar
varchar
varchar
varchar
varchar
varchar
varchar
默认值
无
无
无
无
无
无
无
无
长度
16
24
24
20
24
24
24
24
可否为空
主键
不能
不能
不能
不能
不能
不能
不能
不能
是
否
否
否
否
否
否
否
3.2
数据库所使用的技术
本系统所使用的
数据库是
MySQL
数据库,
使用
p>
Hibernate
开源框架对数据库
进行
操作。
Hibernate
对
JDB
C
进行轻量级的封装,他给我们提供了许多对数据
--
--
的操作方法,方便我们的编程,提高开发效率。
Hibernate
使用的是
HQL
查询语
言,
里面封装了许多数据库方言,
根据
Hibernate
的配置文件来转换为相
应数据
库的
SQL
语句。
可以很方便的实现对数据库的移植,
不需要修改代码,
或只是需
要修改少量代码就可以了。
Hibernate
配置文件:
内容
如下:
jdbc:mysql://localhost
:3306/ssmange
ialect
mysqlDriver
--
-
-
-
-
-
-
-
-
-
上一篇:错误提示及解决方法
下一篇:comsol错误提示及解决方法