范文一:原创在线成绩管理系统
湖南信息科学职业学院 毕 业 论 文 在线成绩管理系统
学生姓名:邱波
学 号:
年级专业:
指导老师:姜文君
系 别:计算机科学与技术系
湖南·长沙(三号黑体) 提交日期:2007年 5月(三号黑体)
目录
摘 要 ..................................................... 4 前言 ....................................................... 5 第一章 导言 ................................................ 6 1.1问题的提出 .................................................. 6 1.2本系统研究路线 .............................................. 6 1.3本系统的归属性 .............................................. 7 第二章 管理信息系统研究概述 ............................. 8 2.1管理信息系统的发展历史 .................................. 8 2.2管理信息系统的特点 ...................................... 8 第三章 在线成绩管理系统分析与设计 ........................ 11 3.1系统功能需求简介 ........................................... 11 3.2功能需求描述 ............................................... 11 3.3目标系统要求 ............................................... 12 3.4系统开发模式选择 ........................................... 12 3.5系统服务器选择 ............................................. 13 3.6数据库选择 ................................................. 13 3.6系统平台选择 ............................................... 14 3.7数据库设计 ................................................. 14 3.7.1数据流图 ............................................. 14 3.7.2数据库表间关系 ....................................... 15 3.7.3数据词典分析 ......................................... 15 第四章 学校在线成绩管理系统的功能实现 .................... 18 4.1登录模块编码设计 ........................................... 18 4.2管理员成功登录以后界面 ..................................... 18 4.2.1点击学生后的界面 ......................................... 19 4.2.2 添加学生信息 . ............................................ 19 4.3 点击课程后的界面 ........................................... 20 4.3.1课程的添加 ............................................... 20 4.4 点击编辑学生成绩后的界面 ................................... 21 4.4.1 成绩的编辑 . .............................................. 22
4.4.2删除学生成绩 ............................................. 22 4.5学生登录后的界面 ........................................... 23 4.5.1 点击选课后的界面 ......................................... 23 4.5.2成绩的查看 ............................................... 24 第五章 结束语 ............................................ 24 参考文献 .................................................. 25 致谢 ...................................................... 26
在线成绩管理系统
作者:邱波
指导老师:姜文君
(湖南信息科学职业学院计算机科学与技术系 2006级软件技术专业,长沙 410100)
摘 要
随着 Internet 的普及, 越来越多的学校建立了自己的教务管理系统, 本系统 -在线成绩管理系统要实现的是学生课程以及成绩的管理, 它是整个教务管理系统 的一个子系统,但它的作用相当关键。本系统方便了学生选课和查分,方便了学 生的管理和学生成绩的录入,更重要的是系统方便了学校的教学管理。
本系统采用 MVC 三层架构的模式, 在开发过程中会用到 Struts 来处理页面逻 辑,本系统没有单纯的使用 JSP+Servlet进行,而是结合了 Struts ,这是为了使 系 统 的 结 构 更 加 清 晰 同 时 简 化 开 发 工 作 。 本 系 统 主 要 使 用 了 java,JSP , Servlet,Struts , sqlserver 2000,web 服务器 (tomcat)等技术框架以及支持软件。 本系统一旦应用于学校,学校的管理员可以根据社学和学校教学的需求设置 本学校的课程, 当学生入学时管理员可以录入学生的基本信息, 删除学生的信息, 编辑学生的信息等管理学生信息和成绩的操作;当学生一旦在学校的在线成绩管 理系统中建立了档案,学生可以自由选择自己想学的课程以及查询自己的成绩。 关键词 :网络 信息化 建设 网站 考试
A score management system comprises mobile terminals and a score management server which are connected to each other via a wireless communication network. The score management server stores score data, receives a request for displaying score status from the mobile terminal, transmits data representing the score status based on the stored score data to the mobile terminal,
receives a request for inputting new score data from the mobile terminal, and updates the stored score data based on the received request for inputting the new score data.
前言
人类社会已经迈入了 21世纪,信息技术的浪潮也冲击着社会的方 方面面。 以计算机互联网为核心的科学技术为社会各行各业提供了前所 未有的机会和发展潜力。生产业也不例外。
互联网走到今天,也有十几年的光景了,之间经历了高潮和低谷, 让许许多多为之奋斗的人们兴奋过,也沮丧过。几年前,当失去耐心的 人开始疾呼互联网是泡沫, 大家不要陷进去的时候, 中国互联网仍然我 行我素,走着自己该走的路。专家们对于互联网学校将有 90%关门的预 言如今也不攻自破。 这些风风雨雨让许多真正了解互联网的人终于看明 白了一点:互联网本身并不能创造产值,它是一个服务性行业。
以 Internet 为基础的在线成绩管理系统就是学校利用计算机技术 和网络通讯技术进行教学管理的方式。 它为学校与学校之间、 学校与学 生之间提供了一种新型的管理模式。基于 Internet 的教学网站作为学 校进行教学管理的窗口, 是学校为学校和学生提供访问学校内部各种资 源的平台。 通过网站, 社会学校可以很快获取本高校当前及近期的各种 学生的学习以及生活情况,并根据这些信息可以为学校选择更好的人 才; 通过网站, 家长和社会各界可以查询并了解学校各种日常管理以及
学生学习生活情况 ; ;通过网站,学校能更好地宣传自己,提高学校知 名度,进行有效的学生管理。
为了提高学校的管理质量以及知名度, 使学校的发展形象走上一个 新台阶,利用现有的 internet 网环境,我们开发、建立了一个学校管 理系统的子系统 --在线成绩管理系统。 第一章简要介绍了本系统的设计 总体线路。第二章概述了本系统的功能,设计原理,介绍了功能模块图 设计、 数据库设计及编码。 第三章总结了本系统开发过程中结论及使用 过程中的体会。
第一章 导言
1.1问题的提出
随着 Internet 的普及, 越来越多的学校建立了自己的 WWW 网站, 学校通过网 站可以展示学校风采以及学校师生生活,发布最新动态,与社会各界进行交流和 沟通,与兄弟学校建立联系,以及开展学校管理等。其中学校网络管理系是构成 学校网站的一个重要组成部分,它担负着双层作用,一方面可以用来动态发布有 关学校网络或新技术,而在线成绩管理系统属于学校网络管理系的一个子系统。 在线成绩管理系统是学校网络管理系的核心,如果没有在线成绩管理系统那么学 校网络管理系将不能进行正常的管理,整个系统如同虚设。
1.2本系统研究路线
本系统的研究框架如下图所示,采用了如下的研究思路:
图 1-1
1.3本系统的归属性
管理信息系统包括,企业管理信息系统,医疗管理信息系统,社会管理信息 系统, 学校管理信息系统等为了提高管理而开发的管理软件, 本软件 -------在线 成绩管理系统属于学校管理信息系统的分支。
第二章 管理信息系统研究概述
2.1管理信息系统的发展历史
信息作为生产力中最活跃的因素,很早就在人类经济生活中发挥着不可 替代的作用,但把信息纳入学校管理系统中高效处理和应用是在计算机发 明以后的 50年代末。
目前人们所提到的管理信息系统,通常是指以计算机为工具,对管理信 息进行收集、存贮、检索、加工和传递,使其应用于组织机构及学校管理 领域的“人-机系统” ,该系统是 70年代初“后工业经济”时代的产物, 在学校管理信息系统在其发展的初期,是单一的人—机系统,系统功能简 单,效率低,对管理的作用有限。
2.2管理信息系统的特点
1、管理信息系统的组成
管理信息系统在学校中的应用存在三个要素,人、计算机和数据。 人是指学校领导者、管理人员、技术人员,以及 MIS 建设的领导机构和 实施机构,他们在系统中起主导作用。 MIS 是一项系统工程,不是只靠一 些计算机开发人员就可以完成的,必须有学校管理人员,尤其是学校领导 的积极参与。
计算机技术是 MIS (管理信息系统)得以实施的主要技术。在这些技术 中,软件开发是 MIS 开发的重点。
第三个因素也不能忽视。学校的管理数据是 MIS 正常运行的基础。广义 地说,各项管理制度是 MIS 建设成功的基础。试想要获得一个学生的详细 信息,需要按时输入学生什么时候入学、每身份证号,涉及学生的户籍、 年龄、系别、等多个信息,必须有一整套管理制度作保证。
2、管理信息系统的界面特点
在计算机软件技术中,人机界面已经发展成为一个重要的分支。 MIS 人机界面设计一般遵循以下一些基本原则:
(1)以通信功能作为界面设计的核心
人机界面设计的关键是使人与计算机之间能够准确地交流信息。 一方面, 人向计算机输入信息时应当尽量采取自然的方式:另一方面,计算机向人 传递的信息必须准确,不致引起误解或混乱。另外,不要把内部的处理、 加工与人机界面混在一起 (人机界面程序只是通信 ) ,以免互相干扰,影响 速度。
设计 MIS 时,针对每一个功能,都要按照模块化思想,使输入、处理与 输出 “泾渭分明” , 充分体现人机界面的通信功能。 这样设计出来的程序不 易出错,而且易于维护。
报表打印是 MIS 必备的功能之一,而且打印之前常常需要计算。计算与 打印分开设计,虽然消耗时间,但易于整个 MIS 系统的维护。
(2) . 界面必须始终一致
统一的人机界面不至于会增加用户的负担,让用户始终用同一种方式思 考与操作。 最忌讳的是每换一个屏幕用户就要换一套操作命令与操作方法。 例如在整个系统可以以问号图标表示帮助,以磁盘图标表示存盘,以打 印机图标表示打印等。
(3) . 界面必须使用户随时掌握任务的进展情况
人机界面应该能够告诉用户软件运行的进度。特别是在需要较长时间的 等待时,必须让用户了解工作进展情况,如可以设计已经完成了百分之几 的任务进度条等。目前, Windows 下的应用软件无论大小,其安装程序几 乎均做到了这一点。开发 MIS 软件时,这一点很值得借鉴。
(4) . 界面友好。使用方便
多数 MIS 软件的数据输入量较大。对于一些相对固定的数据,不应让用 户频频输入 (特别是汉字 ) ,而应让用户用鼠标轻松选择。例如,教师人事 管理系统中的“文化程度”是相对固定的数据,其值一般取“小学” 、 “初 中” 、 “高中” 、 “大专” 、 “大本” 、 “硕研” 、 “博研”等。录入这类数据之前, MIS 软件应在相应位置弹出一个列表框,待用户以鼠标点击,而不应让用
户每次都输入这些汉字。
总之,所开发的 MIS 在使用过程中,应使用户的数据输入量降至最低限 度减少用户的干预量。实践证明,用户干预愈少, MIS 系统的满意程度愈 高, 而本系统 -在线成绩管理系统在开发过程中时时刻刻注意这些问题, 尽 量避免用户可能出现干预情况。
第三章 在线成绩管理系统分析与设计 3.1系统功能需求简介
学校在线成绩管理信息系统对学校加强学校网络管理有着极其重要的 作用,就一般的高校来说,它的涉及内容非常复杂而且繁多,比如拥有学 校网络计算功能,学校网络统计功能,报表输出功能,而且设计的模块也 很多,比如学校网络管理模块,学校网络统计模块,报表设计模块,打印 输出模块,模糊查询模块等等。
由于本软件主要是我学校定制开发的,本学校是人员比较多(上万) , 人员结构比较简单,学历比较高,基本上都拥有大专以上学历,系别划分 也很清晰,并且人员的流动性比较高,对管理软件系统的要求比较高,因 此, 针对本学校而言需要一套在线成绩管理系统, 我们经过了反复地论证, 最终确定了在线成绩管理系统的设计方案。
3.2功能需求描述
成绩管理网提供平台传播学校、学生相关信息,学校可在平台上发布 课程信息、促进学校与学生之间的互动,同时平台为社会企业选择人才提 供辅助支持等。
学生成绩管理网的目标在于为学校师生提供信息交流平台,通过平台 帮助学校更快地进行信息流通,以此促进学校更好地发展。
首先, 在线成绩管理系统要能够为学生提供学生需要了解的选课信息, 如有关课程设置的最新动态。
其次, 在线成绩管理系统需要让学校能够及时发布课程设置相关信息, 如学校新增加了什么课程,删除过时的课程。
同时学生本身的相关成绩信息也需要能够在在线成绩管理系统中轻松
查询。
根据在线成绩管理系统的需求分析,可以将整个站点分为人员登录、 管理员管理学生以及课程情况、学生选课以及查询成绩 3个功能模块。 1、人员登录
人员登录一共有两种选择,一种是管理人员,一种是学生。
2、管理员管理学生以及课程情况
管理人员登录上时系统将展现管理人员可操作的功能如:管理人员可 以新加学生,删除学生,新加课程,删除课程,编辑学生成绩等一系列维 护和管理学生以及课程情况。
3、学生选课以及查询成绩
学生登录上时系统将展现学生可操作的功能如:选课,查看成绩,因 此,学生可以自己决定自己喜欢什么课程。本系统可以提高学生的兴趣, 更可以让学生和相关人员了解学生的学习情况。
3.3目标系统要求
目标系统应该达到以下要求:
1、 时间经济性。优化逻辑设计与物理设计, 使系统运行效率高, 反映 速度快。
2、可靠性。能连续准确的处理业务,有较强的容错能力。
3、可理解性。用户容易理解和使用该系统。
4、可维护性和适应性。系统应易于修改、易于扩充、易于维护,能够 适应业务不断发展变化的需要。
5、可用性。目标系统功能齐全,能够完全满足业务需求。
6、 安全保密性。 保证系统的物理安全、 数据存储和存取的安全与保密、 数据传输的安全与保密,做好使用人员的授权管理。
3.4系统开发模式选择
网络作为现代先进技术的见证,为远程管理提供了更有效的保障,基
于目前软件开发的模式主要有两种:
1, C/S(客户 /服务器) 模式, 该模式需要在每一个客户端安装一个客 户端软件, 如最近很流行的 QQ 聊天软件, 它是需要下载客户端软件才能与 服务器交互,此模式适合那些服务器怕受到外界攻击的软件。
2, B/S(浏览器 /服务器)模式,该模式不需要安装客户端,只要你的 操作系统有个浏览器你就可以随时随地使用 B/S软件,而且随着技术的发 展, B/S开发模式的安全性越来越高,因此目前大部分软件是采用 B/S模 式开发,如我国的中国移动交费平台,就是联创公司开发的一套基于 B/S模式的软件。
由于我的系统是在线成绩管理系统,一旦开始考试不适合在每一台学 校的机器上安装客户端软件, 而目前的操作系统一安装都有自带的浏览器, 因此在线成绩管理系统采用 B/S模式开发。
3.5系统服务器选择
目前主流的 JAVA 面向网络开发的主流服务器主要有:
Bery,Geronimo,Glassfish,Jboss,Jetty,JonAs,Jrun,Oracle,orion, Resion ,Sun Java System Application Server ,Tomcat, WebLogic,webphere; 市场上一般用 Tomcat, WebLogic,webphere,Jboss。 WebLogic 和 webphere 他们可以支持分布式,因此使用需要一定的费用, 作为学生的我可没有那么多的钱给他们,而且我做的这个在线成绩管理系 统不需要分布式服务, 因此我可以才用 Jboss 和 Tomcat 。 Tomcat 的配置起 来相对于 Jboss 来说相对简单, 而且 Tomcat 不仅和 SUN 公司的 JDK 结合的 更好,而且大多数教学系统都采用 Tomcat 作为服务器,因此本系统采用 Tomcat5.0作为服务器。
3.6数据库选择
大家都知道如果一套软件没有后台数据库的话,他是不可能永久的保 存一些重要信息,因此我可以这样说,程序好比是酒店的大门它为客户与
酒店方提供了一个接口,而数据库则是酒店的灵魂。基于目前的大型数据 库有 sqlserver 2005,DBT2,ORACLE等 , 比较小的数据库有 sqlserver 2000,Mysql,access 等。 由于所有的数据库都支持标准 SQL , 所以数据库我 可以任意一套都可以作为系统的后台数据库,可是数据库都是要钱的。 sqlserver 2000不但有学习版本并且使用十分广泛,而且在学校的课程设 置当中相对来说我更容易使用,将来可以更好的维护,所以我的系统的后 台数据库为 sqlserver2000.
3.6系统平台选择
选择微软平台作为主导,一方面考虑目前微软的飞速发展,越来越多 的学校在规划内部网络时,将微软平台作为首选方案;另一方面从技术角 度来讲,微软平台上的应用无论是在开发上,还是在软件的部署上都非常 容易,而且性能优越。微软每个操作系统都有比较先进的浏览器,这样的 话在程序调试起来比较的优越。这里我选择是 Windows XP,客户端浏览 器为 IE6.0。
3.7数据库设计
3.7.1数据流图
根据对管理工作的调查和需求分析, 该系统的数据流图如图 3.2所示。
图 3-1 系统的数据流图 3.7.2数据库表间关系
根据 3-1数据流程图建立如下表关系:
图 3-2
3.7.3数据词典分析
根据上图 3-2生成如下数据字典:
create database chengji
-- ---------------------------- -- Table structure for admin
-- ----------------------------
use chengji
CREATE TABLE admin (
adminPassword varchar(12) default NULL,
adminId varchar(12) NOT NULL,
adminName varchar(24) default NULL,
PRIMARY KEY ( adminId )
);
-- ----------------------------
-- Table structure for core
-- ----------------------------
CREATE TABLE core (
studentId varchar(12) NOT NULL,
courseId varchar(12) NOT NULL,
coreValue varchar(12) default NULL,
PRIMARY KEY ( studentId , courseId ),
FOREIGN KEY ( studentId ) REFERENCES student ( studentId ), FOREIGN KEY ( courseId ) REFERENCES course ( courseId ) );
-- ----------------------------
-- Table structure for course
-- ----------------------------
CREATE TABLE course (
courseId varchar(12) NOT NULL ,
courseName varchar(24) NOT NULL,
PRIMARY KEY ( courseId )
);
-- ----------------------------
-- Table structure for student
-- ----------------------------
CREATE TABLE student (
studentPassword varchar(12) default NULL,
studentId varchar(12) NOT NULL,
studentName varchar(24) default NULL,
PRIMARY KEY ( studentId )
);
-- ----------------------------
-- Records
-- ----------------------------
INSERT INTO admin VALUES ('admin', 'admin', 'admin'); INSERT INTO course VALUES ('1', 'java');
INSERT INTO course VALUES ('2','c++' );
第四章 学校在线成绩管理系统的功能实现 4.1登录模块编码设计
学校网络模块界面如图 4.1所示:
图 4-1
备注:用户类型 分为学生和管理员 , 学生用户名和密码有管理员分配 初始密码为 000000, 管理员默认登录帐号密码为 admin,如需添加其他管理 员需从数据库插入;当输入的帐号和密码不正确时,会出现提示框:
图 4-2
4.2管理员成功登录以后界面
图 4-3
4.2.1点击学生后的界面
图 4-5
4.2.2 添加学生信息
图 4-6
备注:学生密码默认为 000000;学生号不能重复,若重复会出现提示 框:
图 4-7
如果添加成功则进入如下显示:
图 4-8 4.3 点击课程后的界面
图 4-9 备注:课程名不可以修改
4.3.1课程的添加
图 4-10
备注:课程号不能重复,若重复会出现提示框:
图 4-11
如果添加成功则进入如下显示:
图 4-12
4.4 点击编辑学生成绩后的界面
图 4-13
备注 :学生的课程有学生自己选择, 管理员只负责学生成绩的编辑和删 除。
4.4.1 成绩的编辑
图 4-14
电击确定后截面如下:
图 4-15
4.4.2删除学生成绩
图 4-16
备注:确认删除后会跳转到主成绩页面,如下:
图 4-17
4.5学生登录后的界面
图 4-18
4.5.1 点击选课后的界面
图 4-19
备注:学生选择自己所修的课程,提交到数据库,又管理员给学生
输入相对应科目的成绩。
4.5.2成绩的查看
图 4-20
注备:学生默认成绩为零 , 当管理员编辑学生成绩时显示相应的成 绩。
第五章 结束语
随着我国成功加入 WTO 及信息化浪潮的日益临近,学校在激烈的市场 竞争环境下的求得生存 , 就必须有效地利用人才、时间、信息结合的优势。 因此,如何使学校及时掌握本学校人才的各种信息、第一时间处理好随时 变化的学校网络管理问题,建立一套符合学校实际的在线成绩管理管理系 统就显得尤为重要。
在软件的编写过程中,我充分体会了软件编程工作者的辛苦,因为每 一个细微的细节都必须十分的注意,如果稍有不慎,就会全盘皆输,往往 很多的时候,程序在编译之前我自己觉得非常的正确,但是就是编译通不 过,在查找错误的过程中,面临着否认自己的过程,非常的痛苦,而且由 于自己的经验及各方面的能力的不足,所以进展的速度非常的缓慢,往往 几天的时间还没有一点进展。
在开始编写程序的时候,我看到别人的软件功能非常的详细,而且界 面非常的漂亮,总希望自己的软件也非常的完善,但是,经过两个月的学 习,发现编一个优秀的软件决不是一蹴而就的事情,需要长时间的积累和 经验,而这个方面又是我的弱项,因此,在朋友的帮助下,我终于认清自 己的不足及劣势,不要贪图大而全,只要尽我所能,编制一个实用简单的
软件也是件很不容易的事情。
在反反复复的学习之下,我的辛勤努力有了汇报,终于做出了一个简 单的软件, 虽然这个软件的功能非常的简单, 而且我想, 在实际的运用中, 肯定会有所不足,因为学校网络的内容非常的丰富,我涉及到的仅仅是学 校网络管理的一部分简单内容,离实际的客户需求肯定还有一定的差距。 但是,它毕竟代表了我两个月辛勤的结晶。
由于我的知识浅薄,经验不足及阅历颇浅,因此,在该系统的设计方 面还有很多不足,比如功能过少,界面不够醒目等问题,我会在工作的使 用过程中,根据工作的具体要求不断的修改,完善,争取使该系统慢慢趋 向完美。
参考文献
1、孙春来 韩正清等 《 JSP 中文版编程基础与范例》 电子工业出版 社 出版日期 :2008-1-1
2、知寒工作室 《 JSP 简明案例教程》
机械工业出版社 出版日期 :2007-4-1
3、 徐建平 , 赵永 《 JSP 基础教程》 机械工业出版社出版日期 :2000-5-1
4、张鲁 《 JSP 编程技巧与实例分析》 水利水电出版社 出版日 期 :2007-10-1
5、张磊等 《 JSP 使用详解》 机械工业出版社 出版日期 :2006-7-1
6、康耀红 黄健青等 《 SQL Server2000 数据库设计》
北京大学出版社 出版日期 :2007-2-1
7、 郑刚 《 JSP 实效编程百例》 人民邮电出版社 出版日期 :2002-7-1
致谢
在本系统的设计过程和论文编写过程中,很多老师、同事和朋友都给与了我许多无私的帮助,尤 其是我的导师 -姜老师给我的论文提出了很多宝贵的修改意见,在这里,我向这些无私帮助我的人表 示衷心的感谢。
范文二:在线成绩管理系统设计
在线成绩管理系统的设计
摘要:使用传统人工方式进行成绩管理,可行,但是流程繁琐、数据统一的工作量大、速度慢、出错率高,且查询成绩极不方便。通过网络实现成绩的在线管理与查询,方便快捷,已成为各院校与培训机构实现成绩管理的目标与趋势。
关键词:asp.net c# sql server;成绩管理系统
中图分类号:tp311.52
使用传统人工方式进行成绩管理,可行,但是流程繁琐、数据统一的工作量大、速度慢、出错率高,且查询成绩极不方便。通过网络实现成绩的在线管理与查询,方便快捷,已成为各院校与培训机构实现成绩管理的目标与趋势。成绩管理涉及教师、班级、学生、课程、成绩等模块信息,本文将介绍本人所研究和开发的教育管理系统的成绩管理模块的基本流程及相关模块的功能结构和设计实现。
1系统概述
本系统研究实现在线成绩管理的基本流程,设计实现与成绩相关的模块功能,实现成绩管理权限角色的设置,实现成绩的添加、更新和查询等功能,实现成绩管理的目标。
2 需求分析
在线成绩管理系统基于b/s结构模式,无需安装客户端,能够使用浏览器,在线实现教师、班级、学生、课程等模块信息的添加、更新功能,能够进行班级课程安排,实现班级成绩的添加、更新功
能,能够查询学生各门课程的成绩总评结果,也能够查询学生成绩总评的比例组成,包括课堂、作业、平时、理论、实验、实训、实习、期中、期末等,还能够实现总评成绩是否合格的判断及补考成绩的管理,能够查询班级的成绩册,显示整个班的成绩、平均分及分数分段统计等功能。
3开发工具
使用visual studio 2008平台、asp.net动态网页语言、c#后台语言,采用sql server 2008数据库。
4基本思路
使用sql server数据库设计实现权限角色、教师、班级、学生、课程、成绩册等信息的数据结构模型,使用asp.net和c#语言逐步设计实现各模块信息的添加、更新和班级课程安排等功能,最后设计实现成绩的添加、更新和查询功能。
5设计实现
5.1登录与权限角色模块
登录与权限角色模块的作用在于控制系统管理与使用权限,对系统的管理使用须先登录,系统将根据登录者的角色身份确定其对各功能业务的使用权限,包括以下各角色:
(1)超级管理员:具有系统全部管理与使用权限;(2)部门管理员:具有与部门相关的功能业务的管理使用权限,包括各模块中与本部门相关的信息的添加、更新等;(3)任课教师:具有与教师相关的功能业务的管理使用权限,包括成绩添加、更新等;(4)学生:
用于管理、查询自身资料、成绩;(5)浏览角色:确定哪些功能业务可对外公开而不必设置权限。
5.2教师模块
教师模块的作用在于课程安排时选择任课教师及设置成绩管理权限等时所用:(1)数据模型:编号、姓名、性别、所属部门、职务等,在所有涉及教师信息的功能中,均通过编号来选择教师。(2)功能设计:教师信息添加功能中,设置编号时,如果编号已存在,则提示添加失败及原因;所有教师均属于某一部门,添加教师信息时,须指定教师所属的部门。教师信息更新功能中,可以通过部门选择所要更新的教师并显示所选教师信息表,可选择需要更新的字段进行更新。
5.3班级模块
班级模块的作用在于课程安排、学生信息添加及成绩管理时所用。
(1)数据模型:编号、专业、班主任等,编号由“年份+班级序号”组成,通过编号,可确定班级所属的年级等信息。(2)功能设计:添加功能中,设置编号时,如果班级编号已存在,则提示添加失败及原因;班主任本身为教师,选择班主任时可以通过所属部门进行选择。更新功能中,可通过年级选择所要更新的班级并显示所选班级信息表,然后选择需要更新的字段进行更新。
5.4学生模块
学生模块的作用在于成绩录入和查询时所用。
(1)数据模型:学号、姓名、性别、出生日期等,学号由“年级
+班级+学生序号”三部分组成,通过学号,可确定学生所属的年级、班级、专业等信息。(2)功能设计:学生信息添加功能中,为避免输入学生学号的繁琐,只输入序号即可,学号自动生成。输入序号时,能够检测即将生成的学号是否已存在并提示相关信息。更新功能中,可按“年级、班级、学生”顺序选择需更新的学生并显示所选学生信息表,然后选择需要更新的字段进行更新。
5.5课程模块
课程模块涉及课程信息、课程类型和班级课程安排三个子模块,必须先设置课程信息,先有课程信息才能进行班级课程安排,而课程类型的设置是为了在课程安排时使用,以便实现成绩录入模式之一的按比例自动计算总评成绩。
(1)数据模型:编号、课程名、所属部门等,以编号为主键。(2)功能设计:课程添加功能中,须指定课程所属的部门,以便在需选择课程时能够方便地进行选择;添加时,对已存在的编号同样须有相应提示。课程更新功能中,可通过部门选择需更新的课程并显示所选课程信息表,然后可选择需更新的字段进行更新。(3)课程类型子模块:1)数据模型:编号、类型名、分数线、成绩比例(课堂、作业、平时、理论、实验、实训、实习、期中、期末)等。2)功能设计:因课程的类型数较少,所以不设计更新界面,设置类型时,如果其类型号相同,则会自动更新原有课程类型记录,即设置功能兼具有更新功能。(4)课程安排子模块:1)数据模型:班级、学期阶段、课程、课程类型、周课时、总课时、已完成课时、任课
教师等,主键由”班级、学期阶段、课程”组成,即同一个班级在同一学期阶段不能安排同一门课。2)功能设计:课程安排时,可通过部门选择所需的课程,同时指定课程类型,每门课均须指定任课教师,同样可通过部门选择任课教师。在此,须注意课程信息与课程安排的区别,先有课程信息,然后才能进行课程安排,这是系统设计的基本流程之一。
更新课程安排时,为避免错误更新,须先查询要更新的课程安排信息,可通过部门选择要查询的课程并显示所选课程安排信息表,然后选择需更新的字段进行更新。
5.6成绩管理
(1)成绩册:1)作用:成绩录入之前,须先创建成绩册,有了成绩册,才能集中管理成绩;2)数据模型:学号、课程,其中,课程列是动态生成的,即一个班在一个学期阶段安排了几门课,就能生成几个字段列,列名为课程编号,但是,查询成绩册时,能够与课程表进行联表查询并显示课程名。3)功能设计:创建成绩册时,班级已经安排了的课程能够自动转为成绩册的字段列,班级已有的学生也能自动转为成绩册的行记录。班级学生可能会有变动,如转班等情况,所以成绩册更新功能中,须能够向成绩册添加或从成绩册删除指定的学生;班级课程安排也可能变动,更新时也须能向成绩册添加课程(即添加新的课程字段列)或从成绩册中删除指定的课程(即删除课程字段列);向成绩册添加学生或课程列时,如果添加的学生或课程列已存在于成绩册中,则须有相应提示。4)
添加成绩。添加成绩前须选择成绩册、课程、学生,如果没有成绩册,则须先创建,没有课程,须先添加;添加同一科目成绩时,须确保方便性,输入成绩、按回车键即可添加并且会自动定位到下一个学生,无需使用鼠标手动选择下一个学生,当到了最后一个学生时,也会自动提示。5)更新成绩。为避免更新成绩时出错,更新时,须指定课程、学生和已有的成绩,即须先查看成绩。(2)按比例自动计算成绩。以上所设计的成绩册的功能只为录入期末总评,此系统也支持自动按比例计算期末总评,此时则须录入成绩的各组成成绩,包括课堂、作业、平时、理论、实验、实训、实习、期中、期末等成绩和分数线,系统能够根据课程类型所设置的成绩比例自动计算总评成绩并判断是否合格,成绩不合格时还能提供补考成绩的录入功能。(3)成绩查询。成绩查询支持总评模式和按比例查询模式,由此可获取总评成绩也可获取分数的详细组成。
5总结
本系统采用b/s结构模式,使用asp.net技术和sql server数据库技术,通过逐步设计实现与成绩管理相关的各个模块功能,最终设计实现成绩的添加、更新、查询等功能,实现了成绩管理目标,达到系统设计的目的要求。
作者简介:林贞文(1981-),男,籍贯:广东省惠来县,工作单位:广东省岭南工商第一技师学院,学历:大学本科,职称:初级,研究方向:计算机软件。
范文三:在线成绩管理系统操作流程如下
精编资料
:说明:本套系统由于编写匆忙,仅花了两天时间,如果您在操作过程中出现问题,请首先不要进行其它操作,并保持您的电脑屏幕不变,然后立即与杨正炎联系,办公室电话:8220... 管理,流程
在线成绩管理系统操作流程如下:
第 1 页 共 9 页
登录学校网站(www.cznes.com)
出现在线成绩管理系统登录页面
面
输入您的姓名与密码进入在线成绩管理系统
修改您的密码 选择您任教的班级 强烈要求:
您第一次
登录本系输入或修改您任教班级的学科成绩 统后立即
修改此密查看成绩 打印成绩 码,并妥善
保管此密
码~(初始按“保存(S)”按钮或按“ALT+S”保存 密码为 111111)
点击“返回首页”,点击“退出”按钮退出
说明:本套系统由于编写匆忙,仅花了两天时间,如果您在操作过程中出现问题,请首先不要进
行其它操作,并保持您的电脑屏幕不变,然后立即与杨正炎联系,办公室电话:8220。如果您有
什么建议,也可以向杨正炎提出,本套系统的不断改进期待您的参与,谢谢合作~
详细使用说明见后页
第 2 页 共 9 页
常州市新北区实验中学在线成绩管理系统使用说明 一、系统登录及安全退出
打开学校主页(www.cznes.com),在IE浏览器的地址栏中输入如上网址后按回车,来到学校网站,待学校网站首页全部出来后找到右下角的图片:
然后点击此图片,出现如下新页面:
在教师名字后面的框中输入您的姓名,密码后面的框中输入您的密码(初始密码为111111),点击“登录”,即可进入本系统管理成绩。
如有教师同名同姓,则此教师的登录名为教师姓名+学科名称的首字,例:有两名教师叫“张三”,分别任教语文和数学,则此两位教师的登录名分别为“张三语”、“张三数”。
您登录成功后,将出现如下页面:
如果您操作完毕,请务必点击“退出”按钮来退出本系统,否则会有安全隐患。
如果您不希望您输入的成绩被他人修改,请务必执行此操作。
二、密码修改
本系统由于采用了严格的成绩输入体制,每位老师将只能管理本人任教班级的学科成绩,所以给每位老师设置一个密码(初始密码为111111),此密码将成为您管理任教班级学科成绩的凭据。
强烈要求:您第一次登录本系统后立即修改此密码,并妥善保管此密码~
否则您任教班级的学科成绩将有可能受到破坏,并且由于密码泄露造成的损失由您本人承担。
您成功登录后,将出来如下页面:
第 3 页 共 9 页
点击“修改密码”,出现新页面:
在密码后面的框中输入新密码,然后点击“修改”按钮即可。请妥善保管此密码。 三、输入与修改成绩
在您成功登录系统后面的界面中
请选择当前的学年度、您所任教的班级以及考试类型(以图中为例:2004-2005学年度,9年级1班,第一学期期末考试),然后点击“确定”按钮,将出来成绩输入与修改页面。
在本页面,您可以输入您任教班级的学科成绩,其它学科您无权操作。
成绩输入方法:
将鼠标移到合适的框中后点击,输入新成绩,然后可以按键盘左边的“Tab”键,光标自动移动到下一位学生的成绩输入框中,再输入新成绩,依次可以输完全部学生的成绩。用鼠标拖动IE浏览器的滚动条到最底部,可以看到如下内容:
第 4 页 共 9 页
成绩全部输入完毕后,您必须点击“保存(S)”按钮才能将您刚才输入的成绩保存,切记~
如果您要对原来输入的成绩进行修改,只要再次进入此页面,删除原来的成绩,输入新成绩后,点击“保存(S)”按钮即可。
注意:如果您要保存,必须点击“保存(S)”按钮。
一个班级的成绩输入完毕后,如果您还要继续输入其它班级的成绩,只需要在本页面的头部
的班级下拉框中选择您所任教的班级即可,操作步骤如上所述。
您可能已经发现,在学生姓名的后面及本页面的底部有六门总分、总分和平均分三个单独的栏目,此三类项目将由系统自动计算,您不必操作,只管输入各位学生的成绩即可。
同时,您可能还发现,有些班级在总分和平均分下面还有一些学生名单,这些学生的成绩将不计入班级总分和平均分。
四、查看与打印成绩
只要您可以登录本系统,您就可以查看与打印各班全部成绩。
点击页面顶部的“查看成绩”或“打印成绩”链接,您就可以查看或打印您所选择的班级的全部成绩了,包括六门总分、各学科总分及平均分。
同时,在查看成绩与打印成绩页面中,您同样可以从下拉框中选择班级来查看或打印其它班级的全部成绩。
注意:在打印成绩页面中,由于要安装一个打印插件,所以会弹出一个安全窗口,您点击“是”按钮即可,系统将会自动安装。安装了此插件后,您打印此网页就像打印Word、Excel文档一样,可以打印预览、页面设置、打印机设置等。
在打开打印成绩页面后,您将看到如下页面:
您可以进行页面设置,打印预览、打印等操作。
操作方法:
第 5 页 共 9 页
A、页面设置:点击“页面设置”按钮,出现如下页面:
由于需打印整班学生的成绩,所以这里的纸张大小应选择A3或8开,然后将
页眉和页脚处清空,按“确定”保存您的页面设置。
B、打印预览:
点击“打印预览”按钮可查看打印效果。
C、打印:
点击“打印本页”按钮即可打印此班级成绩。
五、导出成绩到Excel
您可能需要将本班的成绩导出到Excel,在Excel中已经提供了此功能,如果需要的话,您可以这样操作:
打开您电脑中的Excel软件,在菜单栏中的“数据”菜单中找到“导入外部数据”项目,选择“新建web查询”,如下图:
第 6 页 共 9 页
出现新界面,如下图:
双击标题栏可将此窗口最大化。
在地址栏中输入学校的网址(www.cznes.com),然后如前面所述操作一样,最后来到查看成
第 7 页 共 9 页
绩页面,把鼠标移到下图所指位置
然后点击,当箭头变成钩时,如下图
最后点击页面最下方的“导入”按钮
在出现的窗口中按“确定”按钮,稍等片刻,您所需要的班级的成绩将会出现在Excel中,
您保存为Excel文件即可。
第 8 页 共 9 页
第 9 页 共 9 页
范文四:在线成绩管理系统操作流程如下
在线成绩管理系统操作流程如下:
登录学校网站(www.cznes.com)
出现在线成绩管理系统登录页面
面
输入您的姓名与密码进入在线成绩管理系统
修改您的密码 选择您任教的班级
强烈要求:
您第一次
登录本系输入或修改您任教班级的学科成绩 统后立即
修改此密查看成绩 打印成绩 码,并妥善
保管此密
码~(初始按“保存(S)”按钮或按“ALT+S”保存 密码为 111111)
点击“返回首页”,点击“退出”按钮退出
说明:本套系统由于编写匆忙,仅花了两天时间,如果您在操作过程中出现问题,请首先不要进
行其它操作,并保持您的电脑屏幕不变,然后立即与杨正炎联系,办公室电话:8220。如果您有什么建议,也可以向杨正炎提出,本套系统的不断改进期待您的参与,谢谢合作~
详细使用说明见后页
第 1 页 共 8 页
常州市新北区实验中学在线成绩管理系统使用说明 一、系统登录及安全退出
打开学校主页(www.cznes.com),在IE浏览器的地址栏中输入如上网址后按回车,来到学校网站,待学校网站首页全部出来后找到右下角的图片:
然后点击此图片,出现如下新页面:
在教师名字后面的框中输入您的姓名,密码后面的框中输入您的密码(初始密码为111111),点击“登录”,即可进入本系统管理成绩。
如有教师同名同姓,则此教师的登录名为教师姓名+学科名称的首字,例:有两名教师叫“张三”,分别任教语文和数学,则此两位教师的登录名分别为“张三语”、“张三数”。
您登录成功后,将出现如下页面:
如果您操作完毕,请务必点击“退出”按钮来退出本系统,否则会有安全隐患。
如果您不希望您输入的成绩被他人修改,请务必执行此操作。
二、密码修改
本系统由于采用了严格的成绩输入体制,每位老师将只能管理本人任教班级的学科成绩,所以给每位老师设置一个密码(初始密码为111111),此密码将成为您管理任教班级学科成绩的凭据。
强烈要求:您第一次登录本系统后立即修改此密码,并妥善保管此密码~
否则您任教班级的学科成绩将有可能受到破坏,并且由于密码泄露造成的损失由您本人承担。
您成功登录后,将出来如下页面:
第 2 页 共 8 页
点击“修改密码”,出现新页面:
在密码后面的框中输入新密码,然后点击“修改”按钮即可。请妥善保管此密码。 三、输入与修改成绩
在您成功登录系统后面的界面中
请选择当前的学年度、您所任教的班级以及考试类型(以图中为例:2004-2005学年度,9年级1班,第一学期期末考试),然后点击“确定”按钮,将出来成绩输入与修改页面。
在本页面,您可以输入您任教班级的学科成绩,其它学科您无权操作。
成绩输入方法:
将鼠标移到合适的框中后点击,输入新成绩,然后可以按键盘左边的“Tab”键,光标自动移动到下一位学生的成绩输入框中,再输入新成绩,依次可以输完全部学生的成绩。用鼠标拖动IE浏览器的滚动条到最底部,可以看到如下内容:
第 3 页 共 8 页
成绩全部输入完毕后,您必须点击“保存(S)”按钮才能将您刚才输入的成绩保存,切记~
如果您要对原来输入的成绩进行修改,只要再次进入此页面,删除原来的成绩,输入新成绩后,点击“保存(S)”按钮即可。
注意:如果您要保存,必须点击“保存(S)”按钮。
一个班级的成绩输入完毕后,如果您还要继续输入其它班级的成绩,只需要在本页面的头部
的班级下拉框中选择您所任教的班级即可,操作步骤如上所述。
您可能已经发现,在学生姓名的后面及本页面的底部有六门总分、总分和平均分三个单独的栏目,此三类项目将由系统自动计算,您不必操作,只管输入各位学生的成绩即可。
同时,您可能还发现,有些班级在总分和平均分下面还有一些学生名单,这些学生的成绩将不计入班级总分和平均分。
四、查看与打印成绩
只要您可以登录本系统,您就可以查看与打印各班全部成绩。
点击页面顶部的“查看成绩”或“打印成绩”链接,您就可以查看或打印您所选择的班级的全部成绩了,包括六门总分、各学科总分及平均分。
同时,在查看成绩与打印成绩页面中,您同样可以从下拉框中选择班级来查看或打印其它班级的全部成绩。
注意:在打印成绩页面中,由于要安装一个打印插件,所以会弹出一个安全窗口,您点击“是”按钮即可,系统将会自动安装。安装了此插件后,您打印此网页就像打印Word、Excel文档一样,可以打印预览、页面设置、打印机设置等。
在打开打印成绩页面后,您将看到如下页面:
您可以进行页面设置,打印预览、打印等操作。
操作方法:
第 4 页 共 8 页
A、页面设置:点击“页面设置”按钮,出现如下页面:
由于需打印整班学生的成绩,所以这里的纸张大小应选择A3或8开,然后将
页眉和页脚处清空,按“确定”保存您的页面设置。
B、打印预览:
点击“打印预览”按钮可查看打印效果。
C、打印:
点击“打印本页”按钮即可打印此班级成绩。
五、导出成绩到Excel
您可能需要将本班的成绩导出到Excel,在Excel中已经提供了此功能,如果需要的话,您可以这样操作:
打开您电脑中的Excel软件,在菜单栏中的“数据”菜单中找到“导入外部数据”项目,选择“新建web查询”,如下图:
第 5 页 共 8 页
出现新界面,如下图:
双击标题栏可将此窗口最大化。
在地址栏中输入学校的网址(www.cznes.com),然后如前面所述操作一样,最后来到查看成
第 6 页 共 8 页
绩页面,把鼠标移到下图所指位置
然后点击,当箭头变成钩时,如下图
最后点击页面最下方的“导入”按钮
在出现的窗口中按“确定”按钮,稍等片刻,您所需要的班级的成绩将会出现在Excel中,
您保存为Excel文件即可。
第 7 页 共 8 页
第 8 页 共 8 页
范文五:成绩管理系统
JAVA 程序设计
学院 :
班级 :
学号 :
姓名 :
目录
. .............................................................................................. 3 ........................................................ 3 1.2 本课题设计拟研究的主要问题 . ...................................................................................... 3 1.3重点和难点 . ................................................................................................................ 3 . ............................................................................................... 3 . ............................................................................................... 4 . .............................................................................................................................. 4 . ................................................................................................................... 4 . ................................................................................................................... 5 . ................................................................................................................... 5 . .......................................................................................................... 5 . ........................................................................................................ 5 ..................................................................... 8 3.3 系统运用的主要技术:. ......................................................................................... 21 . ...................................................................................................................... 22 . ...................................................................................................................... 25 . ...................................................................................................... 26 . ............................................................................................................. 26 4.2 系统特色及缺点:. ................................................................................................. 26 . ................................................................................................................. 27 . ......................................................................................................................... 27
1项目研究开发的背景及意义
1.1本课题设计学术价值、理论意义和实践意义
现在的社会知识经济在世界经济发展的地位越来越高, 国家综合国力和国际竞争能力越 来越取决于教育发展, 科学技术和知识创新的水平, 教育在经济和社会发展过程中将呈现出 越来越突出的重要作用。 学生成绩管理系统是一个教育单位不可缺少的部分, 它的内容对于 学校的决策者和管理者来说都至关重要, 所以学生成绩管理系统应该能够为用户提供充足的 信息和快捷的查询手段。 但是有些学校还是使用传统人工的方式管理学生成绩, 填写各种表 格,这种管理方式存在着许多缺点,如:效率低,保密性差,另外所用其时间长,产生大量 的文件和数据,这对于查找,更新和维护都带来了不少的困难。在此次大作业中,我综合 j ava 编程、 SQL 数据库和 SQL 查询语言来实现一个简单的学生成绩管理系统。
1.2 本课题设计拟研究的主要问题
一个完整的学生管理系统包括四个功能模板:
(1)基本信息管理:包括对学生、教师、 课程、成绩信息进行查找、删除、 修改和添加。
(2)课表查询:学生和教师都可以对自身的课表进行查询。
(3)统计功能:对学生单科成绩、总成绩、所有学生成绩的平均分进行统 计,并作出相应的排名。
(4)图形界面,将学生单科成绩用柱形图表示出来,清晰简单地表示出成 绩的分布情况。
1.3重点和难点
(1)界面要求美观,需熟练掌握利用 java 语言来布局。
(2)数据库多个表联系,利用视图或者存储过程,需熟练掌握数据库的操作。
(3)模糊查找和精确查找,在界面上要求两者兼容,数据库上要求联系紧密。
(4)统计功能,单科和总成绩要求进行统计。
(5) 图形界面, 系统主界面加入背景图片以及成绩统计时以不同颜色的柱形图形象表 达。
1.4研究方法、预期效益
本次课程设计属于很普遍的应用研究类, 我只是在大家做的基础上加上我自己的的想法以及 设计。 同时结合我们现在学生的成绩情况来进行设计。 我采用的方法是理论分析结合实际来
进行研究的, 通过学习经验来建立模型, 在此基础上对学生成绩管理系统进行设计。 这个系 统将在 12月下旬设计结束,界面美观,使用方便,功能较全的一个原型系统。此系统可以 应用于落后的乡村的中小学教学管理。
1.5本项目创新点和特色
(1)本系统采用 java 和数据库结合的方式开发,可以对大量的数据进行存储和操作。
(2)本系统使用 java 开发,具有跨平台特性。
(3)本系统功能俱全,具有学生、教师、课程的信息管理和多条件的成绩查询和课程 查询,成绩统计和利用柱形图反应成绩分布。
(4) 系统具有安全性, 用户只能通过用户名和密码访问。 同时设定三种用户:管理员、 学生、教师。不同的用户权限不同。
2 需求分析
2.1 开发背景
当今时代是飞速发展的信息时代, 在各行各业中离不开信息处理, 这正是计算机被广泛 应用于信息管理系统的环境。计算机的最大好处在于利用它能够进行信息管理 . 使用计算机 进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性 . 尤其对于复杂的信息管 理 , 计算机能够充分发挥它的优越性 . 。
管理信息系统是进行信息的采集、存储、加工、维护和使用的系统 , 它是随着管理科学 和技术科学的发展而形成的。 学生成绩管理系统是一个教育单位不可缺少的部分, 它的内容 对于学校的决策者和管理者来说都至关重要, 所以学生成绩管理系统应该能够为用户提供充 足的信息和快捷的查询手段, 对学生来说可以轻松的查阅自己在校的成绩, 个人信息和课表 查询等,但是一直以来在落后的乡村一些中小学人们都是靠传统人工的方式管理学生成绩, 这种管理方式存在着许多缺点,如:效率低,保密性差,另外时间一长,将产生大量的文件 和数据,这对于查找、更新和维护都带来了不少的困难。
随着科学技术的不断提高, 计算机科学日渐成熟, 其强大的功能已为人们深刻认识, 它 已进入人类社会的各个领域并发挥着越来越重要的作用, 作为计算机应用的一部分, 使用计 算机对学生成绩信息进行管理 , 有着手工管理所无法比拟的优点,例如:检索迅速、查找方 便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生成 绩管理的效率,也是企业的科学化,正规化管理,与世界接轨的重要条件。因此,开发这样 的一套成绩管理系统成为很有必要的事情。
学生成绩管理系统提供了比较全面的学生成绩管理管理功能, 方便系统管理员对学生成 绩等信息的添加、修改、删除、查询、统计等操作。
2.2 项目目标
(1)管理员能够实现对整个学生信息的添加、修改、删除、查询等操作。
(2)管理员能够实现对整个教师信息的添加、修改、删除、查询等操作。
(3)管理员能够实现对整个课程信息的添加、修改、删除、查询等操作。
(4)学生、教师、管理员对整个成绩的查询。
(5)教师、学生查询课表。
(6)系统对成绩具有统计计算的功能,将成绩情况用柱形图形象地表现出来,并对成绩进 行排名,包括单科和总成绩。
(7)不同的角色不同的权限。
2.3 运行环境
学生成绩对运行环境没有很高的要求, 而且可以跨平台运行, 包括现有的 linux 和 uniux 等操作系统。
3 技术路线及关键技术
3.1系统总体功能图
(1)系统结构图
图 3.1-系统总结构图
(2)系统流程图:在系统设计中,将用户分成三种权限,不同权限的用户,则访问的内
容不同、控制的信息也不同,系统结构图如图 3.1,系统流程图如图 3.2。
图 3.2-系统流程图
(3)在系统结构图中,我们可以看到管理员对学生、课程、成绩、教师的基本信息有增删 改除的功能,以下是具体功能模块结构图:
图 3.3-学生信息管理模块
图 3.4-教师信息管理模块
图 3.5-课程信息管理模块
图 3.6-成绩信息管理模块
3.2学生成绩管理系统的功能模块简介:
(1)基本信息管理(以学生为例)
if (obj==tianjia )//添加
{
Sno =tf_xuehao.getText().trim();
Sname =tf_xingming.getText().trim();
sex =tf_xingbie.getText().trim();
age1=Integer.parseInt (tf_nianling.getText().trim());
tel_no=tf_dianhua.getText().trim();
classno =tf_banhao.getText().trim();
addr =tf_dizhi.getText().trim();
if (Sno .length()==0||Sname .length()==0||sex .length()==0||age1==0|| Sno .length()==0||tel_no.length()==0||addr .length()==0||classno .length ()==0)
{
JOptionPane. showMessageDialog (this ,
}
else
{
try
{
ps =con .prepareStatement(
ps .setString(1, Sno );
ps .setString(2, Sname );
ps .setString(3, sex );
ps .setString(4, classno );
ps .setString(5, addr );
ps .setInt(6, age1);
ps .setString(7, tel_no);
JOptionPane. showMessageDialog (this ,
tf_xuehao.setText(
tf_xingming.setText(
tf_xingbie.setText(
tf_nianling.setText(
tf_dianhua.setText(
tf_dizhi.setText(
tf_banhao.setText(
rs =ps .executeQuery();
catch (SQLException sql)
{
JOptionPane. showMessageDialog (this ,
}
}
}
if (obj==xiugai )//修改
{
String no=shuru .getText().trim();
Sno =tf_xuehao.getText().trim();
Sname =tf_xingming.getText().trim();
sex =tf_xingbie.getText().trim();
age1=Integer.parseInt (tf_nianling.getText().trim());
tel_no=tf_dianhua.getText().trim();
addr =tf_dizhi.getText().trim();
classno =tf_banhao.getText().trim();
try
{
ps =con .prepareStatement(
Sno=?,Sname=?,sex=?,classno=?,addr=?,age=?,tel_no=? where Sno=?
ps .setString(2, Sname );
ps .setString(3,sex );
ps .setString(4,classno );
ps .setString(5,addr );
ps .setInt(6,age1);
ps .setString(7,tel_no);
ps .setString(8,no);
JOptionPane. showMessageDialog (this ,
tf_xuehao.setText(
tf_xingming.setText(
tf_xingbie.setText(
tf_banhao.setText(
tf_dizhi.setText(
tf_nianling.setText(
tf_dianhua.setText(
JOptionPane. showMessageDialog (this ,
rs =ps .executeQuery();
rs .next();
catch (SQLException sql)
{
JOptionPane. showMessageDialog ((Component)null ,sql.getMessage(),
}
}
if (obj==shanchu )//删除
{
try
{
String no=shuru .getText().trim();
ps =con .prepareStatement(
ps .setString(1,no);
JOptionPane. showMessageDialog (this ,
tf_xuehao.setText(
tf_nianling.setText(
tf_xingming.setText(
tf_dianhua.setText(
tf_dizhi.setText(
tf_xingbie.setText(
tf_banhao.setText(
rs =ps .executeQuery();
JOptionPane. showMessageDialog (this ,
}
catch (SQLException sqlex)
{
sqlex.getMessage();
}
}
if (obj==qingkong )//清空
{
shuru .setText(
tf_xuehao.setText(
tf_nianling.setText(
tf_xingming.setText(
tf_dianhua.setText(
tf_dizhi.setText(
tf_xingbie.setText(
tf_banhao.setText(
}
}}
主要功能:
添加、删除、修改、查询学生基本信息。
实现目的:
对于每个新的学年都有大量的学生入录, 对学生信息的添加是必不可少的。 同时, 在管 理员的日常工作过程中, 难免不出现错误。 所以对其信息修改功能也是必不可少的, 删除则 是在学生开除学籍时可以使用。同时课程、教师、成绩信息和学生信息操作是相同的。 (2)成绩统计:
//统计各科平均分
public String SubjectAvg(String subject){
String s = null ;
float t = 0 ;
this .Connect();
if (subject.equals(
{
s =
st = this .Connect().prepareStatement(s);
rs = st .executeQuery();
while (rs .next())
{
t = rs .getFloat(1);
}
}catch (Exception e){
e.printStackTrace();
}
}
if (subject.equals(
{
s =
st = this .Connect().prepareStatement(s);
rs = st .executeQuery();
while (rs .next())
{
t = rs .getFloat(1);
}
}catch (Exception e){
e.printStackTrace();
}
}
if (subject.equals(
{
s =
st = this .Connect().prepareStatement(s);
rs = st .executeQuery();
while (rs .next())
{
t = rs .getFloat(1);
}
}catch (Exception e){
e.printStackTrace();
}
}
if (subject.equals(
{
s =
st = this .Connect().prepareStatement(s);
rs = st .executeQuery();
while (rs .next())
{
t = rs .getFloat(1);
}
}catch (Exception e){
e.printStackTrace();
}
}
return Float.toString (t);
}
//总分平均分统计
public String allAvg(){
float sum = 0;
int count = 0;
// st = this.Connect().prepareStatement(sql);
String s =
System. out .println(
try {
st = this .Connect().prepareStatement(s);
rs = st .executeQuery();
System. out .println(
if (rs .next())
{
sum = rs .getFloat(
System. out .println(
}
rs = null ;
s =
rs = st .executeQuery();
if (rs .next())
{
sum =sum + rs .getFloat(1);
}
rs = null ;
s =
rs = st .executeQuery();
if (rs .next())
{
sum =sum + rs .getFloat(1);
}
rs = null ;
s =
rs = st .executeQuery();
if (rs .next())
{
sum =sum + rs .getFloat(1);
}
rs = null ;
s =
st = this .Connect().prepareStatement(s);
rs = st .executeQuery();
if (rs .next())
{
count = rs .getInt(1);
}
}catch (Exception e){
e.printStackTrace();
}
if (count == 0)
return
else
{
sum = sum/count;
return Float.toString (sum);
}
}
//获得各科的分数段人数
publicint gethigh(String subject,int grade){
//总的人数
int num = 0;
String s = null ;
this .Connect();
if (subject.equals(
{
if (grade == 60)
s =
if (grade == 70)
s =
if (grade == 80)
s =
if (grade == 90)
s =
if (grade == 100)
s =
st = this .Connect().prepareStatement(s);
rs = st .executeQuery();
while (rs .next())
{
num= rs .getInt(1);
}
}catch (Exception e){
e.printStackTrace();
}
}
if (subject.equals(
{
if (grade == 60)
s =
if (grade == 70)
s =
s =
s =
s =
st = this .Connect().prepareStatement(s);
rs = st .executeQuery();
while (rs .next())
{
num= rs .getInt(1);
}
}catch (Exception e){
e.printStackTrace();
}
}
if (subject.equals(
{
if (grade == 60)
s =
if (grade == 70)
s =
s =
s =
s =
st = this .Connect().prepareStatement(s);
while (rs .next())
{
num= rs .getInt(1);
}
}catch (Exception e){
e.printStackTrace();
}
}
if (subject.equals(
{
if (grade == 60)
s =
if (grade == 70)
s =
s =
s =
s =
st = this .Connect().prepareStatement(s);
rs = st .executeQuery();
while (rs .next())
{
num= rs .getInt(1);
}
}catch (Exception e){
e.printStackTrace();
}
}
return num;
}
//获得总的人数
publicint count(){
int count = 0;
this .Connect();
try {
st = this .Connect().prepareStatement(s);
rs = st .executeQuery();
while (rs .next())
{
count = rs .getInt(1);
}
}catch (Exception e){
e.printStackTrace();
}
return count;}
主要功能:
对各科成绩和总成绩进行统计, 算出它的平均分。 同时显示每科小于 60或者大于 60分的同 学成绩列表。并且用直方图将每个分数段的学生数量形象地表示出来。
主要目的:
在实际的学生成绩管理过程中,计算平均分是很重要的,便于学校和老师对学生总体 成绩的了解。 从而不断发现新的教学方法来提高总体学生的学习成绩。 同时成绩分布图给予 协助。
(3) 管理员界面及主函数入口模块:MainAndGUI.java
//主界面(管理员界面)
import javax.swing.*
import java.awt.*;
import java.awt.event.*;
import java.text.DateFormat;
import java.util.Date;
public class Grade extends JFrame {
private static final long serialVersionUID = 1L;
//定义主框架
private JFrame frame = new JFrame(
//定义菜单栏
private JMenuBar Bar = new JMenuBar();
//定义菜单
private JToolBar statusBar=new JToolBar(); //状态栏 status
private JMenu JMedit = new JMenu(
private JMenu JMcount = new JMenu(
private JMenu JMhelp = new JMenu(
private JMenu JMinfor= new JMenu(
//定义菜单项
private JMenuItem JMIinput = new JMenuItem(
private JMenuItem JMImodify = new JMenuItem(
private JMenuItem JMIall = new JMenuItem(
private JMenuItem JMIgraphics = new JMenuItem(
//private JMenuItem JMIsignal = new JMenuItem(
private JMenuItem JMIhelp = new JMenuItem(
private JMenuItem tohelp=new JMenuItem(
private JMenuItem JMstudent=new JMenuItem(
private JMenuItem JMteacher=new JMenuItem(
private JMenuItem JMcourse=new JMenuItem(
private JMenuItem JMts=new JMenuItem(
private JMenuItem JMsc=new JMenuItem(
ImageIcon image;
Icon tupian;
JLabel label_pic;
Component com = null;
//定义文本标签
private JLabel text = new JLabel(
//定义面板
private Container con = frame.getContentPane();
//显示当前时间
DateFormat
df1=DateFormat.getDateTimeInstance(DateFormat.MEDIUM,DateFormat.MEDIUM); Date d = new Date(); //当前日期和时间
String mystring=df1.format(d);
JLabel StatusLabel1=new JLabel(
//添加时间
JLabel StatusLabel2=new JLabel(
//构造函数
public Grade(){
//把菜单栏加入框架
frame.setJMenuBar(Bar);
//frame.setJToolBar(statusBar);
//把菜单加入菜单栏
Bar.add(JMedit);
Bar.add(JMcount);
Bar.add(JMinfor);
Bar.add(JMhelp);
//把菜单项加入菜单
//JMedit.add(JMIinput);
JMedit.add(JMsc);
JMedit.addSeparator();
JMedit.add(JMImodify);
JMcount.add(JMIall);
JMcount.addSeparator();
//JMcount.add(JMIsignal);
//JMcount.addSeparator();
JMcount.add(JMIgraphics);
JMhelp.add(JMIhelp);
JMhelp.addSeparator();
JMhelp.add(tohelp);
JMinfor.add(JMstudent);
JMinfor.addSeparator();
JMinfor.add(JMteacher);
JMinfor.addSeparator();
JMinfor.add(JMcourse);
JMinfor.addSeparator();
JMinfor.add(JMts);
tupian=new ImageIcon(
label_pic=new JLabel(tupian);
con.setLayout(new BorderLayout());
con.add(label_pic,BorderLayout.CENTER);
com = label_pic; con.add(DesignStatusBar(),BorderLayout.SOUTH); //设置框架
frame.setLocation(200,200); frame.setSize(400,400);
frame.setVisible(true);
//增加监听器
JMImodify.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent arg0) { score_query s=new score_query();
s.setVisible(true);
StatusLabel2.setText(JMImodify.getText()); }});
JMIall.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent arg0) { new AllgradeCount();
StatusLabel2.setText(JMIall.getText()); }});
JMIgraphics.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent arg0) { Photo a = new Photo();
StatusLabel2.setText(JMIgraphics.getText()); }});
JMstudent.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent arg0) { con.remove(com);
Manage_student a = new Manage_student(); a.setVisible(true);
con.add(a, BorderLayout.CENTER);
com = a;
StatusLabel2.setText(JMstudent.getText()); }});
JMteacher.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent arg0) { con.remove(com);
Manage_teacher a = new Manage_teacher(); a.setVisible(true);
con.add(a, BorderLayout.CENTER);
com = a;
StatusLabel2.setText(JMteacher.getText()); }});
JMcourse.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent arg0) { con.remove(com);
Manage_course a = new Manage_course(); a.setVisible(true);
con.add(a, BorderLayout.CENTER);
com = a;
StatusLabel2.setText(JMcourse.getText());
}});
JMts.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent arg0) {
con.remove(com);
Manage_teach a = new Manage_teach();
a.setVisible(true);
con.add(a, BorderLayout.CENTER);
com = a;
StatusLabel2.setText(JMts.getText());
}});
JMsc.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent arg0) {
con.remove(com);
Manage_score a = new Manage_score();
a.setVisible(true);
con.add(a, BorderLayout.CENTER);
com = a;
StatusLabel2.setText(JMsc.getText());
}});
JMIhelp.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent arg0) {
JOptionPane.showMessageDialog(null,
tohelp.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent arg0) {
JOptionPane.showMessageDialog(null,
}
public JPanel DesignStatusBar()
{
statusBar.setFloatable(false);
JPanel panel=new JPanel();
panel.setLayout(new GridLayout(1,5));
statusBar.add(panel);
//添加状态栏
panel.add(StatusLabel1);
panel.add(StatusLabel2);
panel.add(StatusLabel4);
return panel;
}
public static void main(String[] args) {
Grade a = new Grade();
}
}主要功能:
提供系统跟用户接口的主界面,并提供了整个程序的入口地址,也就是主入口函数 main(String[] arg){…}具体的界面请见下面的界面展示。
实现目的:
设定学生成绩管理系统管理员界面, 将功能选项放在主界面上, 方便管理员使用。 其中学生 和教师界面和管理员界面大同小异, 只是设定一些功能, 如基本信息管理学生和教师不能进
行操作。
具体实现:
系统是一个简单的界面,设定菜单栏和状态栏,方便用户使用。其中主要功能模板的 函数分别为:
(1) Manage_student.java实现学生信息的添加、删除、查询、修改功能。
(2) Manage_course.java实现课程信息的添加、删除、查询、修改功能。
(3) Manage_teacher.java实现教师信息的添加、删除、查询、修改功能。
(4) Manage_teach实现授课的添加、删除、查询、修改功能。
(5) SignalCount.java 实现分数的计算。
(6) Photo.java 实现分数的分布图,将数据以柱形图的形式表示出来。
(7) DataManager.java 实现数据库的连接。
(8) stu_course.java实现学生课表查询。
(9) course_query.java实现教师课表查询。
模块特色:
(1)成绩查询丰富,可按学号、姓名、课程名进行模糊成绩查询。
(2)课程查询丰富,可按学号、教师号、课程名、教师名、学生名进行查询。
(3)成绩统计:将学生的成绩进行统计并用图形界面柱形图形象表示出来。
(4)界面友好,实现不同用户的快速切换。
(5)系统易操作,用户易掌握。
3.3 系统运用的主要技术:
技术一:数据库技术
在本次大作业中,采用了 SQL server 2000数据库。在数据库中,通过编写数据库脚本 生成 score 数据库, 同时在 score 中生成六张表和四个视图:学生 (student ) 、 教师 (teacher ) 、 课程(course ) 、成绩(transcript ) 、授课(teach ) 、管理员(admin ) 、成绩视图、学生课表视 图、教师课表视图。 在系统中, 主要是对这五张表和四个视图进行操作。所以首先需要连接 数据库,创建数据源 StudentScore 。
在此次系统设计中,需熟练掌握 SQL 语句,充分使用聚合函数。如果在编写 Java 语句 的时候,数据库语言如若出错,可以在 SQL sever 2000测试语句是否有错,如果没错,可能 是 Java 语句有错或者参数没有传进去,在 Java 的界面可以用输出结果来测试。同时利用巧 妙使用数据库中视图来查询学生成绩、学生课表、教师课表。
技术二:图形界面
学生成绩管理系统主要是对学生成绩进行管理, 将学生成绩直方分布图表示。 形象表现出学 生成绩的分布情况, 方便学校老师对学生成绩的掌握, 以便教师不断地改善自身的教育方法。 技术三:多媒体
学生成绩管理系统中加入图片作为系统界面背景, 将界面美观化, 给与系统使用者视觉享受。 3.4数据库设计
建数据库:
set nocount on
set dateformat ymd
use master
go
if not exists(select *from syslogins where name='score')
exec sp_addlogin score,score
go
/*create database*/
if exists(select *from sysdatabases where name='score')
drop database score
go
create database score
on primary
(name='score',
filename='d:\sqlDatabase\score.mdf',
size=1,
maxsize=5,
filegrowth=1)
log on
(name=score_log,
filename='d:\sqlDatabase\score_log',
size=1,
maxsize=5,
filegrowth=1)
go
//建立学生表
create table student(
Sno char(7) not null primary key ,
check(Sno like '[0-9][0-9][0-9][0-9][0-9][0-9][0-9]'), Sname varchar(10) not null,
sex char(1) not null,
classno varchar(20) not null,
addr char(50) null,
age int null,
tel_no varchar(11) null,
);
//建立教师表
create table teacher(
Tno char(7) not null primary key ,
check(Tno like '[0-9][0-9][0-9][0-9][0-9][0-9][0-9]'), Tname varchar(20) not null,
sex char(1) not null,
titlevarchar(8) not null,
age int null
);
//创建课程
create table course(
Cno char(6) not null primary key,
check(Cno like '[0-9][0-9][0-9][0-9][0-9][0-9]'), Cname varchar(20)not null,
period int not null,
credit int not null
);
//创建成绩
create table transcript(
Sno char(7) not null ,
Cno char(6) not null ,
grade int not null,
primary key(Sno,Cno),
FOREIGN KEY (Sno) REFERENCES student(Sno), FOREIGN KEY (Cno) REFERENCES course(Cno) );
//创建授课表
create table teaching(
Tno char(7) not null ,
Cno char(6) not null ,
primary key(Tno,Cno),
FOREIGN KEY (Tno) REFERENCES teacher(Tno), FOREIGN KEY (Cno) REFERENCES course(Cno) );
创建学生成绩视图
create view stu_score
as
select a.Sno,Sname,classno,c.Cno,Cname,grade from student as a,course as b,transcript as c
where a.Sno=c.Sno and b.Cno=c.Cno
创建教师查询课表视图
create view student_course
as
select t.Tno,Tname,title,c.Cno,Cname
from course c,teacher t,teaching b
where c.Cno=b.Cno and t.Tno=b.Tno
建立学生查询课表视图
create view stu_course
select s.Sno,Sname,Cname,c.Cno
from student s,transcript t,course c
where s.Sno=t.Sno and c.Cno=t.Cno
3.5连接数据库
为方便数据库的管理和使用, 在系统开发过程中, 将连接数据库写在一个 conn 文件中, 如果哪个模块功能需要连接数据库,直接调用 Connect()方法就可以。
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class conn {
private static Connection con;
static String url=
static String username=
static String password=
public static Connection Connect(){
try
{
Class.forName(
con=DriverManager.getConnection(url,username,password);
}
catch(ClassNotFoundException cnfex)
{
System.err.println(
System.exit(1);
}
catch(SQLException sqlex)
{
System.err.println(
}
return con;
}}
4 测试报告及系统评价
4.1 系统简介:
该系统是学生成绩管理系统,其主要功能分为四大模块:
(1)学生成绩信息:学生成绩查询,学生成绩管理。
该功能模块主要功能是:查询、添加、修改、删除学生成绩
(2)统计:成绩统计,图形分布
该功能模块主要功能是:计算总的平均分和各科的平均分, 产生各科的成绩分布直方图。 (3)基本信息管理(管理员) :
①学生信息管理:学生信息的添加、删除、修改、查询
②教师信息管理:教师信息的添加、删除、修改、查询
③课程信息管理:课程信息的添加、删除、修改、查询
④授课信息管理:添加、删除教师授课
(4)课表查询:学生和教师课表查询
此系统包括以上四个大模块,用户选择登录身份进入界面,按照菜单栏里的功能选项 即可进行操作。 该系统主要实现一些成绩查询和基本信息的操作。 同时该系统具有成绩统计 功能。
4.2 系统特色及缺点:
系统特色:该数据库应用系统界面简洁,功能俱全:具有学生成绩、学生信 息、教师信息、课程信息、授课信息添加、删除、修改、查询等功能。该系统最 大的特点是功能全面,查询是该系统的特色,可以有多种条件查询,按学号、姓 名、课程名进行成绩查询。按学号、姓名、课程名进行课程查询。同时系统具有 成绩统计功能,并将成绩分布的情况用柱形图表示出来。
系统缺点:该数据库应用系统界面有些小, 功能俱全但都是一些平常的数据 库操作,添加、删除、修改、查询等功能。
5 个人感受及收获
此次课程设计是我第二次做,但是这是第一次使用 Java 编写一个系统。虽 然有了做 C++大作业的经验。 但是刚开始还是觉得有一定的难度, 挑战性蛮大的。 因为如果开发出一个数据库应用系统,不仅要有很好的 Java 基础知识还要和数 据库知识相结合起来,我相信这无论是对我还是对大家都是一个很大的挑战。 在此次课程设计的前期, 我个人经过了一番思考, 选择了 《学生成绩管理系 统》 这个题目, 刚开始觉得这个题应该相对来说蛮好做的, 但是经过进一步的理 解,发现它其实有些复杂,将 Java 和数据库结合起来。同时查询等要求模糊查 询,利用视图和存储过程来实现。
在此数据库应用系统中,我将系统分成四个大模块:
(1)学生成绩信息:学生成绩查询,学生成绩管理。
该功能模块主要功能是:查询、添加、修改、删除学生成绩
(2)统计:成绩统计,图形分布
该功能模块主要功能是:计算总的平均分和各科的平均分, 产生各科的成绩 分布直方图。
(3)基本信息管理(管理员) :
①学生信息管理:学生信息的添加、删除、修改、查询
②教师信息管理:教师信息的添加、删除、修改、查询
③课程信息管理:课程信息的添加、删除、修改、查询
④授课信息管理:添加、删除教师授课
(1) 课表查询
学生和教师可以对自己的课表进行查询
在编程过程中,实现将成绩以表的形式输出是有一定难度的。编这些代码, 发现一点点的小错误都会引起很大的错误, 花费了大量的时间和精力, 每天都在 改错, 每天都在想自己错在哪, 每天都在想如何改正, 我一直这样纠结的编完这 些代码。
一路走来,很艰辛,但收获很多,花了很多时间精力,虽然系统做的不是很完善,但是 自己还是有成功的喜悦。
6 大作业总结
(1)学会巧妙利用 API 文档。
(2)具有良好的数据库基础和 java 语言基础。
(3)要有不断追求完美的精神,不断完善个人所做系统。
(4)做事认真仔细,需要良好的编程风格。
感谢
在这一个学期的学习之中,我们学会了 Java 语言编程的网络编程技术,在 此, 我在这里感谢王老师在这一个学期的悉心教导。 王老师的严谨的科学态度让
我们折服, 不断地指出不足的地方, 不断地让我改正, 最终我的学生成绩管理系 统成功地开发出来啦! 成功的喜悦还是有的, 不过个人很感激老师啊! 不管怎样, 都是老师引导我走向成功之路的。 而且我个人一直信奉的一句话是:严师出高徒。
转载请注明出处范文大全网 » 原创在线成绩管理系统