学生量化考核系统.doc.

学生量化考核系统的设计与实现

内容摘要:随着学校的规模不断扩大,学生数量急剧增加,有关学生的各种信

息也成倍增长。面对庞大的信息量,有必要开发学生管理系统来提高学生管理工作的效率。通过这样的系统,可以做到信息的规范管理、科学统计和快速查询,从而减少管理方面的工作量。

本学生信息管理系统包括学生记录、添加学生信息、删除学生信息,修改学生信息,查询学生信息,以及系统退出等几个模块。管理员登录后可以对学生的各项信息进行管理。

可以说,现在传统的学生的各项管理所具备的功能几乎都可以在互联网上进行互联网高效运作,虽然传统学生管理的手段不同,但是随着互联网的发展,它将有力的改变现存学生管理模式,给教育单位以高效低成本的发展空间。本学生管理系统的系统设计是基于HTML 语言,嵌套JSP 编程技术,以Tomcat 为服务平台,实现基于网络学生管理系统的构建。本篇论文介绍了该系统的开发环境和运行平台、JSP 、HTML 脚本,而后台的数据库则使用SQL Server数据库管理整个学生管理系统的后台数据。

关健词 :学生管理 JSP Tomcat 连接数据库

一、绪论

随着计算机技术和网络技术的发展,计算机网络已得到越来越广泛的应用。对于高校而言,外部网络连接,实现与INTERNET 连接,提供本校的信息服务,融入世界信息潮流;建立本校的管理信息系统,实现管理的科学化、现代化;利用现代化的手段提高教学质量和管理水平。随着管理信息系统的相对完善,学校管理网络建设的重要性与效益才能充分体现。因此,开发建设高校的学生管理信息系统是本文研究的课题。

信息社会的高科技,商品经济化的高效益,使计算机的应用已普及到经济和社会生活的各个领域。计算机虽然与人类的关系愈来愈密切,还有人由于计算机操作不方便继续用手工劳动。为了适应现代社会人们高度强烈的时间观念,学生管理系统软件为教学办公室带来了极大的方便。该软件是以汉语编程语言为实现语言,其功能在系统内部有源代码直接完成。通过操作手册,使用者可以了解本软件的基本工作原理。操作人员只需输入一些简单的汉字、数字,即可达到自己的目的。

二、系统概述

(一)、学生管理系统的开发目的

现代高校管理自动化的重要而关键的环节,在日益信息化、办公电脑化的今天发挥着越来越重要的作用。管理信息系统的开发呈现了一种“人机系统”,它以特定的模式支持一个组织内各级组织机构之间的通讯,对信息资源进行综合开

发,管理和利用,实现对该组织的有效管理。 (二)、学生管理系统的开发意义

国内高校建立在网络上学生管理发展不平衡,目前在学生管理信息系统方面同时并存三种模式。第一种模式是单机管理模式,在一些学校里,计算机网络还没有建立起来,计算机之间不能进行数据交换和信息共享,这些学校仍然停留在面向部门的单项事务处理的水平上,这种状况决定他们的系统经常出现数据不一致,容易发生数据丢失、系统感染病毒等问题;第二种模式是局域网管理模式,可以开展网络上的工作。比如建立局域网上的学生管理信息系统,数据集中在部门服务器上,为学生处本部门的管理人员提供数据共享,这种方式对于部门内部的管理工作起到了促进作用,解决了部门内部的数据冗余和不一致的问题,但是应用软件都在工作站上完成,工作站负担过重,服务器只是实现文件的存储、数据存储和打印共享,网络利用率较低。校内很多单位都有自己的局域网,遇到需要了解学生处掌握的信息时,就向学生处要求提供,学生处也只能根据要求把自己部门的信息整理出来,再传送到需求部门,这样不能实现不同单位间的数据共享,更不能实现信息资源的合理流动;第三种模式是覆盖全校的学生管理信息系统,这个学生信息系统以学生处管理系统为基础,满足校内外对学生信息共享和利用的要求,并为各级领导提供有效的辅助决策服务。 (三)、系统设计思想

