JSP+SQL基于JSP的学生信息管理系统论文
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于JSP的学生信息管理系统
摘要
随着学校规模的不断扩大,学生数量急剧增加,有关学生的各种信息也成倍增长。
面对如此庞大的信息量,开发学生信息管理系统来提高学生管理工作的效率就成为必然。
通过该系统,可以做到信息的规范管理、科学统计和快速查询,从而减少管理方面的工作量。
本文主要介绍了学生信息管理系统的主要任务,阐述了开发该系统用到的关键技术,如采用B/S结构,使用JSP编程、利用SQLServer2000建立数据库、采用HTML,JavaScript 等编程技术。
本系统是采用B/S模式进行开发的,系统的用户权限有两种:学生和系统管理员,不同权限用户登入到不同的操作界面。
该系统主要由学籍维护、选课管理、成绩查询等功能模块组成,本文具体介绍了各功能模块所包含的小模块的功能,学籍维护模块主要是对学生的基本信息进行添加、查询、修改、删除;选课管理模块主要是对选修的课程进行添加、删除、统计选修人数,以及学生进行选课和更改选课;成绩查询模块主要是对必修课进行添加、删除、录入成绩,以及学生进行查询成绩等功能。
关键字:学生信息管理,B/S,JSP,Script,SQLServer2000。
Based on JSP student information management system
Abstract
Along with the school scale unceasing expansion, the student quantity
sharp growth, concerned student's each kind of information also becomes
doubles the growth.Facing the so huge information content develops the
student information management system to enhance the student supervisory
work the efficiency to become inevitably.Through this system, may achieve
the information the standard management, the science statistics and the
fast inquiry, thus reduced management aspect work load.
This article mainly introduced the student information management
system primary mission, elaborated develops essential technology which
this system uses, like uses the B/S structure, uses the JSP programming,
using the SQLServer2000 establishment database, uses HTML and JavaScript,
and so on programming technology.
This system uses the B/S pattern to carry on the development; the
system user jurisdiction has two kinds: The student and the system manager,
the different jurisdiction user records to the different operation
contact surface. This system mainly by the school register maintenance,
chooses function module and so on class management, result inquiry to be
composed, this article specifically introduced various functions module
contains the small module function, the school register maintenance
module mainly is carries on the increase, the inquiry, the revision, and
the deletion to student's basic information; Chooses the class
administration module mainly is to the curriculum which takes as an
elective carries on the increase, the deletion, the statistics takes as
an elective the population, as well as the student carries on chooses the
class and re-elects the class; The result inquiry module mainly carries
on the increase, the deletion, the input result to the required course,
as well as the student carries on function and inquiry result and so on.
目录
摘要 (I)
Abstract (II)
引言 (1)
第一章绪论 (2)
1.1 选题的背景和意义 (2)
1.2 国内外研究现状及发展趋势 (2)
1.3 本课题研究内容 (2)
1.4 本课题研究的目标及主要特色 (3)
第二章系统设计使用技术介绍 (4)
2.1 JSP(Java Server Pages)和Java Bean技术介绍 (4)
2.1.1 JSP概述 (4)
2.1.2 JSP工作原理 (4)
2.1.3 JavaBean技术介绍 (4)
2.2 B/S体系结构介绍 (5)
2.3 JavaScrit技术介绍 (6)
2.4 SQL Server 2000 数据库 (6)
2.4.1 数据库介绍 (6)
2.4.2 ODBC数据访问接口 (7)
2.4.3 JDBC数据访问接口 (7)
第三章系统设计 (9)
3.1 需求分析 (9)
3.1.1 运行环境 (9)
3.2 系统总体设计 (9)
3.2.1 系统目标设计 (9)
3.2.2 系统设计思想 (9)
3.2.3 系统功能描述 (10)
3.2.4 系统用例图 (12)
3.2.5 系统UML活动图 (13)
第四章数据库设计 (14)
4.1 总体表设计 (14)
4.2 数据库表的结构 (14)
4.3 实体及ER图 (16)
4.3.1 实体介绍 (16)
4.3.2 实体的ER图以及各实体之间联系的ER图 (16)
4.4 数据库表的关系图 (19)
4.5 数据库表的视图 (20)
4.6 数据库连接 (20)
第五章系统具体实现 (23)
5.1 登入界面 (23)
5.2 学生界面 (25)
5.3 学生界面功能实现 (26)
5.3.1 查看公告页面 (26)
5.3.2 学生修改密码页面 (26)
5.3.3 学生学籍维护页面 (28)
5.3.4 成绩查询 (30)
5.3.5 查看学修课表并进行选修 (30)
5.4 管理员界面 (32)
5.5 管理员界面功能实现 (33)
5.5.1 查看学生基本信息 (33)
5.5.2 添加新学生和选修课 (35)
5.5.3 查看学修课表和必修课表 (36)
5.5.4 查看学生选课情况和学生成绩 (37)
5.5.5 添加必修课表和学生成绩 (40)
第六章全文总结 (44)
致谢 (45)
参考文献 (46)
引言
学生信息管理系统(SMIS)是大学信息管理系统建设的重要组成部分,是提高教学管理的质量和效益乃至建设知名高水平大学的关键环节。
学生信息处理的电脑化、网络化,也是实现学校管理现代化和信息化的重要内容。
学生信息管理系统的内容对于学校的决策者和管理者来说都至关重要, 所以学生信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。
但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。
作为计算机应用的一部分,使用计算机对学生信息进行管理,具有手工管理所无法比拟的优点。
例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高学生档案管理的效率,也是进行科学化、正规化管理,与世界接轨的重要条件。
随着进入二十一世纪,计算机技术迅速向着网络化、集成化方向发展。
传统的单机版应用软件正在逐渐退出舞台,取而代之的是支持网络、支持多种数据信息(多媒体)的新一代网络版应用软件,而目前网络版软件中似乎存在着两种不同的趋势,一种是称为客户端——服务器的C/S结构应用系统,另一种是称为浏览器——服务器的B/S结构应用系统。
而后者的特点是在客户端直接采用了功能强大的浏览器软件作为界面,其优点在于软件开发效率高,客户端不受操作平台的限制、也不受地域的限制,网络传输量少,即适用于局域网,更适用于Internet,而且投资小、见效快,用户可以不必进行服务器方面的投资,而是去租用,甚至是免费使用ISP的服务器资源,因而受到越来越多中小型单位的青睐。
因此,开发一套采用B/S结构的学生信息管理系统就成为必要的事情。
本系统正是采用B/S结构开发的,该系统主要由学籍维护、选课管理、成绩查询等功能模块组成,实现学生基本信息管理、学生选修课程管理以及学生成绩查询管理等。
本文将在后面一一加以详细阐述。
第一章绪论
1.1 选题的背景和意义
随着我国教育产业化的飞速发展,社会对教育水平和教学管理软硬件的要求日益提高,尤其是对一个学校能够具有一整套完善的教学管理软件提出了更多的要求。
为了适应这种形式,教育系统尤其是大学不仅首先要有坚实的硬件基础,还要有一整套完善的教学管理软件管理系统。
而要实现这一功能,就要求学校管理者配备一套高效的教育管理网络系统,以便在学校内实施良好的一整套完善的管理且以最快地速度响应教师和学生的需求,及时为他们提供服务,为他们提供一个高效、便捷的环境。
学生信息管理系统是校园网络中一个重要的应用系统,它大大改善了学校教学、科研与管理的基础环境,在一定程度上反映出学校管理现代化的水平。
随着国家对于教育的重视逐渐加大,学校正向着大型化、规模化发展,而对于大中型学校,跟学生信息管理有关的信息随之急剧增加。
在这种情况下单靠人工来处理员工的工资不但显得力不从心,而且极容易出错。
该系统就是设计一个学生信息数据库管理系统,由计算机代替人工执行一系列诸如增加新学生,删除旧学生,学生信息修改,查询,维护及打印等操作。
这样就使学生部门管理人员可以轻松快捷地完成学生信息管理的任务。
1.2 国内外研究现状及发展趋势
管理信息系统(MIS)是进行信息的采集、存储、加工、维护和使用的系统。
它是随着管理科学和技术科学的发展而形成的。
MIS的发展与计算机网络技术的发展是紧密相关的,随着Internet/Intranet技术的广泛应用,MIS的体系结构也发生很大的变化,从以往基于C/S 结构的数据访问及安全体系发展到当前的基于B/S结构体系。
学生信息管理系统是典型的管理信息系统(MIS),其系统开发主要包括数据库的规划设计与维护和客户端应用程序的开发两个方面。
对于前者要求建立起的数据库具有完整性和一致性,且具有一定的数据安全性,而对于后者则要求程序界面友好、功能完备,容易使用,具有流行软件的操作习惯等特点。
随着学校的规模不断扩大,学生数量急剧增加,有关学生的各种信息也成倍增长。
面对庞大的信息量,有必要开发学生信息管理系统来提高学生管理工作的效率。
通过这样的系统,可以做到信息的规范管理、科学统计和快速查询,从而减少管理方面的工作量。
鉴于上述管理信息系统的日趋成熟和收集信息的情况,该学生信息管理系统充分运用MIS的总体思想,综合应用了B/S模式、SQL Server、JSP等技术,并具有学生对自己所需信息的操作和管理员对系统进行管理等功能,很好的将教学质量提升了,真正完好地达到服务于教学计划。
1.3 本课题研究内容
本课题研究内容为学生信息管理系统,信息管理系统提供了强大的学生档案管理管理功能,方便管理员对学生信息的添加、修改、删除、查询等操作。
本系统开发的总体任务是实现学生信息管理的系统化、规范化、自动化、达到提高学生信息管理效率的目的。
主要内容包过:
(1)学籍维护模块:
1. 管理员可以对学生进行添加(包过基本信息)、删除、查看、修改信息。
2. 学生可以查看自己的基本信息,添加、修改详细个人信息。
(2)选课管理模块:
1. 管理员可以对选修课程进行添加、删除、统计每门课程选修的人数以及查找
单个学生所选的课程。
2. 学生可以查看所有选修课程并进行选修以及查看自己所选课程并进行修改。
(3)成绩管理模块:
1. 管理员可以进行添加、删除、修改基本课程,录入、修改学生基本课程成绩,
查找单个学生的所有成绩以及查找单门基础课程所有学生的成绩。
2. 学生可以查询自己的基础课程成绩。
学生信息管理系统主要提供方便高效的管理功能以及网上的信息查阅平台,学生可以通过该系统查阅相关信息、选课及修改相关信息,管理员可以管理所有信息。
该系统使用JSP编程语言,Microsoft SQL2000数据库以及Apache Tomcat作为开发平台,运用软件工程思想方法,对系统进行快速有效开发, 系统分为以下几个方向:
(1)用户管理。
实现对不同用户分配不同的权限。
(2)数据库连接。
使程序能访问数据库,并能对其中的数据进行操作。
(3)数据录入。
通过程序能实现往数据库中增加记录。
(4)数据查询。
通过各种查询组合实现对数据的精确选取。
(5)数据维护。
包括对数据的修改及删除操作。
系统依据Apache Tomcat构架的运行平台,利用Dreamweaver 进行整体框架的设计,连接数据库,最后进行全面的系统调试而完成。
1.4 本课题研究的目标及主要特色
一、研究目标:建立一个B/S层结构的学生信息管理系统,实现管理员对学生信息的
获取、统计等各环节的计算机管理。
二、主要特点:
1、实现学生信息管理的基本要求,对学生学习进行完善管理。
2、界面友好,简单易用。
3、系统操作简单,功能强大,易于维护。
第二章系统设计使用技术介绍
2.1 JSP(Java Server Pages)和Java Bean技术介绍
2.1.1 JSP概述
JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。
JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。
2.1.2 JSP工作原理
JSP文件第一次被请求时,JSP引擎把该JSP文件转换成为一个servlet。
而这个引擎本身也是一个servlet,在JSWDK(java服务器网络开发包)中,它就是JspServlet。
JSP引擎先把该JSP文件转换成一个Java源文件,在转换时如果发现jsp文件有任何语法错误,转换过程将中断,并向服务端和客户端输出出错信息;如果转换成功,JSP引擎用javac把该Java 源文件编译成相应的class文件。
然后创建一个该SERVLET的实例,该SERVLET 中的jspInit()方法被执行,jspInit()方法在servlet的生命周期中只被执行一次。
然后jspService()方法被调用来处理客户端的请求。
对每一个请求,JSP引擎创建一个新的线程来处理该请求。
如果有多个客户端同时请求该JSP文件,则JSP引擎会创建多个线程。
每个客户端请求对应一个线程。
以多线程方式执行可大大降低对系统的资源需求,提高系统的并发量及响应时间.但应该注意多线程的编程限制,由于该servlet始终驻于内存,所以响应是非常快的。
如果.jsp 文件被修改了,服务器将根据设置决定是否对该文件重新编译,如果需要重新编译,则将编译结果取代内存中的servlet,并继续上述处理过程。
虽然JSP效率很高,但在第一次调用时由于需要转换和编译而有一些轻微的延迟。
此外,如果在任何时候如果由于系统资源不足的原因,JSP引擎将以某种不确定的方式将servlet从内存中移去。
当这种情况发生时jspDestroy()方法首先被调用, 然后servlet实例便被标记加入"垃圾收集"处理。
jspInit()及jspDestory()格式如下:可在jspInit()中进行一些初始化工作,如建立与数据库的连接,或建立网络连接,从配置文件中取一些参数等,在jspDestory()中释放相应的资源。
2.1.3 JavaBean技术介绍
JavaBean是一种软件组件模型,它与其他软件对象相互作用,决定如何建立和重用软件组件,这些可重用软件组件被称为Bean。
Bean使用现有的Bean帮助开发新的计划,进而建立它们之间的关系。
JavaBean是基于Sun公司的JavaBean规范的,可在编程工具中被可视化处理的可复用的软件组件。
因此JavaBean具有4个基本特性:
(1)独立性;
(2)可重用性;
(3)在可视化开发工具中使用
用户可以使用JavaBean将功能、处理、值、数据库访问和其他任何可以用java代码创造的对象进行打包,并且其他的开发者可以通过内部的JSP页面、Servlet、其他JavaBean、applet程序或者应用来使用这些对象。
这样JavaBean就变成了一个组件了,达到代码的重用性和隔离性,在调用JavaBean的时候,不用关心JavaBean的实现过程,只要知道方法的功能、输入参数和输出参数就可以了。
2.2 B/S体系结构介绍
在B/S体系结构系统中,用户通过浏览器向分布在网络上的许多服务器发出请求,服务器对浏览器的请求进行处理,将用户所需信息返回到浏览器。
B/S结构简化了客户机的工作,客户机上只需配置少量的客户端软件。
服务器将担负更多的工作,对数据库的访问和应用程序的执行将在服务器上完成。
浏览器发出请求,而其余如数据请求、加工、结果返回以及动态网页生成等工作全部由Web Server完成。
实际上B/S体系结构是把二层C/S结构的事务处理逻辑模块从客户机的任务中分离出来,由Web服务器单独组成一层来负担其任务,这样客户机的压力减轻了,把负荷分配给了Web服务器。
这种三层体系结构如图1所示。
图2..1
采用该结构软件的优势在于:
(1)无须开发客户端软件,维护和升级方便;
(2)可跨平台操作,任何一台机器只要装有WWW浏览器软件,均可作为客户机来访问系统;
(3)具有良好的开放性和可扩充性;
(4)可采用防火墙技术来保证系统的安全性,有效地适应了当前用户对管理信息系统的新需求。
这种三层结构层与层之间相互独立,任何一层的改变不影响其他层的功能。
三层B/S结构将应用的三个部分明确的分开:表示部分、应用逻辑部分、数据访问部分。
这三个部分在逻辑上独立的分开,分别加以实现,称之为:客户端、应用服务器、数据库服务器。
而在客户端和应用服务器之间加入一个WEB服务器,就形成了一种特殊的B/S结构:Browser/Server,只在客户端安装浏览器软件即可。
客户端使用Internet Explore时,就可以让Internet Explore变成为能够处理数据的应用系统。
由于这种模式是提供一个跨平台的、简单一致的应用环境,实现了开发系统与应用系统的分离,因此避免了为多重不同的操作系统开发同一应用系统的重复操作,便于用户群的扩展、变化以及应用系统的管理。
因此该结构在管理信息系统开发领域中获得飞速发展,成为应用软件开发中一种流行的体系结构.所以在开发本系统时采用这种模式。
2.3 JavaScrit技术介绍
JavaScript是一种基于对象(object)和事件驱动(event driven)并具有安全性能的脚本语言。
它的目的是与html超文本标记语言、java 脚本语言(java小程序)一起实现在一个web 页面中链接多个对象,与web客户交互作用。
它被嵌入HTML 的文件之中。
通过JavaScript 可以做到响应用户的需求事件(如表单的输入),这样当一位使用者输入一项信息时,它不需要通过网络传送到服务器端进行处理再传回来的过程,而可以直接在客户端进行事件的处理。
它的出现弥补了html语言的缺陷。
JavaScript是一种脚本语言,它采用小程序段的方式实现编程。
像其它脚本语言一样,JavaScript同样已是一种解释性语言,它提供了一个易的开发过程。
它的基本结构形式与C、C++、VB、Delphi十分类似。
但它不像这些语言一样,需要先编译,而是在程序运行过程中被逐行地解释。
它与HTML标识结合在一起,从而方便用户的使用操作。
2.4 SQL Server 2000 数据库
2.4.1 数据库介绍
SQL Server 2000具有较好的可伸缩性和可靠性,提供了以Web标准为基础的扩展数据库编程功能,可以满足电子商务和企业应用程序的要求。
SQL Server 2000支持XML和Internet标准,具有基于Web的分析能力,允许使用内置的存储过程以XML格式存储、更新、删除、检索数据。
SQL Server 2000能提供超大型系统所需的数据库服务。
大型服务器可能有成千上万的用户同时连接到SQL Server 2000的情况,SQL Server 2000为这些环境提供了全面的保护,具有防止问题发生的安全措施,例如,可以防止多个用户试图同时更新相同的数据。
SQL Server 2000还在多个用户之间有效地分配可用资源,比如内存、网络带宽和磁盘I/O等。
SQL Server 2000不仅能作为一个功能强大的数据库服务器有效地工作,而且数据库引擎也用在需要在客户端本地存储独立数据库的应用程序中。
SQL Server 2000可以动态地将自身配置成能有效地使用客户端桌面或膝上型电脑中的可用资源,而不需要为每个客户端专设一个数据库管理员。
应用程序供应商还可以将SQL Server 2000作为应用程序的数据存储组件嵌入到应用程序中。
SQL Server在网络组件的顶部添加了服务器特有的中介组件,诸如开放式数据库连接(ODBC)后能使不同客户机进行相互连接,它可处理基于Internet的应用程序,帮助用户把SQL Server数据库信息集成到Web页面。
SQL语句介绍:
SQL(Structured Query Language,结构查询语言)是一个功能非常强大的数据库语言,可以用在一些大型数据库的建立。
SQL语句通常用于完成一些数据库的操作任务,比如在数据库中插入数据、更新数据、删除数据,或者从数据库中检索数据。
使用SQL的常见关系数据库管理系统有:Oracle、 Sybase、 DB2、My SQL 、 Microsoft SQL Server、 Access 等。
绝大多数SQL结构化查询语言都可以在数据库之间通用,虽然不同的数据库在SQL语言上有些差异。
但是,标准的SQL命令如"Select"、 "Insert"、 "Update"、 "Delete"、"Create"和 "Drop"用于完成绝大多数数据库的操作,在不同数据库之间几乎没有差异。
SQL功能强大,但是概括起来,它可以分成以下几部分:DML(Data Manipulation Language数据操作语言)用于检索或者修改数据; DDL(Data Definition Language数据定义语言)用于定义数据的结构,如创建、修改、删除等命令;DCL(Data Control Language 数据控制语言)用于赋予或取消用户的权限。
2.4.2 ODBC数据访问接口
开放数据库互连(Open DataBase Connectivity,ODBC)是Microsoft公司开发的一套开发数据库系统应用程序接口规范,它支持应用程序以标准的ODBC函数和SQL语句操作各种不同的数据库。
在这一实现过程中,ODBC驱动程序起了关键作用,简单地说,ODBC驱动程序相当于一个转换开关,它负责将应用程序发送来的标准SQL语句传递给各种数据库驱动程序处理,再将处理结构送回使用程序。
于是,应用程序开发者只须面对统一的ODBC数据源,而不必针对各种数据库进行不同的设置,这样的程序具备更好的适用性和可移植性,甚至可以访问多种不同的数据库,如图2所示
图2.2 ODBC工作原理
2.4.3 JDBC数据访问接口
为支持Java程序的数据库操作功能,Java语言采用了专门的Java数据库编程接口(Java DataBase Connecivity,JDBC),用于在Java程序中实现数据库操作功能并简化操作过程。
JDBC支持基本SQL语句,提供多样化的数据库连接方式,为各种不同的数据库提供统一的操作界面。
JDBC工作原理如图3所示。
图2.3 JDBC工作原理
第三章系统设计
3.1 需求分析
本系统主要是针对各个学校的学生信息进行管理,本系统满足以下几点要求:
●系统安全性。
由于该系统的使用对象多,要求有较好的权限管理。
不同权限进入不同的界面,为了防止数据的并发现象的出现,数据的编辑必须由合法用户来操作,并对每个学生的信息进行良好的保密。
●系统内容的全面性。
学生信息管理系统不仅是对学生的基本信息进行管理,还包过学生选课管理,成绩管理等,因此,本系统能够很好的满足学校对学生的信息进行完善、统一的管理。
●系统灵活性。
要求有良好的人机界面,操作简单(数据的添加、删除、修改、查询等方便快捷)。
●可扩展性。
站点的数据承载量、功能模块的单个或整体调整都可以满足变化的需要,这种适应性称为可扩展性。
固定资产管理系统的可扩展性,体现在不同用户群需要处理不同类型的数据、数据与用户之间进行交互、数据要符合个用户的使用需求、多表查询系统化、避免性能下降等方面。
●易维护性。
本系统采用B/S结构,系统的升级只需要在服务器端完成,更新软件系统的数据库、文件也只需要更新服务器端即可。
在进行系统的维护时,只需要远程登录服务器系统,减少了维护系统的成本和周期。
3.1.1 运行环境
操作系统:Windows 2000 (Advanced) Server/2003 Server/XP Professional
数据库:SQL Server 2000;
JSP服务器:Tomcat;
开发工具:JBuilder X。
3.2 系统总体设计
3.2.1 系统目标设计
系统开发的总体任务是实现学校学生信息管理系统化、规范化和自动化,从而达到学生信息管理高效率的目的。
使得教务处人员能够方便快捷地管理学生信息以及学生能够方便快捷的查看修改个人信息,从而提高工作效率和经济效益。
计算机的资源是受到限制的,因此要充分利用JSP的功能,设计出功能强大的软件,同时要尽可能减少对系统资源的占用,同时对本系统要求有良好的灵活性和完善性。
3.2.2 系统设计思想
学生信息管理系统主要是对学生的学籍,选课,成绩等的管理。
学生信息管理首先就。