visual_basic网络教学环境

上传人:xins****2008 文档编号:56869398 上传时间:2022-02-22 格式:DOCX 页数:21 大小:40.91KB
返回 下载 相关 举报
visual_basic网络教学环境_第1页
第1页 / 共21页
visual_basic网络教学环境_第2页
第2页 / 共21页
visual_basic网络教学环境_第3页
第3页 / 共21页
点击查看更多>>
资源描述
本科毕业设计(实习)论文Visual Basic网络教学环境摘 要随着互联网的进一步普及,基于Internet的各种应用得到飞速发展,Web Application 已逐渐成为当前开发的热点。本文简要介绍了最具发展前途的JSP技术。JSP数据库连接的四种方法;JSP支持组件模型,集成JavaBeans的应用;JSP中的中文编码问题分析及解决;JSP的九大对象,session变量。同时,本文以讨论区、留言版等为例具体介绍了JSP在数据库及九大对象方面的应用。 近年来,随着知识经济时代的到来,如何将现有的科技信息更好的为广大的用户服务已成为当务之急。在学校之中,如何让学生更好的利用网络学习呢?为此,我们开发了此vb网络教程,以供大家更方便的学习vb语言。 在此次开发过程中,我设计的是VB实验部分,其基本内容为: 实验首页包括导航条、菜单栏、主页面,以浅淡的颜色为背景色。导航条提供与本系统首页及其它模块的链接,菜单栏由实验首页、实验内容、教师窗口、收交作业、聊天室、讨论区、留言版组成,它们是VB实验建设的七大组成部分,本文将介绍除聊天室、实验内容之外的五大部分。其中,实验首页采用了访客计数器(走马灯式),教师窗口为教师查看学生提交作业情况、下载作业的窗口(还包含好书投票区),收交作业为学生上传作业及其信息的窗口,讨论区为张贴文章提出问题及发表意见的窗口,留言版为向老师请教问题的窗口。目录1. VB网络教学环境系统概述 51.1 系统简述 51.2 需求分析 51.3 系统开发的可行性分析 52. JSP技术 52.1 JSP简介 52.2 jsp与asp的比较特点 52.3 Resin环境下的JSP配置 62.3.1 开发Jsp网页的单机仿真环境 62.3.2 JSP引擎的安装与架设72.4 Jsp的九大内部对象72.5 Jsp的中文编码问题分析及解决82.6 Jsp中JavaBeans82.7 JSP与数据库链接 82.7.1 JDBC驱动程序82.7.2 建立ODBC数据来源 92.7.3 数据库链接的建立与关闭93系统分析93.1 整体分析93.2 访客计数器103.2.1 计数器机制113.2.2 关键技术113.2.3走马灯的建立113.3 留言版113.3.1 留言版的机制113.3.2 留言输入123.3.3 保存留言123.3.4 查看所有留言123.4 教师窗口123.4.1教师登录123.4.2 好书投票133.4.3 实验提交情况查询153.4.4 实验下载区163.5 收交作业173.5.1 作业上传173.5.2 上传工具简介173.6 讨论区184.数据库设计185.应注意问题205.1 Java与JavaScript区别 205.2 网页重导20结论20致谢21参考文献211.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 编程语言的,它处理中文的方法是利用网页指令: 。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驱动的数据库如AccessType2 JAVA to Native API利用开发商提供的本地库来直接与数据库通信。Application-JDBC Driver(Type2 jdbc driver)-Native Database library-Database比Type1性能略好。Type3 Java to netApplication-Jdbc Driver(Type3 jdbc driver)-java middleware-JDBC Driver-Database具有最大的灵活性,通常由那些非数据库厂商提供,是四种类型中最小的。Type4 JAVA to native dababaseApplication-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 计数器机制计数器是实验首页的主页面的的顶层内容,其下为一段说明文字。图形版的访客计数器,除了要有用于保存访客计数值的文本文件外,还需配合显示09的图文件。此计数器由12个文件所共同完成,它们保存于 Counter 目录中,各文件的名称与用途说明如下:文件名用途Couter.jsp执行访客计数的jsp网页Ct保存访客计数的文件0.gif数字0的图文件1.gif数字1的图文件*9.gif数字9的图文件表31 计数器各文件间的运作流程如下图所示:数字图文件用户浏览Couter.jsp程序执行过程用户执行过程载入读出写入1Ct图31 计数器3.2.2 关键技术1、基本的文件打开与读写。2、将数字转化为图形显示:其关键就在图文件名称上,即各数字图文件的名称就是其所显示的数字。3、session对象的使用:因为一次联机只对应一个session对象,所以当打开此网页时,将产生一个session对象,而当刷新时,由于session的存在,故可用判断语句来阻止访问数的增加;而当关闭此浏览器时,session对象将随之消失,因而再次打开时访客数将会再次增加,符合要求。3.2.3走马灯的建立走马灯建立语法: 显示文字,计数器的走马灯由此语句实现。3.3 留言版3.3.1 留言版的机制留言版由4个文件共同完成,保存于 shiyanMessage 目录下,各文件的名称与用途说明如下:文件名用途MsgForm.htm供用户输入留言,并可检查是否完成姓名与E-Mail 账号的输入。PostMsg.jsp显示用户输入的留言,并将留言写入 Message.inc 文件。AllMsg.jsp加载Message.inc 文件,显示所有留言。Message.inc记录用户所输入的留言。表32 留言版未通过资料检查浏览程序执行过程用户执行过程MsgForm.htm通过资料检查调用写入PostMsg.jspAllMsg.jsp读出Message.inc下图为各文件间的运作关系。图32 留言版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文件,语句为:。3.4 教师窗口3.4.1教师登录为限制浏览者浏览网页,在网页中建立用户登录机制,让特定用户以账号登录网页,而用户的登录账号与密码,则利用数据库加以保存。此机制由4个文件所共同完成,各文件的名称与用途说明如下所示。文件名用途LogFrm.htm供用户输入账号和密码的网页,并可检查是否完成账号与密码的输入。Login.jsp读取数据库中的账号与密码,并进行对比,若账号或密码错误,则报错;若核对正确,则将网页导向至 SubMain.jsp。SubMain.jsp当用户完成登录后,便打开此网页。若用户未经登录即打开此网页时,将被导向至 LogFrm.htm 文件。Class.mdb该数据库的Login 数据表中,将保存用户的账号与密码。表33 教师登录在教师登录时,不允许进行注册,只能用原有账号。虽然这样对教师来说不太方便,但这样可防止学生注册后登录,故而增加了此窗口的安全性。图33为各文件间的运作关系。当输入正确的用户名与密码后,将进入SubMain.jsp窗体,显示教师可进行的操作:投票、实验提交情况查询、实验下载。读出程序执行过程用户执行过程用户浏览LogFrm.htm导向通过数据检查调用Class.mdbLogin.jspSubMain.jsp未经登录直接浏览导向未通过数据检查图33 教师登录3.4.2 好书投票3.4.2.1 好书投票系统机制整个好书投票系统由3个网页、1个数据表以及2个Bean对象所共同完成,下表为各Bean对象的文件名称与功能说明(以下各文件位于WEB-INFclassescom中)。文件名用途DBCon.java用于建立数据库链接的Bean对象VoteBean.java用于产生票选书籍数据、添加投票记录以及协助计算投票结果的Bean对象。表34 bean对象下表为各网页以及数据库的文件名称与功能说明。文件名用途VoteFrm.jsp投票窗体Vote.jsp添加投票记录的网页VoteRes.jsp显示投票结果Class.mdb用于获得书籍数据与保存投票记录的数据库。书籍数据由Book数据表中获得,投票记录则保存于Vote数据表中表35 在线投票系统各文件间的执行流程如下图所示。读取显示投票结果程序执行过程用户执行过程用户浏览VoteFrm.jsp进行投票Class.mdbVote.jspVoteRes.jsp写入读取图34 在线投票系统3.4.2.2 VoteBean 对象在好书投票系统中,运用了VoteBean对象处理产生选单,以及将记录添加至数据库的工作。VoteBean对象的方法:文件名用途VoteBean构造函数InitBookRs初始化建立VoteBean对象中的记录集CloseBookRs关闭记录集next将VoteBean中记录集的记录指针移至下条记录getID获得记录集中ID栏的数据getBookID获得记录集中BookID栏的数据getBookNm获得记录集中BookNm栏的数据InsertChoice将投票记录添加至数据库VoteNum计算投票给某书籍的记录条数表36 VoteBean 对象3.4.2.3 DBCon 对象当JSP网页从数据库中取得数据时,最耗费服务器资源与时间的是建立数据库链接。而运用jspInit函数与jspDestroy函数,并不是一个很好的方法,毕竟每浏览一次新网页,就要建立数据库链接。最好是利用Bean对象建立数据库链接,并将对象存入Session中,且利用valueUnbound 方法,于Session对象中止时,执行关闭数据库链接操作。表37为该对象方法的说明。3.4.2.4 投票窗体投票窗体(VoteRes.jsp)除显示出各书籍所得到的票数外,还具有防止重复投票的功能,它是利用Cookie变量实现的:当定义的Cookie变量为Null时,可进行投票;反之,则不可投票。不过,这个防止重复投票的机制,仅能防止使用者在曾经进行投票操作的同一个浏览器中重复投票。当使用者打开另一个浏览器时,仍可再投票。文件名用途DBCon构造函数,将用于建立数据库链接。BulidConnection建立数据库链接的方法,此方法被定义为private,因此,仅可被Bean对象内的方法调用。getConnection返回Bean对象所完成建立的数据库链接。若使用者调用时,该数据库链接已被关闭,则重调用BulidConnection方法重新建立。close关闭Connection对象valueBound当对象加入session对象时,此方法将自动被执行。valueUnbound当对象从session对象中删除时,此方法将自动被执行。表37 DBCon 对象当显示投票数的同时,添加的投票记录将写入数据库,保存于Vote数据表中。下表为该数据表各字段名称与意义的说明。字段名称意义ID记录编号choice使用者所选择书籍的记录编号。书籍的记录编号为Book数据表中,该笔书籍数据的ID字段值,而非BookID字段值表38 Vote数据表各书籍的得票数,必须利用该书籍得记录编号(ID),比对Vote数据表的choice字段,筛选出有多少条记录的值等于该书的记录编号,从而统计出得票数。教师可根据书籍的得票情况,把好书推荐给学生。3.4.3实验提交情况查询表39为用到的文件名称与用途说明。下图为各文件间的运作流程。查看所有信息程序执行过程用户执行过程用户浏览serch.htm具体查询Class.mdbserch.jspPages.jsp读取读取图35 实验提交文件名用途Pages.jsp分页显示所有的实验信息serch.htm显示进行查询的两种方式(查询主界面)serch.jsp以选定方式进行具体查询的结果显示表39 实验提交3.4.3.1 查看所有信息机制此机制是利用SQL语句进行数据库查询,且以分页方式查看记录集以避免记录太多。分页显示时,必须先取得记录的总条数,并指定每一页欲显示条数的设置,从而算出页数,用rs.absolute()方法,计算欲显示页的第一条记录位置,从而达到分页浏览记录的目的。此外,它还可随时浏览特定分页中的数据。每次重新分页时,都会重新整理网页,因此,须把数据链接的动作写在jspInit函数中,这样每一次重新整理网页时,便可避免重新执行数据库的链接动作。jspInit函数与jspDestroy函数位于函数声明中。3.4.3.2具体查询机制此机制中,把运用频率较高的数据库链接与关闭函数的声明单独分离出去,命名为connect.jsp(位于public文件),利用指令进行调用。在SQL的使用中,运用了模糊查询“Like通配符已知的部分条件”、查询顺序“Order By字段名”等。3.4.4实验下载区下载区位于download文件夹中,各文件的名称与用途说明如下:文件名用途down.jsp进行某一文件的下载dow.jsp显示现有各实验的文件夹dow1.jsp具体显示某一实验的各提交文件(.zip)表310 实验下载显示实验文件夹程序执行过程用户执行过程用户浏览dow.jsp具体文件dow1.jspdown.jsp点击下图为各文件间的运作流程。图36 实验下载教师进入下载区后,根据自身的需要进行操作,点击所需文件即可下载(或利用下载工具下载)。下载功能是由从中下载的工具实现的,它的缺点是只能下载*.zip文件。3.5 收交作业3.5.1 作业上传收交作业是利用上传工具,把学生所做的实验作业提交到服务器端,并放到指定的文件夹下;同时,把实验信息提交到数据库的过程。整个系统由以下各文件组成:文件名用途main.htm首页面,用于显示注意事项submit.jsp进行实验信息的填写与提交,提交后,显示提交的内容,给出上传文件名upfile.jsp通过浏览选择上传文件upload.jsp实现文件的上传浏览程序执行过程用户执行过程用户浏览main.htmClass.mdbsubmit.jspupfile.jsp上传读取写入提交upload.jsp选择表311 作业上传下图为各文件间的运作流程。图37 作业上传作业提交前,必须认真填写实验信息,其中学号应为数字,其它项均不能为空(备注除外),否则会出提示信息。提交信息的同时,将进行上传文件夹的检测,若不存在,就会自动创建;另外,上传文件名会生成并给出,应按此名进行压缩。在选择上传文件时,将会检测文件名是否符合要求,以简便上传操作。上传操作upfile.jsp调用的是上传工具(封装的)jspsmartupload,它能实现将文件从本地拷贝到服务器端的指定位置。3.5.2 上传工具简介jpssmartupload 工具中,封装的文件位于Web-infclassescomjspsmartupload下,分别为:file.class,Files.class,Request.class,smartupload.class,smartuploadException.class。它们实现了文件的上传、下载及其过程中遇到的文件类型限制等一系列的问题,此外,还进行了异常处理。其具体的方法、属性等请查看其自带的帮助文件。3.6 讨论区讨论区整个系统由5个文件所共同完成,各文件的名称与用途说明如下:文件名用途Board.jsp建立窗口框架,并同时显示Title.jsp 与Content.jsp 的网页。Title.jsp从数据库中获得目前曾经讨论的主题Content.jsp某主题的内容PostForm.jsp供用户编写张贴文章的窗体Post.jsp当用户在 PostForm.jsp 中,完成张贴文章内容的编写,并按下“张贴“ 按钮后,将调用此JSP 网页进行文章的张贴 Class.mdb该数据库中的 Board 数据表中将保存用户所张贴文章的标题、内容、张贴者等数据表312 讨论区下图为各文件间的运作流程。读取Board.jsp读出程序执行过程用户执行过程用户浏览Title.jsp导向浏览特定主题写入PostForm.jspContent.jsp张贴新主题回应某主题Post.jsp放弃张贴Class.mdbb图38 讨论区4.数据库设计本章仅以表格形式做简单介绍。字段名称意义ID张贴文章的编号Poster张贴者PostTime张贴时间Title文章标题Content文章内容RepID响应的主题的编号(ID栏)LastRep最近一次响应此主题的时间RepNum响应此主题的文章的数目ConNum浏览此主题的人数表41 Board数据表字段名称意义ID记录编号CatrgoryID书籍分类编号BookID书籍编号BookNm书籍名称Author作者Price价格Abstract摘要表4-2 Book 数据表字段名称意义ID记录编号姓名登录用户名密码登录密码表43 Login 数据表字段名称意义ID记录编号学号提交者学号院系所在院系姓名提交者姓名实验号提交的实验号教师任教老师文件名提交的文件名日期提交时日期备注其它信息表44 Info 数据表字段名称意义ID记录编号choice使用者所选择书籍的记录编号。书籍的记录编号为Book数据表中,该笔书籍数据的ID字段值,而非BookID字段值表45 Vote 数据表5.应注意问题5.1 Java与JavaScript区别1、在对象的处理和应用方面不一样Java是一种真正的面向对象的语言,即使是开发非常简单的程序,也必须设计对象。JavaScript是种脚本语言,它是一种基于对象和事件驱动的编程语言,因而它本身提供了非常丰富的内部对象供程序设计人员使用。2、 代码格式不一样Java是一种与HTML无关的独立格式;HTML中引用Java程序必须像引用外媒体那样进行装载,其代码以字节代码的形式保存在独立的文档中。JavaScript的代码是与HTML文档紧密相连的,直接嵌入HTML文档中,是一种文本字符格式,并且可以动态装载。3、定义变量形式不同Java采用强类型变量检查,像C语言一样。所有变量在编译之前必须声明,而且不能使用没有赋值的变量。JavaScript变量在使用前不须作声明,采用弱类型变量检查,而且是解释器在运行时检查其数据类型。4、执行方式不同Java的源代码在传递到客户端执行之前,必须经过编译,形成独立的字节代码。JavaScript是一种解释性编程语言,其源代码在发往客户端执行之前不须经过编译,而是把文本格式的字符代码发送给客户端,由客户端的浏览器解释执行。另外,二者嵌入浏览器的方式也不同。还有,就是二者的某些属性、方法也不同,例如:String类在Java中的length方法,在JavaScript中为属性。5.2 网页重导与sendRedirect方法的比较虽然与sendRedirect方法,都可以将浏览器浏览的网页,重导至另一个网页,但两者在原理上是不太相同的。动作是利用服务端,将数据先输出至缓冲区的机制,在前一个网页尚未输出到客户端前,取消数据的输出,然后输出另一个网页的数据,达到重导浏览器的效果。而sendRedirect 方法,不牵涉服务端缓冲区的问题,它作用于客户端,所以重导前后的网页无法分享存在于request对象内的变量。结论本学期以来,在从分析系统到设计到具体的实现过程中,遇到了很多的问题,通过对这些问题的解决,使我认识到:做任何系统,首先要进行分析,对所作系统有整体的了解;然后查询所需的资料,充分利用各种资源;遇到问题要认真研究、虚心请教。另外,任何系统的完成仅靠个人的力量是不够的,需要大家的团结合作的精神。由于本人对JSP的学习时间较短,知识掌握的不够全面,因此,作品虽具备了一定的实用性、稳定性和安全性,但是仍存在一些问题。不足之处:1、 网页的布局不太合理,美工上也显得有些粗糙。2、 对上传文件的文件名限制太死,不利于用户操作。3、 对留言的保存没有用数据库,不适合大量信息的保存。致谢在开发过程中,得到了老师、朋友、同学的大力支持,在此表示衷心的感谢!任何项目的成功完成都离不开团队的合作,感谢同组同学的真诚合作,指导老师的悉心指导。参考文献(1)书1. 位元文化 JSP动态网页入门实务 第一版 北京 科学出版社2. 杨珏 卢银娟 赵昊彤 JSP 网络开发技术 第一版 北京 人民邮电出版社(2)网络引用网址 http:/www.java-
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 管理文书 > 金融资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!