本文介绍的高校学生管理信息系统是基于B/S结构(Browser/Server结构) 高校学生管理信息系统将计算机用于现代化管理,在高校学生处进行关于高校学生信息的处理,完成了许多功能,如信息添加、修改、删除、查询等功能。本文通过对高校学生管理信息系统的分析与设计,介绍了该系统的设计思想、设计方法和开发的步骤及成果。

本文对于高校学生管理信息系统的开发过程进行了较为详细的论述。对系统进行了系统分析,明确了系统的可行性和客户需求;对数据库进行了设计,论述了该系统数据库的结构和数据库安全性措施;根据模块化原理,按照功能将系统分为了几大功能模块,并对各部分功能进行了分析;采用结构化程序设计的思想,提出系统尤其是数据报表打印子系统的程序设计思路;最后,对于本系统的测试和安装进行了分析。

三、系统实现的工具

(一)、Tomcat 与JSP 的结合

tomcat 是apache.org 下开发的一个java 应用服务器,在企业应用里运用很广泛,当然也有其他如weblogic,jboss 等等类似服务程序,不过tomcat 是个完全免费的程序。tomcat 和sun 的java 平台配合版本一般是tomcat4.x 配合jdk1.4.2,tomcat5.5.x 配合jdk1.5。tomcat 在windows 下面一般是独立应用程序,在unix 下的话一般都是和apache 配合使用。相对而言tomcat5.5更复杂些,各个组件被分开了。

java 和jsp 的开发工具的话,免费产品里比较好的ide 有netbeans 和eclipse,netbeans 应该是sun 支持下开发的,eclipse 的话是ibm 下的一个通用ide 项目,支持多种语言的开发。 (二)、JSP 的功能特点

1、将内容的产生和显示进行分离

使用JSP 技术,Web 页面开发人员可以使用HTML 或者XML 标识来设计

和格式化最终页面。使用JSP 标识或者小脚本来产生页面上的动态内容。产生内容的逻辑被封装在标识和JavaBeans 群组件中,并且捆绑在小脚本中,所有的脚本在服务器端执行。如果核心逻辑被封装在标识和Beans 中,那么其它人,如Web 管理人员和页面设计者,能够编辑和使用JSP 页面,而不影响内容的产生。在服务器端,JSP 引擎解释JSP 标识,产生所请求的内容(例如,通过存取JavaBeans 群组件,使用JDBC 技术存取数据库),并且将结果以HTML (或者XML )页面的形式发送回浏览器。这有助于作者保护自己的代码,而又保证任何基于HTML 的Web 浏览器的完全可用性。

2、强调可重用的群组件

绝大多数JSP 页面依赖于可重用且跨平台的组件(如:JavaBeans 或者Enterprise JavaBeans)来执行应用程序所要求的更为复杂的处理。开发人员能够共享和交换执行普通操作的组件,或者使得这些组件为更多的使用者或者用户团体所使用。基于组件的方法加速了总体开发过程,并且使得各种群组织在他们现有的技能和优化结果的开发努力中得到平衡。

3、采用标识简化页面开发

Web 页面开发人员不会都是熟悉脚本语言的程序设计人员。JavaServer Page 技术封装了许多功能,这些功能是在易用的、与JSP 相关的XML 标识中进行动态内容产生所需要的。标准的JSP 标识能够存取和实例化JavaBeans 组件,设定或者检索群组件属性,下载Applet ,以及执行用其它方法更难于编码和耗时的功能。通过开发定制化标识库,JSP 技术是可以扩展的。今后,第三方开发人员和其它人员可以为常用功能建立自己的标识库。这使得Web 页面开发人员能够使用熟悉的工具和如同标识一样的执行特定功能的构件来工作。 JSP 技术很容易整合到多种应用体系结构中,以利用现存的工具和技巧,并且扩展到能够支持企业级的分布式应用。作为采用Java 技术家族的一部分,以及Java 2EE的一个成员,JSP 技术能够支持高度复杂的基于Web 的应用。由于JSP 页面的内置脚本语言是基于Java 程序设计语言的,而且所有的JSP 页面都被编译成为Java Servlet ,JSP 页面就具有Java 技术的所有好处,包括健壮的存储管理和安全性。作为Java 平台的一部分,JSP 拥有Java 程序设计语言“一次编写,各处执行”的特点。随着越来越多的供货商将JSP 支持加入到他们的产品中,您可以使用自己所选择的服务器和工具,修改工具或服务器并不影响目前的应用。 (三)、ASP 的功能特点

