1引言
1.1 学生成绩管理系统的现状及开发背景
21世纪以来,随着信息技术在全球范围内的兴起,以及互联网的迅速发展,使计算机渗透到国民经济和社会发展的各个领域和各个层次。由于我国高校的进一步扩招和对高校信息管理要求的进一步提高,原先的一些学生成绩管理系统的局限性已经显现出来了。在这样的背景下,为了加快校园的信息化建设,实现高校办公自动化也就显得越来越重要了。
高校学生的信息量是非常庞大的,如何有效利用信息技术管理好学生信息,加快高校信息化进程,成为高校管理者所面临的新的课题。以前高校的成绩管理工作都是在手工的情况下完成的,效率低下、重复工作、数据不能共享、管理模糊,现在利用计算机来管理学生成绩更能体现查询快捷、保密性好、安全性高、存储量大、寿命长、成本低和效率高等优点,同时更有利于管理和操作。
1.2 学生成绩管理系统的主要特征
网络学生成绩管理系统是大学信息管理系统建设的重要组成部分,也是实现学校管理现代化和信息化的重要内容。它作为典型的信息管理系统,是对学生学习管理的重要组成部分,也是教务工作中一项重要的内容。它是一项相当具体、细致的工作,各个环节相互联系,不仅工作量大,而且十分复杂,涉及面极广。学生成绩管理系统的成功开发,实现了学生成绩信息化管理的基础,从而使工作人员从繁重的事务性工作中解放出来。
1.3 系统的主要工作
论文通过结合高校学生成绩管理的水平和现实状况,分析了现今学生成绩管理系统中所应用的几个环节,并针对每个环节作出了详细的阐述和探讨。根据实际情况确定了不同权限的用户管理;课程管理;成绩管理;班级管理等四大模块,介绍了系统开发用到的JSP环境NetBeans IDE 4.1、使用的相关JSP技术和Java编程语言,以及后台数据库SQL-Server 2000的搭建方法和使用,并对模块的功能进行了具体分析和详细设计。并通过综合剖析系统,从而得出结论:学生成绩管理系统在高校可以得到广泛的运用。
2系统开发工具
本章主要介绍了学生成绩管理系统所用到的主要开发工具,采用的技术及其相关技术的比较。其中包括J2EE框架下的JSP,Servlet,JavaBean的基本方法和MVC设计模式的基本原理以及SQL-Server2000数据库的相关介绍。
本系统采用Servlet+JSP+JavaBean+SQL-Server 2000的设计方式。其中Servlet担当主要逻辑控制,通过接受Jsp传来的客户端请求,调用以及初始化JavaBean,再通过JSP传到客户端;SqlBean担当主要的与数据库的连接与通信;JavaBeans主要担当配合JSP以及Servlet来完成客户端的请求;而JSP主要担当接受与响应客户端的任务。这样使得程序代码不仅通俗易懂,而且大大地提高了代码的可重用性。另外,系统采用SQL-Server 2000数据库,可靠性更高,比较适合中小型数据库系统的开发。
2.1 JSP技术与Java语言的概述
2.1.1 JSP技术与ASP技术的比较
总的来讲,Sun公司的JSP技术和微软的ASP技术在很多方面都有相似之处。两者都是为基于WEB应用实现动态交互网页制作提供的技术环境支持,都能够为开发人员提供程序实现的编制与自带组件设计网页从逻辑上分离的技术,而且都能够替代CGI使网站建设与发展变的较为简单与快捷。
尽管JSP和ASP技术在许多方面都很相似,但核心部分还是存在较大的差异。其中最本质上的区别在于:两者是来源于不同的技术规范组织,其实现的基础、对WEB服务器平台的要求都大不相同。另外,对于这两种技术而言,开发人员在其各自软件体系设计和环境模式开发方面都存在着较大的差异。JSP技术基于平台和服务器的互相独立,输入支持来自各种广泛的、专门的工具包、服务器的组件和数据库产品。相比之下,ASP技术主要依赖微软公司各种技术的支持。
2.1.2 Java语言的优越性及其演变技术
Java语言是成熟的、强大的、易扩充的编程语言,远优越于基于BASIC的脚本语言。加之JSP技术为其应用提供了健壮的意外事件处理机制,从而使得Java语言不管是在应用范围、技术成熟度上,还是在其发展潜力上都优越于其他编程语言。其独特的优越性还表现于以下几点:
1.易于维护性
Java语言是结构化的语言,它更容易创建和维护庞大的、组件化的应用程序。JSP技术理所当然地继承了Java语言的这些优点,使其开发和维护也变得更加简便、容易。将JSP和JavaBean技术结合起来,在JavaBean中处理逻辑,然后在JSP网页中调用,这会使得JSP页面显得更加清晰,并且可以节省软件开发时间、降低维护难度。
2.企业产品的多样性
与JavaBean一样,Servlet也是用Java语言编写的。但有所不同的是,它是运行于服务器端的小程序,而且Servlet是使用Java Servlet应用程序设计接口编写的Java程序。Servlet源于请求/响应模式,它具有可移植、灵活、高效等特性。
5.2 逻辑结构设计
下面是本系统中典型文件的说明:
(1)教师表
表名:teacher
作用:存放教师属性和与教师相关的信息。
表结构及含义(如下表5-1所示):
表5-1教师数据表
含义 |
字段名 |
类型 |
宽度 |
索引 |
教师编号 |
id |
varchar |
10 |
↑ |
教师姓名 |
name |
varchar |
50 |
|
教师职称 |
title |
varchar |
50 |
|
教师电话 |
tel |
varchar |
50 |
|
教师邮箱 |
e_mail |
varchar |
50 |
|
教师密码 |
password |
varchar |
50 |
|
(2)班级表
表名:classes
作用:存放班级属性和与班级相关的信息。
表结构及含义(如下表5-2所示):
表5-2班级数据表
含义 |
字段名 |
类型 |
宽度 |
索引 |
班级编号 |
id |
varchar |
50 |
|
教师记录号 |
tea_id |
varchar |
10 |
↑ |
课程记录号 |
cour_id |
varchar |
10 |
|
教室记录号 |
room_id |
varchar |
50 |
|
上课记录号 |
cour_time |
varchar |
50 |
↑ |
(3)课程表
表名:course
作用:存放课程属性和与课程相关的信息。
表结构及含义(如下表5-3所示):
表5-3课程数据表
含义 |
字段名 |
类型 |
宽度 |
索引 |
课程编号 |
id |
varchar |
10 |
↑ |
课程名称 |
name |
varchar |
20 |
|
课程学分 |
mark |
int |
4 |
|
课程学时 |
prepare |
varchar |
50 |
|
所在系别 |
department |
varchar |
10 |
|
(4)学生表
表名:student
作用:存放学生属性和与学生相关的信息。
表结构及含义(如下表5-4所示):
表5-4学生数据表
含义 |
字段名 |
类型 |
宽度 |
索引 |
学生编号 |
id |
varchar |
50 |
↑ |
学生姓名 |
name |
varchar |
10 |
|
学生籍贯 |
jiguan |
varchar |
10 |
|
所在系别 |
department |
varchar |
10 |
|
学生性别 |
sex |
varchar |
10 |
|
学生密码 |
password |
varchar |
50 |
|
学生学分 |
mark |
int |
4 |
|
学生电话 |
tel |
varchar |
50 |
|
学生邮箱 |
e_mail |
varchar |
50 |
|
(5)记录表
表名:enrol
作用:存放记录属性和产生记录的相关信息。
表结构及含义(如下表5-5所示):
表5-5记录数据表
含义 |
字段名 |
类型 |
宽度 |
索引 |
学生记录 |
stu_id |
varchar |
50 |
↑ |
班级记录 |
class_id |
varchar |
50 |
↑ |
接受记录 |
accept |
bit |
1 |
|
评分记录 |
score |
varchar |
50 |
|
(6)管理员表
表名:admin
作用:存放管理员属性和与管理员相关的信息。
表结构及含义(如下表5-6所示):
表5-6管理员数据表
含义 |
字段名 |
类型 |
宽度 |
索引 |
管理员编号 |
id |
varchar |
10 |
↑ |
管理员姓名 |
name |
varchar |
10 |
|
管理员密码 |
password |
varchar |
10 |
|
管理员电话 |
tel |
varchar |
50 |
|
管理员邮箱 |
e_mail |
varchar |
50 |
|