资源描述
本科毕业设计(实习)论文
Visual Basic网络教学环境
摘 要
随着互联网的进一步普及,基于Internet的各种应用得到飞速发展,Web Application 已逐渐成为当前开发的热点。本文简要介绍了最具发展前途的JSP技术。JSP数据库连接的四种方法;JSP支持组件模型,集成JavaBeans的应用;JSP中的中文编码问题分析及解决;JSP的九大对象,session变量。同时,本文以讨论区、留言版等为例具体介绍了JSP在数据库及九大对象方面的应用。
近年来,随着知识经济时代的到来,如何将现有的科技信息更好的为广大的用户服务已成为当务之急。在学校之中,如何让学生更好的利用网络学习呢?为此,我们开发了此vb网络教程,以供大家更方便的学习vb语言。
在此次开发过程中,我设计的是VB实验部分,其基本内容为:
实验首页包括导航条、菜单栏、主页面,以浅淡的颜色为背景色。导航条提供与本系统首页及其它模块的链接,菜单栏由实验首页、实验内容、教师窗口、收交作业、聊天室、讨论区、留言版组成,它们是VB实验建设的七大组成部分,本文将介绍除聊天室、实验内容之外的五大部分。其中,实验首页采用了访客计数器(走马灯式),教师窗口为教师查看学生提交作业情况、下载作业的窗口(还包含好书投票区),收交作业为学生上传作业及其信息的窗口,讨论区为张贴文章提出问题及发表意见的窗口,留言版为向老师请教问题的窗口。
目录
1. VB网络教学环境系统概述 …………………………………………………………………………5
1.1 系统简述 ……………………………………………………………………………………………5
1.2 需求分析 ……………………………………………………………………………………………5
1.3 系统开发的可行性分析 ……………………………………………………………………………5
2. JSP技术 ………………………………………………………………………………………………5
2.1 JSP简介 ……………………………………………………………………………………………5
2.2 jsp与asp的比较特点 ……………………………………………………………………………5
2.3 Resin环境下的JSP配置 …………………………………………………………………………6
2.3.1 开发Jsp网页的单机仿真环境 ……………………………………………………………6
2.3.2 JSP引擎的安装与架设………………………………………………………………………7
2.4 Jsp的九大内部对象…………………………………………………………………………………7
2.5 Jsp的中文编码问题分析及解决……………………………………………………………………8
2.6 Jsp中JavaBeans……………………………………………………………………………………8
2.7 JSP与数据库链接 …………………………………………………………………………………8
2.7.1 JDBC驱动程序………………………………………………………………………………8
2.7.2 建立ODBC数据来源 ………………………………………………………………………9
2.7.3 数据库链接的建立与关闭…………………………………………………………………9
3.系统分析………………………………………………………………………………………………9
3.1 整体分析……………………………………………………………………………………………9
3.2 访客计数器…………………………………………………………………………………………10
3.2.1 计数器机制…………………………………………………………………………………11
3.2.2 关键技术……………………………………………………………………………………11
3.2.3走马灯的建立………………………………………………………………………………11
3.3 留言版………………………………………………………………………………………………11
3.3.1 留言版的机制………………………………………………………………………………11
3.3.2 留言输入……………………………………………………………………………………12
3.3.3 保存留言……………………………………………………………………………………12
3.3.4 查看所有留言………………………………………………………………………………12
3.4 教师窗口………………………………………………………………………………………12
3.4.1教师登录……………………………………………………………………………………12
3.4.2 好书投票……………………………………………………………………………………13
3.4.3 实验提交情况查询…………………………………………………………………………15
3.4.4 实验下载区…………………………………………………………………………………16
3.5 收交作业……………………………………………………………………………………………17
3.5.1 作业上传……………………………………………………………………………………17
3.5.2 上传工具简介………………………………………………………………………………17
3.6 讨论区………………………………………………………………………………………………18
4.数据库设计……………………………………………………………………………………………18
5.应注意问题……………………………………………………………………………………………20
5.1 Java与JavaScript区别 …………………………………………………………………………20
5.2 网页重导……………………………………………………………………………………………20
结论………………………………………………………………………………………………………20
致谢………………………………………………………………………………………………………21
参考文献…………………………………………………………………………………………………21
1.VB网络教学环境系统概述
1.1系统简述
研究、开发了具有通用性和框架性的Visual Basic 教学软件,在网上实现该课程的各教学环节。包括教学、自学、检索、实验、辅导、收交作业、考试、课程设计等八部分,以浏览器为架构,形成了一个完整的教学体系,真正能适用该课程各教学环节的实际操作。
在此系统中我完成的功能是:实验、辅导、收交作业三部分。其中,每一模块中都有提示,操作起来比较简单方便,有较强的实用性。另外,还进行了大量的容错处理。
1.2 需求分析
随着网络技术的飞速发展,网络在高等院校已经十分普及,它给广大学生带来了极大的便利。为了使学生们更便利的进行学习,我们开发“VB网络教学系统”是十分必要的,它有助于增加大家对VB编程的兴趣,提高学习效率,节约时间。同时,它也有利于促进网络教学的发展。
1.3系统开发的可行性分析
此系统开发确定的语言是JSP(Java Server Page) 。JSP采用的是成熟的C/S技术,能够实现动态网页的处理,满足Visual Basic网络教学环境的要求。此外,JSP对数据库操作有较快速度,因此选用JSP来实现此教学环境是可行的。
2. JSP技术
2.1 JSP简介
由Sun公司和Web服务及开发工具供应商等多家公司推出的Java Server Pages TM技术(以下简称JSP)正成为Web应用程序开发的一个新方向。JSP继承了Sun公司的Java语言的平台无关性、安全、可移植性、高性能、可扩充等优点。比如:JSP应用程序在不需要更改代码的情况下可以在Unix,Windows等不同操作系统平台上流畅地运行,而且,基于虚拟机JVM(Java Virtual Machin)及其Cache机制,大大提高了Web的浏览速度。JSP还引用了"一次性编写,在任意地方运行,在任意地方可重用"的JavaBean技术,实现了面向编程(OOP即Object Oriented Programming);通过JDBC技术实现对数据库的操作。在开发实践中对JSP与ASP进行了比较,发现JSP在安全性,执行效率,开发效率等方面都优于MicroSoft基于NT+IIS的ASP。
2.2 jsp与asp的比较特点
1、 JSP的效率和安全性更高
ASP以源码形式存放,以解释方式运行,每次ASP网页调用都需要对源码进行解释,运行效率不高。另外,IIS的漏洞使得ASP开发的网站安全性较差,容易造成源程序的泄漏。JSP在执行以前先被编译成字节码 (byte code),字节码由Java虚拟机(Java Virtual Machine)解释执行,比源码解释的效率高;服务器上还有字节码的Cache机制,能提高字节码的访问效率。第一次调用JSP网页可能稍慢,因为它被编译成Cache,以后就快得多了。同时,JSP源程序不大可能被下载,特别是JavaBean程序完全可以放到不对外的目录中。
2、 JSP的组件 (Component) 方式更方便
ASP通过COM来扩充复杂的功能,如文件上载、发送email以及将业务处理或者复杂计算分离出来成为独立可重复利用的模块。JSP通过JavaBean实现了同样的功能扩充。
在开发方面,COM的开发远比JavaBean复杂和繁琐,学会ASP不难,但学会开发COM可不简单。而JavaBean就简单多了。
在维护方面,COM必须在服务器上注册,如果修改了COM程序,就必须重新注册,甚至必须关机和重新启动。JavaBean则不需要注册,放在CLASSPATH包含的目录中就行了。
另外JavaBean是完全的OOP,可以针对不同的业务处理功能方便地建立一整套可重复利用的对象库,例如用户权限控制、email自动回复等等。
3、 JSP的适应平台更广
ASP目前仅适用于NT和IIS。虽然Unix下有ChiliSoft的插件来支持ASP,但是ASP本身的功能有限,必须通过ASP+COM的组合来扩充,Unix下的COM实现起来非常困难。
JSP则不同,几乎所有平台都支持Java,JSP+JavaBean可以在所有平台下通行无阻。NT下IIS通过一个插件,例如JRUN就能支持JSP。著名的Web服务器Apache已经能够支持JSP。由于Apache广泛应用在NT、Unix和Linux上,因此JSP有更广泛的运行平台。
从一个平台移植到另外一个平台,JSP和JavaBean甚至不用重新编译,因为Java字节码都是标准的与平台无关的。
2.3 Resin环境下的JSP配置
2.3.1 开发Jsp网页的单机仿真环境
开发Jsp网页时,必须拥有网络环境才行,我们可以用一台计算机仿真出网络环境来。这样一来,不但节省硬件的成本,开发者更不需要在两台计算机间来回奔波。
单机仿真环境的建构,主要是在一台计算机上同时安装浏览器与Web服务器,这样一台计算机便可同时扮演服务端与客户端的角色。
首先,计算机应连接网络,是指计算机上装有网络卡,并以网络线与其它计算机连接,不论所链接的是局域网或者Internet均可。在这种情况下,只要在计算机上安装Web服务器,以及JSP引擎,计算机便可以同时做为客户端与服务器端。
如果计算机没有连接网络,必须先在计算机上安装TCP/IP协议。请注意,安装TCP/IP协议,并不需要网卡。然后,再完成Web服务器与JSP引擎,便可完成整个开发环境的建立。(TCP/IP安装略)
2.3.2 JSP引擎的安装与架设
2.3.2.1 JDK的下载与安装
在安装JSP引擎前,必须先完成Java 2 SDK的安装,版本为1.4版,1.3版亦可。在安装前,须从下面的网址中下载。
下载完后,安装即可。
2.3.2.2 Resin 的下载、安装与执行
方便的Resin服务器:
完成Java 2 SDK的安装后,接下来,便安装Web服务器与JSP引擎,目前较为常用的是Tomcat服务器与Resin服务器。其中Tomcat必须配合Web服务器,才能运作。而由Caucho公司所开发的Resin服务器,除了可以与各常见的Web服务器配合执行外,还可以单独执行,这对JSP网页的开发来说相当方便。此外,Resin服务器还有一个更大的优点,就是所提供的线上说明文件多。
下载地址:
下载后,解压即可。打开文件夹,在bin目录下,执行httpd文件,Resin服务器打开。
2.4 Jsp的九大内部对象
Jsp共有以下9种基本内置组件(可与ASP的6种内部组件相对应):
request 用户端请求,此请求会包含来自GET/POST请求的参数
response 网页传回用户端的回应
pageContext 网页的属性是在这里管理
session 与请求有关的会话期
application servlet正在执行的内容
out 用来传送回应的输出
config servlet的构架部件
page JSP网页本身
exception 针对错误网页,未捕捉的例外
session对象
会话状态维持是 Web 应用开发者必须面对的问题。有多种方法可以用来解决这个问题,如使用 Cookies 、隐藏的表单输入域,或直接将状态信息附加到 URL 中。Java Servlet 提供了一个在多个请求之间持续有效的会话对象,该对象允许用户存储和提取会话状态信息。JSP也同样支持Servlet中的这个概念。
在 Sun 的 JSP 指南中可以看到许多有关隐含对象的说明(隐含的含义是,这些对象可以直接引用,不需要显式地声明,也不需要专门的代码创建其实例)。例如 request 对象,它是 HttpServletRequest 的一个子类。该对象包含了所有有关当前浏览器请求的信息,包括 Cookies , HTML 表单变量等等。 session 对象也是这样一个隐含对象。这个对象在第一个 JSP 页面被装载时自动创建,并被关联到 request 对象上。与 ASP 中的会话对象相似, JSP 中的 session 对象对于那些希望通过多个页面完成一个事务的应用是非常有用的。
2.5 Jsp的中文编码问题分析及解决
在基于 Java 语言的编程中,经常碰到汉字处理及显示的问题。Java 语言默认的编码方式是UNICODE ,而我们中国人通常使用的文件和数据库都是基于 GB2312 或者 BIG5 等方式编码的。
Jsp是基于 Java 编程语言的,它处理中文的方法是利用网页指令:<%@page ContentType=”text/html;charset=gb2312” %> 。
2.6 Jsp中JavaBeans
JavaBean是描述Java的软件组件模型,有点类似于Microsoft的COM组件概念。在Java模型中,通过JavaBean可以无限扩充Java程序的功能,通过JavaBean的组合可以快速的生成新的应用程序。对于程序员来说,最好的一点就是JavaBean可以实现代码的重复利用,另外对于程序的易维护性等等也有很重大的意义。
JavaBean通过Java虚拟机(Java Virtual Machine)可以得到正确的执行,运行JavaBean最小的需求是JDK1.1或者以上的版本。
JavaBean传统的应用在于可视化的领域,如AWT下的应用。自从Jsp诞生后,JavaBean更多的应用在了非可视化领域,在服务器端应用方面表现出来了越来越强的生命力。
下面介绍一下非可视化的JavaBean:
非可视化的JavaBean,顾名思义就是没有GUI界面的JavaBean。在Jsp程序中常用来封装事务逻辑、数据库操作等等,可以很好地实现业务逻辑和前台程序(如jsp文件)的分离,使得系统具有更好的健壮性和灵活性。
2.7 JSP与数据库链接
2.7.1 JDBC驱动程序
用JSP编辑网页时,要用到JDBC进行数据操作。它是一组API(Application Programming Interface), 用来处理程序与数据库间的链接动作。JDBC共有四种类型:
Type1 JDBC-ODBC桥
作为JDK1.1后的一部分,是sun.jdbc.odbc包的一部分
Application--->JDBC-ODBC Bridge(Type1 jdbc driver)---->JDBC-ODBC Library--->ODBC Driver-->Database
适用于快速的原型系统,没有提供JDBC驱动的数据库如Access
Type2 JAVA to Native API
利用开发商提供的本地库来直接与数据库通信。
Application--->JDBC Driver(Type2 jdbc driver)---->Native Database library---->Database
比Type1性能略好。
Type3 Java to net
Application--->Jdbc Driver(Type3 jdbc driver)----->java middleware--->JDBC Driver---->Database
具有最大的灵活性,通常由那些非数据库厂商提供,是四种类型中最小的。
Type4 JAVA to native dababase
Application--->Jdbc driver(type4 jdbc driver)----->database engine--->database
最高的性能,通过自己的本地协议直接与数据库引擎通信,具备在Internet装配的能力。
2.7.2 建立ODBC数据来源
本系统使用的是Type1型JDBC,下面介绍如何建立ODBC数据来源。
首先打开控制面板,操作系统如果是win98 直接打开ODBC 数据源 。如果操作系统是win2000,则需要找到管理工具,再打开ODBC 数据源,切换至系统数据来源名称标记,按下“添加”按钮。
进入创建新数据源对话框,选取数据来源的类型。由于本系统使用的是ACCESS数据库,故选择Microsoft Access Driver(*.mdb)选项,点击“完成”按钮。
进入ODBC MicrosoftAccess设置对话框中,完成数据来源名称栏与说明栏的输入后,点“选取”按钮, 利用选取数据库对话框,选取欲提供数据的Access数据库。
按“确定”按钮,完成数据库的选取后,回到上一对话框,按“确定”将可看到新建了一个ODBC 数据来源。至此数据源已经添加成功。
2.7.3 数据库链接的建立与关闭
首先用Class.forName 方法加载驱动序类:Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”),当驱动程序加载到内存后,将会自动利用驱动程序管理员java.DriverManager类,注册加载的驱动程序,使其状态为可用。
接下来,再利用DriverManager类进行数据库链接,语法为:Connection Connection对象变量=DriverManager.getConnection(“jdbc:odbc:ODBC数据源名称”)。
关闭ODBC 数据来源链接时,可以用Connection 对象的close方法。
3.系统分析
3.1 整体分析
要浏览网页时,请在浏览器的网页地址栏中,键入 http://localhost:8080/kk/shiyan,该文件将把窗口分割为主画面区、菜单区、导航区三个子画面。
主画面区主要用于显示主要的网页画面;菜单区用于显示关于VB实验的各大模块,控制主画面所显示的网页;导航区则主要显示与网络教学有关的其它模块的链接。
整个网站由7个子系统组成,使用的数据库则为 DataBase 目录下的 Class.mdb, 使用系统前,读者必须将该数据库建立为名为 ClassDB 的数据来源。这7个子系统则分别保存在 shiyan目录的各子目录中,它们是…
l 访客计数器(图形版) 【Counter 子目录】
l 留言版 【Message 子目录】
l 教师窗口 【Teacher 子目录】
l 讨论区(电子看版) 【Board 子目录】
l 导航栏 【dh 子目录】
l 聊天室 【Chatroom 子目录】
l 收交作业 【Homework 子目录】
l 实验内容 【实验 子目录】
以下将详细介绍除“实验内容”与“聊天室”以外的各个子系统。
3.2 访客计数器
3.2.1 计数器机制
计数器是实验首页的主页面的的顶层内容,其下为一段说明文字。图形版的访客计数器,除了要有用于保存访客计数值的文本文件外,还需配合显示0-9的图文件。
此计数器由12个文件所共同完成,它们保存于 Counter 目录中,各文件的名称与用途说明如下:
文件名
用途
Couter.jsp
执行访客计数的jsp网页
Ct
保存访客计数的文件
0.gif
数字0的图文件
1.gif
数字1的图文件
******
*******
9.gif
数字9的图文件
表3-1 计数器
各文件间的运作流程如下图所示:
数字图文件
用户浏览
Couter.jsp
程序执行过程
用户执行过程
载入
读出写入
1
Ct
图3-1 计数器
3.2.2 关键技术
1、基本的文件打开与读写。
2、将数字转化为图形显示:其关键就在图文件名称上,即各数字图文件的名称就是其所显示的数字。
3、session对象的使用:因为一次联机只对应一个session对象,所以当打开此网页时,将产生一个session对象,而当刷新时,由于session的存在,故可用判断语句来阻止访问数的增加;而当关闭此浏览器时,session对象将随之消失,因而再次打开时访客数将会再次增加,符合要求。
3.2.3走马灯的建立
走马灯建立语法:<Marquee Width=宽度 Height=高度 Align=移动方式 Direction=移动方向 Scrolldelay=延迟时间> 显示文字</Marquee>,计数器的走马灯由此语句实现。
3.3 留言版
3.3.1 留言版的机制
留言版由4个文件共同完成,保存于 shiyan\Message 目录下,各文件的名称与用途说明如下:
文件名
用途
MsgForm.htm
供用户输入留言,并可检查是否完成姓名与E-Mail 账号的输入。
PostMsg.jsp
显示用户输入的留言,并将留言写入 Message.inc 文件。
AllMsg.jsp
加载Message.inc 文件,显示所有留言。
Message.inc
记录用户所输入的留言。
表3-2 留言版
未通过资料检查
浏览
程序执行过程
用户执行过程
MsgForm.htm
通过资料检查调用
写入
PostMsg.jsp
AllMsg.jsp
读出
Message.inc
下图为各文件间的运作关系。
图3-2 留言版
3.3.2 留言输入
用户输入留言的文件为MsgForm.htm。用javascript脚本实现数据的检查,在提交数据时,执行datacheck 函数,检查窗体中的Name字段与E_Mail字段的字符串长度是否为零,以及E_Mail栏中是否有@字符,若结果为真,则提交;否则,报错并要求重新输入。
3.3.3 保存留言
当用户在MsgForm.htm 中按下“写好了”按钮,且通过数据检查后,将调用PostForm.jsp文件,把数据以一定的格式显示于窗体中,并将数据写入Message.inc文件。将留言写入时(同时写入了一些格式以备输出),用到了文件的写入操作,包括FileWriter,BufferedWriter等对象及其方法。(注:Message.inc可用NotePad 打开)
3.3.4 查看所有留言
当点击此链接时,只需加载Message.inc文件,语句为:
<%@ include file=”./DataFile/Message.inc” %>。
3.4 教师窗口
3.4.1教师登录
为限制浏览者浏览网页,在网页中建立用户登录机制,让特定用户以账号登录网页,而用户的登录账号与密码,则利用数据库加以保存。此机制由4个文件所共同完成,各文件的名称与用途说明如下所示。
文件名
用途
LogFrm.htm
供用户输入账号和密码的网页,并可检查是否完成账号与密码的输入。
Login.jsp
读取数据库中的账号与密码,并进行对比,若账号或密码错误,则报错;若核对正确,则将网页导向至 SubMain.jsp。
SubMain.jsp
当用户完成登录后,便打开此网页。若用户未经登录即打开此网页时,将被导向至 LogFrm.htm 文件。
Class.mdb
该数据库的Login 数据表中,将保存用户的账号与密码。
表3-3 教师登录
在教师登录时,不允许进行注册,只能用原有账号。虽然这样对教师来说不太方便,但这样可防止学生注册后登录,故而增加了此窗口的安全性。图3-3为各文件间的运作关系。
当输入正确的用户名与密码后,将进入SubMain.jsp窗体,显示教师可进行的操作:投票、实验提交情况查询、实验下载。
读出
程序执行过程
用户执行过程
用户浏览
LogFrm.htm
导向
通过数据检查调用
Class.mdb
Login.jsp
SubMain.jsp
未经登录直接浏览
导向
未通过数据检查
图3-3 教师登录
3.4.2 好书投票
3.4.2.1 好书投票系统机制
整个好书投票系统由3个网页、1个数据表以及2个Bean对象所共同完成,下表为各Bean对象的文件名称与功能说明(以下各文件位于WEB-INF\classes\com中)。
文件名
用途
DBCon.java
用于建立数据库链接的Bean对象
VoteBean.java
用于产生票选书籍数据、添加投票记录以及协助计算投票结果的Bean对象。
表3-4 bean对象
下表为各网页以及数据库的文件名称与功能说明。
文件名
用途
VoteFrm.jsp
投票窗体
Vote.jsp
添加投票记录的网页
VoteRes.jsp
显示投票结果
Class.mdb
用于获得书籍数据与保存投票记录的数据库。书籍数据由Book数据表中获得,投票记录则保存于Vote数据表中
表3-5 在线投票系统
各文件间的执行流程如下图所示。
读取
显示投票结果
程序执行过程
用户执行过程
用户浏览
VoteFrm.jsp
进行投票
Class.mdb
Vote.jsp
VoteRes.jsp
写入
读取
图3-4 在线投票系统
3.4.2.2 VoteBean 对象
在好书投票系统中,运用了VoteBean对象处理产生选单,以及将记录添加至数据库的工作。VoteBean对象的方法:
文件名
用途
VoteBean
构造函数
InitBookRs
初始化建立VoteBean对象中的记录集
CloseBookRs
关闭记录集
next
将VoteBean中记录集的记录指针移至下条记录
getID
获得记录集中ID栏的数据
getBookID
获得记录集中BookID栏的数据
getBookNm
获得记录集中BookNm栏的数据
InsertChoice
将投票记录添加至数据库
VoteNum
计算投票给某书籍的记录条数
表3-6 VoteBean 对象
3.4.2.3 DBCon 对象
当JSP网页从数据库中取得数据时,最耗费服务器资源与时间的是建立数据库链接。而运用jspInit函数与jspDestroy函数,并不是一个很好的方法,毕竟每浏览一次新网页,就要建立数据库链接。最好是利用Bean对象建立数据库链接,并将对象存入Session中,且利用valueUnbound 方法,于Session对象中止时,执行关闭数据库链接操作。表3-7为该对象方法的说明。
3.4.2.4 投票窗体
投票窗体(VoteRes.jsp)除显示出各书籍所得到的票数外,还具有防止重复投票的功能,它是利用Cookie变量实现的:当定义的Cookie变量为Null时,可进行投票;反之,则不可投票。不过,这个防止重复投票的机制,仅能防止使用者在曾经进行投票操作的同一个浏览器中重复投票。当使用者打开另一个浏览器时,仍可再投票。
文件名
用途
DBCon
构造函数,将用于建立数据库链接。
BulidConnection
建立数据库链接的方法,此方法被定义为private,因此,仅可被Bean对象内的方法调用。
getConnection
返回Bean对象所完成建立的数据库链接。若使用者调用时,该数据库链接已被关闭,则重调用BulidConnection方法重新建立。
close
关闭Connection对象
valueBound
当对象加入session对象时,此方法将自动被执行。
valueUnbound
当对象从session对象中删除时,此方法将自动被执行。
表3-7 DBCon 对象
当显示投票数的同时,添加的投票记录将写入数据库,保存于Vote数据表中。下表为该数据表各字段名称与意义的说明。
字段名称
意义
ID
记录编号
choice
使用者所选择书籍的记录编号。书籍的记录编号为Book数据表中,该笔书籍数据的ID字段值,而非BookID字段值
表3-8 Vote数据表
各书籍的得票数,必须利用该书籍得记录编号(ID),比对Vote数据表的choice字段,筛选出有多少条记录的值等于该书的记录编号,从而统计出得票数。教师可根据书籍的得票情况,把好书推荐给学生。
3.4.3实验提交情况查询
表3-9为用到的文件名称与用途说明。
下图为各文件间的运作流程。
查看所有信息
程序执行过程
用户执行过程
用户浏览
serch..htm
具体查询
Class.mdb
serch.jsp
Pages.jsp
读取
读取
图3-5 实验提交
文件名
用途
Pages.jsp
分页显示所有的实验信息
serch.htm
显示进行查询的两种方式(查询主界面)
serch.jsp
以选定方式进行具体查询的结果显示
表3-9 实验提交
3.4.3.1 查看所有信息机制
此机制是利用SQL语句进行数据库查询,且以分页方式查看记录集以避免记录太多。分页显示时,必须先取得记录的总条数,并指定每一页欲显示条数的设置,从而算出页数,用rs.absolute()方法,计算欲显示页的第一条记录位置,从而达到分页浏览记录的目的。此外,它还可随时浏览特定分页中的数据。每次重新分页时,都会重新整理网页,因此,须把数据链接的动作写在jspInit函数中,这样每一次重新整理网页时,便可避免重新执行数据库的链接动作。jspInit函数与jspDestroy函数位于函数声明中。
3.4.3.2具体查询机制
此机制中,把运用频率较高的数据库链接与关闭函数的声明单独分离出去,命名为connect.jsp(位于public文件),利用<%@ include file="../../public/connect.jsp" %>指令进行调用。在SQL的使用中,运用了模糊查询“Like+通配符+已知的部分条件”、查询顺序“Order By+字段名”等。
3.4.4实验下载区
下载区位于download文件夹中,各文件的名称与用途说明如下:
文件名
用途
down.jsp
进行某一文件的下载
dow.jsp
显示现有各实验的文件夹
dow1.jsp
具体显示某一实验的各提交文件(.zip)
表3-10 实验下载
显示实验
文件夹
程序执行过程
用户执行过程
用户浏览
dow.jsp
具体文件
dow1.jsp
down.jsp
点击
下图为各文件间的运作流程。
图3-6 实验下载
教师进入下载区后,根据自身的需要进行操作,点击所需文件即可下载(或利用下载工具下载)。下载功能是由从中下载的工具实现的,它的缺点是只能下载*.zip文件。
3.5 收交作业
3.5.1 作业上传
收交作业是利用上传工具,把学生所做的实验作业提交到服务器端,并放到指定的文件夹下;同时,把实验信息提交到数据库的过程。整个系统由以下各文件组成:
文件名
用途
main.htm
首页面,用于显示注意事项
submit.jsp
进行实验信息的填写与提交,提交后,显示提交的内容,给出上传文件名
upfile.jsp
通过浏览选择上传文件
upload.jsp
实现文件的上传
浏览
程序执行过程
用户执行过程
用户浏览
main..htm
Class.mdb
submit.jsp
upfile.jsp
上传
读取
写入
提交
upload.jsp
选择
表3-11 作业上传
下图为各文件间的运作流程。
图3-7 作业上传
作业提交前,必须认真填写实验信息,其中学号应为数字,其它项均不能为空(‘备注’除外),否则会出提示信息。提交信息的同时,将进行上传文件夹的检测,若不存在,就会自动创建;另外,上传文件名会生成并给出,应按此名进行压缩。在选择上传文件时,将会检测文件名是否符合要求,以简便上传操作。上传操作upfile.jsp调用的是上传工具(封装的)jspsmartupload,它能实现将文件从本地拷贝到服务器端的指定位置。
3.5.2 上传工具简介
展开阅读全文