1、使用VBScript 、 JScript 等简单易懂的脚本语言,结合HTML 代码,即可快速地完成网站的应用程序。

2、无须compile 编译,容易编写,可在服务器端直接执行。

3、使用普通的文本编辑器,如Windows 的记事本,即可进行编辑设计。 4、与浏览器无关(Browser Independence), 客户端只要使用可执行HTML 码的浏览器,即可浏览Active Server Pages 所设计的网页内容。Active ServerPages 所使用的脚本语言(VBScript 、 Jscript) 均在WEB 服务器端执行,客户端的浏览器不需要能够执行这些脚本语言。

5、Active Server Pages能与任何ActiveX scripting语言兼容。除了可使用VB Script 或JScript 语言来设计外,还通过plug -in 的方式,使用由第三方所提供的其它脚本语言,譬如REXX 、Perl 、Tcl 等。脚本引擎是处理脚本程序的COM(Component Object Model) 对象。

6、可使用服务器端的脚本来产生客户端的脚本。

7、ActiveX Server Components(ActiveX 服务器组件 ) 具有无限可扩充性。可以使用Visual Basic 、Java 、Visual C++ 、COBOL 等程序设计语言来编写你所需要的ActiveX Server Component 。 (四)、HTML 的功能特点

HTML 的英文全称是"Hypertext Markup Language",中文译为“超文本标记语言”。“超文本”就是指页面内可以包含图片,联接,甚至音乐,程序等非文字的元素。在几年前作为SGML 的一个子集开发的。

一个HTML 文件中包含了所有将显示在网页上的文字信息,其中也包括对浏览器的一些指示,如哪些文字应放置在何处,显示模式是什么样的等。如果你还有一些图片、动画、声音或是任何其它形式的资源,HTML 文件也会告诉浏览器到哪里去查找这些资源,以及这些资源将放置在网页的什么位置。浏览的网页就是由HTML 语言编写出来的。虽然HTML 是一种语言,但HTML 不是程序语言,如 C++ 和 Java 之类,它只是标示语言,你只要明白了各种标记的用法便算学会了HTML.HTML 的格式非常简单,只是由文字及标记组合而成,因此任何文本编辑器都可以制作HTML 页面。

在编辑器中输入html 代码即可完成对网页的设计,如果在其中加入VB,JAVA 等脚本文件以及数据库连接有关的语句指令,便可对已知数据进行查询,从而生成动态网页的一部分。 (五)、SQL Server的概述

SQL Server 是一个具备完全 Web 支持的数据库产品,提供了对可扩展标记语言 (XML) 的核心支持以及在 Internet 上和防火墙外进行查询的能力,提供了以 Web 标准为基础的扩展数据库编程功能。丰富的 XML 和 Internet 标准支持允许使用内置的存储过程以 XML 格式轻松存储和检索数据。

SQL Server 提供强大的开发工具和各类开发特性,在大大提高开发效率的同时,进一步拓展应用空间,带来新的商业应用机遇。例如,XML 数据库与Web Service 的支持将使您的应用实现Internet 数据互联,.net 集成极大的扩展了开发空间,异构数据集成、Service Broker使您的数据和其它应用无缝集成,各种新数据类型和T-SQL 扩展带来了诸多灵活性。C#、VB.net 、XQuery 、XMLA 、ADO.net 2.0、SMO 、AMO 等都将成为SQL Server数据平台上开发数据相关应用的有力工具。

