目录
第1章 前言 2
1.1 设计目的 2
1.2设计的意义 2
第2章 编程环境基础知识 2
2.1 ASP入门知识 2
2.2 VBScript介绍 3
2.2.1 VBScript代码的基本格式 4
2.3 ASP内置对象 4
2.3.1 Request 5
2.3.2 Response 5
2.3.3 Session 6
2.3.4 Application 6
2.3.5 Server 7
2.4 ADO组件 7
2.4.1 Connection 8
2.4.2 Command 8
2.4.3 Recordset 8
2.5 DreamweaverMX的概述 11
第3章 系统分析 11
3.1需求分析 12
3.2 UML系统建模 13
3.2.1学生信息管理系统的用例分析 13
3.2.2学生信息管理系统的域名分析 14
3.2.3学生信息管理系统的设计 15
3.2.4学生信息管理的时序图: 15
3.2.5系统配置: 15
3.2.6数据库分析 17
第4章 界面设计与代码 21
4.1 界面设计 21
4.2 代码分析/实现 25
第5章 系统小结 41
测试结果: 41
结束语 41
致谢 41
参考文献 42
第1章 前言
随着校园规模的不断扩大,学生数目的急剧增多,学生的各种信息也成倍的增长。面对此现象,学校的日常工作中需要一套学生信息管理系统,以便对学生的各方面的信息进行管理,减少不必要的资源浪费,从而达到精简机构,提高学校办事效率。
1.1 设计目的
以前,学校的各种管理大都采用传统的管理方式,传统的管理方式繁琐。但在网络技术逐渐渗入社会生活各个层面的今天,传统的管理方式也面临着变革,而网络管理则是一个很重要的方向。随着计算机网络应用的迅猛发展,网络已经接入千家万户,特别是现在很多的高校和社会性的教育已经建立了多媒体计算机网络教室,基于Web技术的网络考试系统可以借助于遍布全球的Internet进行,网络学生信息管理既可以在本地进行,也可以在异地进行,大大拓展了管理的灵活性,从而利用现有的设备和技术等进行在线管理,不仅可以减轻教师和考生负担,提高效率,同时也提高了管理的质量。学生信息可以根据题库中的内容即时生成,而且采用大量标准化管理,从而使用计算机对信息进行编辑,大大提高管理效率;还可以直接把信息送到数据库中,进行统计、排序等操作。所以现在较好的管理方法为网络管理,学生信息内容放在服务器上,学生通过用户名、和口令进行登录,察看自己想获取的信息。因此,采用网络管理方式将是以后学校管理的发展的趋势。本系统分为两个部分,一是前台的网上信息模块,二是后台网上信息管理模块。
本人所学计算机网络技术专业,由于专业性所以学习了许多的计算机知识,其中就包括计算机语言的学习,比如:ASP、VB、C语言等,还有和开发网站必不可少的数据库Access等。因为有了这些知识,所以我开发了网上管理学生信息系统。
1.2设计的意义
可以方便广大学生及时、有利的进行不同地点的信息查找,同时也减轻了老师的负担,也提高管理的真正的目的,使之简单、合理的进行,让每个学生都能有一个良好的环境来对信息进行获得,是真正服务师生的系统。
第2章 编程环境基础知识
2.1 ASP入门知识
在ASP页面中添加服务器端脚本,服务器端脚本是一系列指令,用于向Web服务器连续发出命令。若要在ASP页面中插入服务器端脚本,首先要设置所使用的脚本语言,有以下三种设置方法。
使用@ LANGUAGE指令<%@ LANGUAGE = ScriptingLanguage %>其中ScriptingLanguage参数是一个字符串,指定用于解释脚本命令的脚本引擎,取值可以是“VBScript”或“java script”,默认值为VBScript。
使用<SCRIPT>标记的相关属性
若要在文档中包含服务器端脚本,也可以使用SCRIPT标记的LANGUAGE属性来设置所用的脚本语言,并使用RUNAT属性指明脚本是在服务器端运行的。例如: <SCRIPT LANGUAGE = "VBScript" RUNAT = "Server"> … </SCRIPT>. 使用Internet信息服务管理单元
在Windows 2000中,可以使用Internet信息服务管理单元来为安装在Web服务器上的所有ASP动态网页设置默认的脚本语言。操作步骤如下: (1) 选择“开始→程序→管理工具→Internet服务管理器”命令。 (2) 在Internet信息服务管理单元窗口中,选择Web站点或应用程序的 起始点目录。 (3) 从“操作”菜单中选择“属性”命令,以打开目录的“ASP属性”对话框。 (4) 单击“主目录”、“虚拟目录”或“目录”选项卡。 (5) 单击“配置”按钮,单击“应用程序选项”选项卡,然后在“默认ASP语言” 框中输入要用的主要脚本语言。
2.2 VBScript介绍
脚本(Script)就是插入在HTML文件中的短程序,通常有两个脚本语言:java script和VBScript(Microsoft Visual Basic Scripting Edition)。java script基于SUN公司的JAVA,而VBScript是基于Microsoft公司的Visual Basic,是以Visual Basic语言为基础提供编程功能,是Visual Basic语言的一个子集,是IIS的缺省源程序语言。
VBScript可以在HTML网页上操作、控制、处理对象。在最初的设计中,VBScript是通过编写事件驱动的脚本来扩大客户端HTML功能,编写客户端脚本最大的优点就是由浏览器解析执行,不需要增大服务器的负担。例如,我们可以在客户端进行输入数据有效性验证,防止浏览器将无效数据发送给服务器,这样,一方面可以减轻服务器的负担,防止服务器陷入处理大量无意义数据的工作中,同样,也可以减轻网络的阻塞;另一方面,也能够使客户减少等待时间,在验证的时候,浏览器能够立即做出响应,而如果在服务器上进行验证,那用户则不得不在浏览器前等待,服务器的处理和网络的传输都需要耗费一定的时间。
随着ASP技术的出现,VBScript将它的功能扩展到服务器上,VBScript开发的脚本可以在服务器上解析执行。在服务器端脚本开发的过程中,使用VBScript则没有客户端脚本开发时的局限性,当客户请求页面时,页面将在服务器上执行,然后再反馈给浏览器,浏览器所获得的只是标准的HTML文件,这样就可以不受浏览器功能的限制。
VBScript和HTML 页面完美地结合在一起,运用VBScript可以控制HTML页面,并对页面中某些事件做出响应,例如,前面所述的可以在页面的表单提交时进行数据有效性验证。VBScript 还提供了许多对象,运用这些对象,可以方便地进行脚本的编写,实现一些其他语言所无法实现的功能。
2.2.1 VBScript代码的基本格式
一般的ASP程序都是将VBScript代码放在服务器端执行的,此时有两种方法:
方法一:<%VBScript 代码%>
方法二:<Script language=” VBScript” Runat=”Server”>
VBScript 代码
</Script >
有时为了需要,可能也会将VBScript代码放在客户端执行,此时的语法如下:
<Script language=” VBScript” >
VBScript 代码
</Script >
这样用和ASP就没有什么关系了。
2.3 ASP内置对象
ASP 内含于PWS和 IIS 之中 , 我们通过 ASP可以结合 HTML 网页、 ASP 指令和 ActiveX 组件建立动态、交互高效的 Web服务器应用程序。有了 ASP 就不必担心客户端浏览器是否能运行你所编写的代码,因为所有的程序都将在服务器端执行,包括所有嵌在普通 HTML 中的脚本程序,当程序执行完毕后,服务器仅将执行的结果返回给客户浏览器,这样就减轻了客户端浏览器的负担。
与一般程序不同,ASP程序无须编译, 程序控制部分使用 VBScript 、java script 等脚本语言来设计的,当执行 ASP 程序时,脚本程序将一整套命令发送给脚本解释器 ( 即脚本引擎 ) ,由脚本解释器进行翻译并将其转换成服务器所能执行的命令。当然,同其他编程语言一样, ASP 程序的编写也遵循一定的规则,如果你想使用你所喜爱的脚本语言编写 ASP 程序,那么你的服务器上必须要有能解释这种脚本语言的脚本解释器。当你安装 ASP 时,系统提供了两种脚本语言: VBSrcipt 和 java script ,而 VBscript 则被作为系统默认的脚本语言。
ASP之所以简单实用,主要是因为它提供了功能强大的内部对象和内部组件。其中常用的五大内部对象包括Request、Response、Session、Application、Server,
2.3.1 Request
Request对象用于接收客户端在请求一个页面或传送一个表单时提供的所有信息,包括能够标识浏览器和用户的HTTP变量、Cookie信息以及附在URL后面的值(查询字符串或表单数据)
Request的功能是:从客户端获得数据信息。
Request对象共有五种获取方法,分别是QueryString、 Form、 Cookies、 ServerVariables 、ClientCertificate。
语法:
Request[.数据集合∣属性∣.方法] (变量或字符串)
例如:
<%
Request.Form(“user_name”)
Request.QueryString(“user_name”)
%>
2.3.2 Response
ASP的内部对象Response用来控制送出给客户端的信息,Response对象可以使用的方法:
方法 说明
Write Response对象中最常用的方法,用来送出信息给客户端
Redirect 引导客户端浏览器至新的Web页面,前面已经做过详细介绍
BinaryWrite 输出二进制信息
Clear
清除在缓冲区的所有HTML页面
语法: Response.Clear
此时,Response对象的 Buffer属性必须被设置为 True,否则会报错
End 终止处理ASP程序,并返回当时的状况
语法:Response.End
Flush 立刻送出缓冲区的HTML数据
语法:Response.Flush
此时,Response对象的 Buffer属性必须被设置为 True,否则会报错
2.3.3 Session
在上网时,利用超链接,可以很方便地从一个页面到另一个页面。但是这样也带来一个问题,怎样记载客户的信息呢?比如,在首页客户输入了自己的用户名和密码,在其他页面还需要使用该用户名,我们已经学习了两种方法。
方法一:利用Request对象的QueryString方法一页一页传递过去。
方法二:利用 Cookies保存用户名。
还有一种简洁的方法,就是利用Session对象。
Session对象用来记载特定客户的信息。即使该客户从一个页面跳转到另一个页面,该Session信息仍然存在,客户在该网站的任何一个页面都可以存取Session信息。特别强调的是:Session信息是对一个客户的,不同客户的信息用不同的Session对象记载。
2.3.4 Application
Session对象可以记载特定客户的信息,与此相反的是,Application对象可以记载所有客户信息。不同的客户必须访问不同的Session对象,但可以访问公共的Application对象。(在Web站点中创建一个基于ASP的应用程序之后,便可以通过Application对象在该应用程序的所有用户之间共享信息)
Application对象是让所有客户一起使用的对象,通过该对象,所有客户都可以存取同一个Application对象。
Application对象的方法:
(1)Lock–––锁定Application对象, 禁止其他客户修改Application对象的属性;
(2)Unlock–––解除锁定, 允许其他客户修改Application对象的属性;
(3) Contents.Remove–––Application对象的Contents集合中删除一个项目;
(4) Contents.RemoveAll –––Application对象的Contents集合中删除所有项目;
(5) Contents –––含所有通过脚本命令添加到应用程序中的项目;
(6) StaticObjects ––– 含通过OBJECT标记创建的并给定了应用程序作用域的对象
2.3.5 Server
Server对象是专为处理服务器上的特定任务而设计的,特别是与服务器的环境和处理活动有关的任务。它提供了一些非常有用的属性和方法,主要用来创建COM对象和Scripting式、管理其他网页的执行.
语法为:
Server.方法︱属性(变量或字符串︱=整数)
Server对象的属性如表2-3-5所示。
属性 说明
ScriptTimeout 规定脚本文件最长执行时间,超过时间就停止执行脚本,其默认值为90秒
Server对象的方法如表2-3-6所示。
方法 说明
CreatObject Server对象中最重要的方法,用于创建已注册到服务器的ActiveX组件、应用程序或脚本对象
HTMLEncode 将字符串转换成HTML格式输出
URLEncode 将字符串转换成URL编码输出
MapPath 将路径转化为物理路径
Execute 停止执行当前网页,转到新的网页执行,执行完毕后返回原网页,继续执行Execute方法后面的语句
Transfer 停止执行当前网页,转到新的网页执行。和Execute不同的是,执行完毕后不返回原网页,而是停止执行过程
2.4 ADO组件
ASP用Database Access(数据库访问)组件与数据库进行连接,Database Access(数据库访问)组件通过ActiveX Data Objects(ADO)访问存储在数据库或其他表格化数据结构中的信息。
ADO是ActiveX Data Object的缩写,称为ActiveX数据对象,是为OLE DB设计的应用编程接口,使用ADO对象实现在ASP页面中对数据库的访问。在ASP页面中,OLE DB及ODBC无法直接使用,但是ADO却是一种可以在ASP中使用的标准对象,通过ADO就可以调用OLE DB提供者或者ODBC驱动程序来访问数据库。
ADO的主要对象有3个。分别为Connection、Command和Recordset,3个对象的主要功能如下表2-4-1所示:
表2-4-1 ADO对象及主要功能
对象 说明
Connection 用来建立与数据库的连接
Command 用来对数据库执行命令,如查询、填加、删除、修改记录等命令
Recordset 用来得到从数据库返回的记录集
2.4.1 Connection
Connection对象又称连接对象,主要用来建立与数据库的连接。只有建立连接后,才能利用Command和Recordset对象来对数据库进行各种操作。
使用 Connection对象之前,首先要建立该对象。在ADO中建立对象一般需要利用Server对象的CreatObject方法。语法如下:
Set Connection 对象=Server. CreatObject(“ADODB. Connection”)
建立对象后,就可以利用Connection对的Open方法来打开数据库并与之建立连接。
语法如下:
Connection 对象.Open “参数1=参数1的值;参数2=参数2的值;…”
2.4.2 Command
Command对象又称命令对象,是对数据库执行命令的对象,它可以执行对数据库查询、添加、删除、修改记录操作。
Command对象是介于Connection对象和Recordset对象之间的一个对象,它主要通过SQL指令,对数据库提出操作请求,把得到的结果返给Recordset对象。Command对象依赖Connection对象,因为Command对象必须经过一个已经建立的Connection对象才能发出SQL指令。
建立Command对象,语法如下:
Set Command 对象=Server. CreatObject(“ADODB. Command”)
2.4.3 Recordset
Recordset对象又称记录集对象,是最主要的对象。当用Command对象或Connection对象执行查询命令后,就会得到一个记录集对象,该记录集包含满足条件的所有记录。
Recordset对象表示的是来自基本表或命令执行结果的记录全集。使用Recordset对象可以操作来自提供程序的数据,通过该对象几乎可以对所有数据进行操作。
所有Recordset对象均使用记录(行)和字段(列)进行构造。在任何情况下,该对象所指的当前记录均为集合内的单个记录。如果记录集非空,打开记录集后,记录指针将指向第一条记录。记录集有两个特殊的位置,Bof和Eof,Bof表示记录集的开头,位于第一条记录之前,Eof表示记录集的结尾,位于最后一条记录之后。可以通过移动记录指针(比如rs.MoveNext,下一条)在记录集的各条记录中漫游,就可以利用ASP语句显示该记录的内容。
建立Recordset对象,主要是利用Connection对象或Command对象的Execute方法,其语法如下:
Set Recordset 对象=Server. CreatObject(“ADODB. Recordset”)
然后,;利用Open方法打开一个数据库,语法是:Recordset对象. Open[Surce],[ActiveConnection],[CursorType],[LockType],[Options]
1. Recordset对象属性
(1)CursorType属性
设置或返回当前记录集所使用的指针类型。这个属性的取值如下:
1) adOpenForwardOnly 0 向下指针,为系统默认值,仅提供向下指针。适用于仅需要向前移动记录的场合,以提高系统的响应速度。直接用Cornmand或Connection对象的Execute方法创建的游标就属于该类游标
2) adOpenKeyset 1 键盘指针,在记录集中指针可以向上和向下移动,其他用户的修改和删除是可见的,但添加的数据是不可见的。
adOpenDynamic 2 动态指针,在记录集中指针可以向上和向下移动,所有的修改都会立即在其他客户端显示。
adOpenStatic 3 静态指针,在记录集中指针可以向上和向下移动,所有的修改都不会立即在其他客户端显示。
rs.CursorType= adOpenKeyset
<%= rs.CursorType %>
(2) CursorLocation属性
该属性设置使用的指针类型,也决定Recordset对象是否可以排序。它的取值有两个,
1) adUseServer 2 使用服务器端的指针,默认设置。若设置为该值,则Recordset对象将不能使用Sort属性进行排序
adUseClient 3 使用客户端的指针。若设置为该值,则Recordset对象将能使用Sort属性进行排序
db.CursorLocation= adUseClient
(3) Sort属性
该属性指定数据集将按哪些字段进行升序或降序排序。可以设置或返回一个用逗号分割的字段名排序字符串,其中的每个名称是Recordset中Field
rs.Sort=”排序字段名表”
<% = rs.Sort %>
(4) Source
该属性用于设置或返回数据库查询信息,可以是Command对象名、SQL语句或表名等。语法为:
rs.Source=数据库查询信息
<%= rs.Source %>
(5) ActiveConnection
该属性用于设置或返回数据库连接信息,可以是Connection对象名或包含数据库连接信息的字符串。语法为:
rs.ActiveConnection=数据库连接信息
(6)Bof
该属性用于判断当前记录指针是否在记录集的开头
(7)Eof
该属性用于判断当前记录指针是否在记录集的结尾
(8)RecordCount属性
该属性用于返回记录集中的记录总数
<% rs.RecordCount %>
注意:使用该属性必须设置指针类型CursorType为1(键盘指针)或3(静态指针),否则返回错误。
(9)PageSize属性
该属性用于设置数据分页显示时每一页的记录数。默认值为10。语法为:
rs.PapeSize=整数
(10)PageCount属性
该属性用于返回数据分页显示时数据页的总数。语法为:rs.PageCount
如果Recordset对象不支持该属性,则返回值为-1,表明PageCount无法确定。
2.Recordset对象
(1)Open
该方法用来打开记录集。语法为:
Recordset对象. Open[Source],[ActiveConnection],[CursorType],[LockType],[Options]
(2)Close方法用法
关闭Recordset对象。
rs.close
(3)AddNew方法
用于向数据库中添加记录。添加方法为:
方法一、建立字段名数组和字段值数组,然后用AddNew方法添加记录。
方法二、在数据库中添加空白记录,然后设置字段对象的值
(4)Delete方法
删除当前记录
rs.delete
rs.update
(5)Update方法
更新数据库数据,即对所做的修改保存到数据库。
(6)CancelUpdate方法
取消对数据库数据的更新,即从缓冲区中除掉数据,取消更新。
2.5 DreamweaverMX的概述
DreamweaverMX是Macromedia公司最新推出的网爷制作“三剑客(DreamweaverMX、FlashMX、FireworksMX)之一,是设计并且管理网络站点和网页的专业的HTML编辑器。
DreamweaverMX是一个所见即所得的网页编辑器,集功能强劲的可视化设计、应用开发环境以及代码编辑一身的工具,支持最新的DHTML和CSS标准。它采用了多种先进技术,能够快速高效地创建极具表现力和动感效果的网页,使网页创作过程变得十分简单。它用于对Web站点、Web应用程序进行设计、编码和开发,使开发人员和网页设计师能够快捷地创建代码规范的应用程序,开发环境精简而高效。开发人员能够运用它与他们的服务器技术构建功能强大的网络应用程序衔接到用户的数据、网络服务体系上。
DreamweaverMX提供基于强大的规范管理来确保高质量的设计,设计环境提供CSS能迅速高效地开发代码简洁、专业规范的站点。通过手工编码和使用可视化对象和行为来快速生成动态的、数据库驱动的WEB应用程序。
DreamweaverMX用于ColdFusion、ASP、ASP.NET、JSP和PHP的服务器代码库能够使用所有前沿的服务器端技术,以可视方式创建动态WEB站点,使用一种开发工具即可与多种站点和后端技术集成。
DreamweaverMX包含并扩展了Macromedia UltraDev中的所有功能,以帮助使用ASP、ASP.NET、ColdFusion标记语言(CFML)、JSP和PHP等服务器语言来生成由动态数据库支持的WEB应用程序。
DreamweaverMX也是开放式和可扩展的,赋予使用者最大的自由度和灵活性来选择今天或将来最适合自己工作的技术。
第3章 系统分析
学生是一个庞大的群体,相关的信息比较多,人工管理起来较复杂。所以各种各样的学生信息管理系统相应而生,这里运用ADO数据库对象访问模型来 建立一个简单的学生信息管理系统。要开发的学生信息系统主界面如下图:
从界面可以看到,该学生信息管理系统主要提供包括数据添加、浏览修改和删除、查询、打印报表、统计和用户管理5个模块。
数据添加:用于添加学生的一些基本信息。这里包括学籍信息、课程信息和成绩信息,从而为进行学生信息基本操作提供了数据基础。
浏览修改和删除:可以对学生的信息首先浏览,然后可以对信息进行修改、删除操作。
查询:提供简单查询和复杂查询。
打印报表:该系统中一个很重要的部分。这里分别对学籍信息、成绩信息和不及格学生的信息生成了相应的报表,并且可以通过相应的功能来打印报表。
统计和用户管理:对访问该网站的数量进行统计,同时这个模块里面还包含了用户管理。
3.1需求分析
由于业务的需要和保密性,以及便于管理,系统用户应该具有不同的等级,即不同的权限。
软件能够对学生的学籍信息进行记录,能够非常方便地浏览、添加、修改和查询学生的学籍信息。能够通过软件及时了解学生的基本的情况,同时能提供学籍信息的统计情况和学籍信息的报表,并应该具有打印的功能,因为这是学生信息管理系统中非常核心的部分。
软件能够对课程的基本信息进行管理,有一个非常方便的添加界面,并且能够对课程信息进行修改、查询和删除操作。
成绩管理是学生信息管理系统中一个很重要的部分,为学校制订相应的教学计划提供了一定的帮助,同时也方便教师及时掌握学生的学习情况。首先软件应该有一个很好的成绩添加界面,并且能够对课程信息进行修改、查询和删除操作。软件能够提供简单的统计功能,统计补考学生的情况。软件能够分别为学生成绩和补考学生制订报表,并且有相应的打印功能。
系统有数据库维护功能。
系统运行在windows平台上。系统还应有一个较好的图形用户界面。
系统应该有很好的可扩展性。
该系统开发宗旨以及总体任务就是要实现学生信息管理的自动化、规范化和系统化。
学生信息管理系统的用例包括:
数据添加
浏览、修改和删除
查询
打印报表
统计
用户管理
数据添加用例包括对学籍信息、课程信息和成绩信息的录入。学生所有学籍信息的基本资料输入,在这里通过一个“添加信息”窗口来实现,并通过该窗口链接到课程信息和成绩信息的录入窗口。
浏览、修改和删除用例同样需要实现对学籍信息、课程信息和成绩信息的浏览、修改的删除操作,这都在同一个窗口进行。
查询用例在一个窗口中通过关键字或者常用的查询方式来实现查询功能。
打印报表用例是很重要的一个用例,它提供给用户生成报表和打印的功能,能够很方便地将学生成绩和补考学生名单打印出来。
统计用例可以统计补考学生的名单,可以按照不同的方式进行统计,如按班级来统计,按学号来统计。
用户管理用例实现对用户分级管理,将用户分为超级管理员和一般管理员。超级管理员具有一般管理员所有的权限。
3.2 UML系统建模
3.2.1学生信息管理系统的用例分析
用例图如下:
系统管理员:除用户管理外所有的用例。
超级管理员:所有的用例。
3.2.2学生信息管理系统的域名分析
学生信息管理系统中的域主要包括学生(student)、课程(course)、成绩(achievement)。可以在类图中将上面这些域以及它们之间的关系表示出来,如下图:
学生信息
学生ID
添加
删除
修改
查询
课程信息
课程ID
添加
删除
修改
查询
0..n 0..n
成绩信息
成绩ID
添加
删除
修改
查询
3.2.3学生信息管理系统的设计
在设计阶段,要先设计类的状态图。不是所有的类都有状态图。在该系统中,有状态图的类有学生,学生状态图,如下图所示:
3.2.4学生信息管理的时序图:
3.2.5系统配置:
系统配置要根据用户的实际情况设计,主要依据就是系统的吞吐量和系统对稳定性的要求。
1.软件配置:
软件配置主要包括数据库的选择和系统的选择。学生信息管理系统的软件配置要根据用户对系统稳定性要求、系统的容量以及用户的维护水平来确定。
数据库选择
可以根据数据量的大小选择不同的数据库,如下所示:
用户 数据量
(记录数) 稳定性
要求 维护
水平 备选
数据库
乡村、社区小学(10~30人) 50~5000 低 差 Access
foxpro
中心小学、城镇中学(30~100人) 5000~50000 中 一般 Access
Sqlserver
中学、中等专科学校(100~1000人) 50000~200000 较高 较好 Access
Sqlserver
大专学院(1000人以上) 200000以上 高 好 Access
oracle
(2)操作系统选择
可以根据用户量的大小选择不同的操作系统。在这里建议使用Windows2000或者Windows XP操作系统。
用户 每秒数据库并发数据访问的记录数 稳定性要求 维护
水平 备选
操作系统
乡村、社区小学(10~30人) 50~500 中 一般 Windows NT、
Windows2000、
Windows2000Server
中心小学、城镇中学(30~100人) 500~2000 较高 较好 Windows NT、
Windows2000、Windows2000 Server、
Linux、
UNIX
中学、中等专科学校(100~1000人) 500~2000 较高 较好 UNIX
大专学院(1000人以上) 2000以上 高 好 UNIX
2.硬件配置:
学生信息管理系统的硬件配置要根据用户对系统的稳定性要求、系统的容量、系统的吞吐量以及用户的维护水平来确定。可以根据数据量和吞吐量的大小来选择不同的硬件,选择如下:
用户 每秒数据库并发数据访问的记录数 稳定性要求 维护
水平 备选
服务器
乡村、社区小学(10~30人) 50~500 中 一般 Pentiam Ⅲ/256MB/20GB个人计算机
中心小学、城镇中学(30~100人) 500~2000 中 一般 XEON双CPU/1GB/RAID53×72GB
中学、中等专科学校(100~1000人) 500~2000 较高 较好 小型计算机/双机热备或者XEON 4CPU/4GB/RAID56×72GB
大专学院(1000人以上) 2000以上 高 好 小型计算机/双机热备或者XEON 4CPU/4GB/RAID56×72GB
3.网络配置:
该系统需要有能够支持TCP/IP相关协议的小型局域网。根据用户情况选择不同的网络配置。如下所示:
用户 每秒数据库并发数据访问的记录数 稳定性要求 维护
水平 备选
网络方案
乡村、社区小学(10~30人) 50~500 中 一般 单机模式
中心小学、城镇中学(30~100人) 500~2000 中 一般 百兆模式
中学、中等专科学校(100~1000人) 500~2000 较高 较好 百兆模式
大专学院(1000人以上) 2000以上 高 好 千兆模式
3.2.6数据库分析
(1)在该系统中,所存在的实体有学生信息实体、课程信息实体、成绩信息实体。
学生信息管理系统的实体关系简图如下:
学生信息
课程信息
0,n 0,n
0,1 0,1
成绩信息
学生信息管理系统中:课程包括(课程ID、课程名、代课老师),学生包括(学生ID、姓名、性别、系名、班级、家庭住址、联系电话),成绩包括(学生课程ID、成绩)
(2)创建数据库
图2.1管理员数据库
图2.2课程数据库
图2.3留言版数据库
图2.4学生信息数据库
图2.5学生注册信息数据库
图2.6成绩信息数据库
(3)网站内容图示:
图3.1网站内容
图3.2网站目录设计
图3.3链接设计和导航类型
第4章 界面设计与代码
4.1 界面设计
经过了以上的分析、建模的过程,已经完成了数据库的后台工作,完成了初期的工作目标。下面就要完成人机交互的界面,一个较好的界面不仅能够方便系统的使用者,还能使各个模块间的划分明确,结构更趋于完善。所以一个好的界面的设计工作在进行系统开发的时候必不可少,十分重要。
学生信息管理系统主窗体
登陆模块界面设计
管理员登陆窗口 学生登陆窗口
用户重新登陆窗口
(3)数据添加模块界面设计
图5 学生信息添加窗口 图6 课程信息添加窗口
图7 成绩信息添加窗口
数据的浏览、修改、删除模块界面设计
图8 学生信息浏览、修改、删除模块界面
图9 学生信息浏览、修改、删除模块界面
图10 成绩信息浏览、修改、删除模块界面
查询模块的界面设计
图11 查找窗口
打印报表模块界面
统计与用户管理的界面设计
4.2 代码分析/实现
连接数据库的代码:
<%
dim db,strcon
strcon="driver={microsoft access driver (*.mdb)};dbq="&server.MapPath("data.mdb")
set db=server.CreateObject("ADODB.Connection")
db.open strcon
%>
管理员登陆模块代码:
if trim(request("yhm"))<>"" and trim(request("mm"))<>"" then
dim rs,strsql ‘接收的数据不为空,执行以下
strsql = "select * from admin where yhm='"&request("yhm")& "' and mm='"& request("mm")& "'" ‘与数据库中信息校验
set rs =conn.execute(strsql)
if not rs.bof and not rs.eof then
session("gly_id")=rs("gly_id")
response.Red