四、需求分析

(一)、操作过程分析

制作工具:JSP(Java Script) 、SQL Server 2000、 HTML(Hyper Text Markup Language) 在Eclipse 中插入HTML 语言完成学生管理系统的界面的设计以及网页的外观构架,在Eclipse 中嵌入JSP 和JAVA 语言对网页中提交的数据进行处理,在系统的后台,用SQL Server 2000作为数据库支持,提供基本的表信息,使用时, 先运行Tomcat(点击“开始”—“所有程序”—Apache Tomat5.5—Configure Tomcat), 运行好之后, 启动Tomcat 把项目文件夹导入, 启动的时候有用户名和密码, 这是在安装Tomcat 是设置的, 导入之后首先运行Login.jsp 登陆界面, 如果是管理员登陆后转到MainAdmin.jsp 页面, 进行对所有用户的信息添加、删除、修改、查询等等,如果是普通用户登陆后转到MainCommonUser.jsp 页面进行个人成绩查询和个人密码的修改 (二)、学生基本信息的分析

学生的基本信息根据在班级的学号登陆到个人页面,进行个人密码的修改,以及个成绩的查询和所在班级成绩的查询。 (三)、管理员基本信息分析

管理员可以对任何普通用户的信息进行修改,添加普通用户,添加管理员,删除普通用户,删除用户,修改学生记录,修改所有用户的密码(可以在丢失密码的情况下,管理员有权利再给予一个新的密码),查询任何学生的个人成绩以及所有班级的成绩,还可以查询当月优秀学生和差生(前三名以及最后三名)。 (四)、软硬件环境需求

硬件环境 软件环境:

服务器端/客户端: 服务器端/客户端:

处理器:Intel PentiumIII 操作系统:Windows XP 内存: 192M 网络协议:TCP/IP

硬盘空间:20G 浏览器:Internet Explore 6.0 所需要的应用软件有:Tomcat5.5 J2sdk5.0

五、总体设计

(一)、功能的分析

1、权限功能。为用户设置权限功能,可分为普通用户和管理员,通

用户只能个人信息修改以及查询所有人的信息。管理员可以对任何用户操作

2、查询功能。为所有用户提供查询功能,可查询允许范围内的所有信息。

3、添加功能。为管理员提供了添加普通用户信息的功能。

4、修改功能。为管理员提供了修改所有用户信息的功能,普通用户可以修改个人信息

5、删除功能。为管理员提供删除任何普通用户的功能 6、退出功能。结束并关闭系统。

(二)、流程的分析

图1 系统流程图

(三)、数据库表

表1 学员表

表2 23班成绩表

表3 22班成绩表

表4 21班成绩表

(四)、创建数据库连接

SQL server 2000与 Access 2000的连接方式有所不同,当更换数据库时,首要的一点就是更换数据库的连接语句,通过查找及实践,完成了数据库的建立和连接。

在模块的建立时,很多时候发现功能不能正常运行,在检查完程序语句的结构之后,发现并没有错误,于是在检查页面与页面交互时发现了问题,很多地方传递的参数并没有真正的执行,还有些地方没有进行参数的设置,才导致了程序的错误。

由于一开始没有使用session 对象,致使很多功能无法实现,在学习了session 的相关内容后才解决了一些具体的问题,包括网页间的参数的传递,公共信息的保存及提取等。 (五)、创建数据库的对象

Java DataBase Connectivity (JDBC)一个在 Java 中以面向对象的方法来连接数据库的技术。它是对 ODBC API 进行的一种面向对象的封装和重新设计,并且它能够使您编写不依赖供应商的代码,用以查询和操纵数据库,JDBC 提供了一些相当低层的方法来存取数据库,同时也在相当高层提供了功能强大的对象来处理数据库。 (六)、关闭数据库的连接和对象

关闭数据库只需将SqlConnection.Close()则可以。

注意,如果你Open()后在没有Close()之前再Open()一次的话,连接数会加1。或者你的连接字串不同也会加1。

另外SQL 的默认连接数是100。

六、详细设计

(一)、登陆界面

图2 用户登陆界面

此界面是进入系统后的第一个界面,实现用户的登陆功能,用户分为两类:管理员和普通用户。此页面为Login.jsp 。默认的登陆名和密码是一样的。 function CheckLogin() {

var N,P; N=document.MyForm.UName.value; P=document.MyForm.UPwd.value; if(N !="" && P !="") { MyForm.submit; } else { alert("信息尚未完全输入,请核对!"); return false; } }

CheckLogin()是用来检查提交的选项是否为空。

Date myDate;

myDate=new Date(); out.println(myDate);

定义一个myDate 变量,用来显示系统当前的日期和时间。

点击“登陆”按扭,实现登陆功能,如果是“普通用户”则跳转到MainCommonUser.jsp ,普通用户的个人信息界面。如果是“管理员”则跳转到MainAdmin.jsp ,实现管理员所有权限的功能界面。

点击“取消”按扭,实现取消你所输入的内容。

点击“退出”按扭,实现退出整个系统。 (二)、普通用户的功能界面

图3 普通用户登陆后的界面

String Log;

Log=convertString(request.getParameter("ULog")); 定义一个字符串变量“Log ”,用来防止未登陆就访问其他页面。 String LName,LPwd; if(Log==null )

response.sendRedirect("Login.jsp");

LName=request.getParameter("UName"); LPwd=request.getParameter("UPwd"); session.setAttribute("CLassID",LName); try {

new sun.jdbc.odbc.JdbcOdbcDriver(); // Connection conn=java.sql.DriverManager.getConnection("jdbc:odbc:Driver={SQL Server};server=.;Database=pubs","sa","sa"); Connection

conn=java.sql.DriverManager.getConnection("jdbc:odbc:Driver={SQL Server};server=.;Database=pubs","sa","");

Statement stmt=conn.createStatement();

ResultSet rst=stmt.executeQuery("select PName,PPwd,PState from TB_PeopleInfo where PClassId='" + LName +"'"); if(rst.next()) {

String UserName;

UserName=rst.getString("PName");

session.setAttribute("PeopleName",UserName); if(LPwd.equals(rst.getString("PPwd"))) {

boolean bool;

bool=rst.getBoolean("PState"); if(bool) {

response.sendRedirect("MainAdmin.jsp"); }

定义两个变量LName ,LPwd 获取用户所提交的用户名和密码,再定义一个布尔值bool 来判断数据库字段“PState ”是否为true, 如果为true 则为管理员,false 则为普通用户。

图4 普通用户更改密码界面

String ModifyPwd;

ModifyPwd=convertString(request.getParameter("NNNN"));

if(ModifyPwd==null)

response.sendRedirect("Login.jsp");

String UID;

UID=convertString(request.getParameter("TXTPWD"));

String UPWD;

UPWD=convertString(request.getParameter("ModiFyCpwd2")); try {

new sun.jdbc.odbc.JdbcOdbcDriver();

Connection

conn=java.sql.DriverManager.getConnection("jdbc:odbc:Driver={SQL

Server};server=.;Database=pubs","sa","");

Statement stmt=conn.createStatement();

ResultSet rs=stmt.executeQuery("Select PName From TB_PeoPleInfo where PClassId='" +UID+"'");

if(rs.next())

{

int num=stmt.executeUpdate("update TB_PeopleInfo set PPwd='" +UPWD+"' where PClassId='" +UID+"'");

if(num>0)

out.println("

修改密码成功,返回中。。。。。。

");

}

else

{

out.println("

content='2;url=MainAdmin.jsp'/>

修改密码失败,用户名不存在,返回中。。。。。。

");

}

stmt.close();

conn.close();

}

catch (Exception ex) {

response.sendRedirect("ConnectWorse.jsp");

}

通过读取修改密码的文本框的名称,与数据库连接,写入数据库,实现修改功能。

图5 普通用户个人成绩查询界面

选择“个人成绩”点击“查询成绩”按扭。是根据个人的学号查询出个人所有学科的成绩

图6 普通用户查询全班成绩的界面

try{

new sun.jdbc.odbc.JdbcOdbcDriver();

Connection

conn=java.sql.DriverManager.getConnection("jdbc:odbc:Driver={SQL

Server};server=.;Database=pubs","sa","");

Statement stmt=conn.createStatement();

ResultSet rst;

if(Select.equals("1"))

{

rst =stmt.executeQuery("select ClassName from TB_PeopleInfo where PClassId='" + ClassId +"'");

if(rst.next())

{

String CName;

CName=rst.getString("ClassName");

rst=null;

if(CName.equals("B040523"))

{

rst=stmt.executeQuery("select * from TB_" + CName + " where StuClassId='" +ClassId+"'");

if(rst.next())

{

out.println("

"); out.println("姓名:

");

out.println("学号:


相关文章

  • 目标管理(DOC9页)--目标管理的特征
  • 目标管理 [本讲重点] 目标管理的好处 目标管理的特征 目标管理的难点 目标管理的好处 目标统一,劲往一处使 公司的各个部门.各个员工不能"劲往一处使"是很可怕的.由于公司的总目标必须分解为不同部门.不同职务.不同人员的 ...

  • 信息部负责人应具备的.doc
  • 超市公司总部信息中心或电脑部的职能是什么? 1. 信息管理员:负责基础信息的管理维护: 2. 设备管理员:负责信息设备的采购,管理. 3. 系统维护员:系统日常维护主要是硬件故障和简单的软件问题. 4. 数据库管理员(可兼网管):负责数据库 ...

  • 餐饮管理公司薪酬管理体系设计方案(doc14)
  • 某餐饮管理公司薪酬管理体系设计方案 目 录 第一章 总则 ........................................................................................... ...

  • 明德小学三年级2班班级管理细则.doc
  • 小学三年级班级精细化管理细 为培养良好的班风.学风,形成尊师守纪.文明向上的班集体,创设优良 的竞争机制,按照<小学生守则> . <小学生日常行为规范>的规定,结合我班 实际情况,制定班级管理量化细则. 一.班干部名 ...

  • 假如我是服务对象.8doc
  • "假如我是服务对象"大讨论体会 -------假如我是一名学生 假如我是一名学生,我希望老师尽力做到真心实意关心爱护学生,体贴与理解学生.每一位学生都像一棵正在生长的小树,因为缺乏风雨的历练尚显脆弱,所以需要老师的悉心呵 ...

  • 测绘软件大全
  • 测绘软件大全-看看哪些实用 大全, 软件, 测绘 广州开思公司系列软件: SCS 2000G 多用途数字化测绘系统 SCS 2000i Lisp二次开发程序集 SCS2000 自由码包 SCS 2002G 多用途数字化测绘系统国标版 SCS ...

  • 麻醉学专业人才培养方案doc
  • 麻 醉 学 专 业 一.业务培养目标 培养具有良好职业素质与能力.掌握科学方法.获得终身学习能力,富有创新精神和具有较大发展潜力,毕业时能够在上级麻醉医师的指导与监督下,从事安全有效的临床麻醉.急救和复苏.危重症治疗及疼痛治疗等方面医疗实践 ...

  • 让绩效考核激发销售人员的竞争活力
  • http://www.360doc.com/UserHome/720362 目标明确.过程监控.全方位评估.结果反馈 任何一家公司的营销工作都是一项复杂而多变的工作,涉及公司的方方面面--各个部门.各个工作环节甚至领导团队.尤其面临激烈的市 ...

  • 教师普通话调查报告doc
  • 调查提纲 一.调查目的 新课程改革十分重视中小学教师使用普通话进行教学,明确提出:"普通话是教师的职业语言"."为了孩子,请讲普通话".目前,各级教育行政部门在推广使用普通话方面做了大量工作,取得了显 ...

© 2024 范文参考网 | 联系我们 webmaster# 12000.net.cn