毕业论文范文网-论文范文
电气工程 会计论文 金融论文 国际贸易 财务管理 人力资源 学前教育 德语论文 工程管理 文化产业 工商管理 会计专业 行政管理 广告学
机械设计 汉语文学 英语论文 物流论文 电子商务 法律论文 工商管理 旅游管理 市场营销 药学论文 播音主持 人力资源 金融论文 保险学
制药工程 生物工程 包装工程 模具设计 测控专业 工业工程 教育管理 行政管理 计算机论 电子信息 市场营销 法学论文 财务管理 投资学
体育教育 小学教育 印刷工程 土木工程 书法论文 护理论文 心理学论 信息管理 公共事业 给水排水 新闻专业 摄影专业 广电编导 经济学
  • 范文首页 |
  • 毕业论文 |
  • 论文范文 |
  • 计算机论文 |
  • 外文翻译 |
  • 工作总结 |
  • 工作计划 |
  • 现成论文 |
  • 论文下载 |
  • 教学设计 |
  • 免费论文 |
  • 原创论文 |
搜索 高级搜索

原创毕业论文

当前位置:毕业论文范文网-论文范文 -> 免费论文 -> 计算机论文

JSP实验教学管理系统(文档 设计)

作者: 浏览:6次
免费专业论文范文
免费专业论文
政治工作论文
计算机论文
营销专业论文
工程管理论文范文
医药医学论文范文
法律论文范文
生物专业论文
物理教学论文范文
人力资源论文范文
化学教学论文范文
电子专业论文范文
历史专业论文
电气工程论文
社会学专业论文
英语专业论文
行政管理论文范文
语文专业论文
电子商务论文范文
焊工钳工技师论文
社科文学论文
教育论文范文
数学论文范文
物流论文范文
建筑专业论文
食品专业论文
财务管理论文范文
工商管理论文范文
会计专业论文范文
专业论文格式
化工材料专业论文
英语教学专业论文
电子通信论文范文
旅游管理论文范文
环境科学专业论文
经济论文
人力资源论文范文
营销专业论文范文
财务管理论文范文
物流论文范文
财务会计论文范文
数学教育论文范文
数学与应用数学论文
电子商务论文范文
法律专业论文范文
工商管理论文范文
汉语言文学论文
计算机专业论文
教育管理论文范文
现代教育技术论文
小学教育论文范文
机械模具专业论文
报告,总结,申请书
心理学论文范文
学前教育论文范文

收费计算机专业论文范文
收费计算机专业论文
Delphi
ASP
VB
JSP
ASP.NET
VB.NET
java
VC
pb
VS
dreamweaver
c#.net
vf
VC++
计算机论文
毕业论文范文题目:JSP实验教学管理系统(文档 设计),论文范文关键词:JSP实验教学管理系统(文档 设计)
JSP实验教学管理系统(文档 设计)毕业论文范文介绍开始:

摘 要
 现在的实验教学网络管理系统存在实验题目分发慢,论文交换不方便,师生交流困难等方面的问题。为了解决现有系统的这些问题,特开发新的实验教学网络管理系统。
 作者以实际应用为开发背景,运用软件工程原理和开发方法,采用当前网络开发主流技术,结合JSP和SQL数据库技术,设计并开发了一个基于B/S模式的实验教学管理系统。首先对开发系统进行了需求分析,得到系统功能需求、数据流图和数据字典。随后对系统进行了概要设计和详细设计,在概要设计中主要进行了系统功能模块划分,将系统划分为了管理员控制模块、教师控制模块和学生控制模块三大模块,其中管理员的权限包括对新教师和新学生的注册,对新管理员的注册和对实验题目的审批;教师的权限包括实验题目的申请,学生实验结果的查看,回答学生提问;学生权限包括选择实验题目,上传实验结果和向教师提问。概要设计中还进行了系统总体结构设计,系统数据结构设计,系统安全设计等。详细设计主要包括系统数据库访问的实现,主要功能模块的具体实现,模块实现关键代码等。最后对系统进行了功能测试,并对测试结果进行了分析,在总结、分析的基础上,指出了系统存在的不足及需要改进的地方,为今后开发类似系统提供借鉴和帮助。
 本系统界面友好,操作方便,能够基本满足实验教学管理的要求。
关键词:实验教学管理系统;JSP;三层结构

Abstract
 The recent Experiment Education Web Management System have many problems, such as the deal out of the subjects was very slow, the exchange of documents was inconvenient ,the communication between students and teachers was very hard, and so on. This new system was developed to solve these problems.
 The author takes the development of practical applications as background, uses software engineering principles, development methods and the current mainstream network technology, combines the JSP and SQL Server technique, designs and develops this experiment teaching management system based on B/S models. The author first makes the needs analysis, data flow charts and data dictionary of the system. Then the author makes outline system design and detailed design. Outline design mainly includes dividing the system functional modules, this system has three main models: administer control model, teacher control model, student control model. Administers can add new administers, students and teachers. They can also check and approve experiments. Teachers can apply for new experiments, check the results of experiments that the students upload and answer the student’s questions. Students can select experiment subjects, upload their experiment results and also can ask questions the have in the experiments. The outline design also includes overall structure of the system design, system data structure design,system security design; Detailed design major includes the realization of the visit to database systems, the main achievement of specific functional modules, modular achieve key code. Finally, the author makes a functional test of the system, and analyses the test results. Based on the summary and analysis, the author pointes out that the system deficiencies and needs improvement, development of a similar system for the future reference and help.
 The system has friendly interface and easy to operate, can meet the basic experimental teaching management requirements.
Key words:Experiment Education Management System;JSP;Three-tier structure
目 录
第1章 绪 论 1
§1.1 选题背景 1
§1.2 开发技术 1
 §1.2.1 JSP技术 1
 §1.2.2 TOMCAT 1
§1.3 论文结构安排 2
§1.4 作者在本次设计中的工作 2
第2章 系统需求分析 3
§2.1 系统可行性分析 3
§2.2 系统功能需求分析 4
§2.3 系统数据流图 5
§2.4 数据字典 5
第3章 系统设计 8
§3.1 系统功能设计 8
§3.2 系统总体结构 8
§3.2 数据库概要设计 9
 §3.2.1 概念设计 12
 §3.2.2 逻辑设计 12
 §3.2.3 物理设计 12
第4章 系统实现 15
§4.1 数据库连接实现 15
§4.2 管理员功能模块实现 15
 §4.2.1 人员管理功能实现 16
 §4.2.2 实验审批功能实现 19
§4.3 教师功能模块实现 20
 §4.3.1 实验申请功能实现 20
 §4.3.2 实验结果查看功能实现 22
 §4.3.3 问题回复功能实现 23
§4.4 学生功能模块实现 24
 §4.4.1 实验选题功能实现 24
 §4.4.2 疑难提问功能实现 26
 §4.4.2 实验结果上传功能实现 28
第5章 系统测试 29
§5.1 测试环境 29
§5.2 系统功能测试 29
 §5.2.1 人员管理功能测试 29
 §5.2.2 选题功能测试 29
 §5.2.3 实验结果批阅功能测试 29
 §5.2.4 在线交流功能测试 29
§5.3. 测试结果分析 33
总 结 34
参考文献 35
致 谢 36

第1章 绪 论
§1.1 选题背景
 现在,网络越来越多的走进人们的生活当中,特别是在学校的管理上,许多工作都是通过网络来操作。学校的多数工作,例如:选课,4、6级报名等工作都是通过学校的网站来完成。网络给学生和老师都带来了极大的便利,老师和学生可以通过网络非常方便的进行交流以至于论文交换,这为实验教学网络管理系统的实现创造了条件。本次毕业设计的选题——《实验教学网络管理系统》即是通过JSP以及数据库技术开发出来的,基于B/S模式的一个教学管理系统。下面就让我们来对这个毕业设计进行初步的认识。
§1.2 开发技术
本系统所涉及的开发技术主要是指JSP技术和TOMCAT。
§1.2.1 JSP技术
    JSP技术是目前应用开发中的核心技术,也是目前流行的3P技术中应用最广泛的一种。3P技术分别是:ASP(Active Server Pages)、PHP(Personal HomePage)和JSP(Java Server Pages)。JSP最初是SUN公司推出的,ASP是Microsoft公司的产品,PHP是由一个网络小组开发和维护的。目前最常用的是JSP和ASP(ASP.NET)。
 在 Sun 正式发布 JSP(Java Server Pages) 之后,这种新的 Web 应用开发技术很快引起了人们的关注。 JSP 为创建高度动态的 Web 应用提供了一个独特的开发环境。按照 Sun 的说法, JSP 能够适应市场上包括 Apache WebServer 、 IIS4.0 在内的 85% 的服务器产品。JSP与Microsoft的Active Server Pages兼容,但是它是使用类似HTML的卷标以及JAVA程序代码段,而不是VBScript。当你所是使用的网站服务器没有提供本地ASP支持,也就是Apache或者Netscape服务器时,可以考虑JSP。虽然你可以取得这些服务器的ASP附加配备模块,但是价格昂贵,而目前Sun并没有对你所需要的JSP组件收取费用。对于Solaris、Linux以及Windows,这些组件也都很容易取得[1]。
§1.2.2 TOMCAT
   Jakarta Tomcat服务器是在SUN公司的JSWDK(JavaServer Web DevelopmentKit,是SUN公司推出的小型Servelet/JSP调试工具)的基础上发展起来的一个优秀的Servlet/JSP容器,它是Apache-Jakarta软件组织的一个子项目。它不但支持运行Servlet和JSP,而且还具备了作为商业JAVA WEB应用容器的特征。
 作为一个开放源码的软件,Tomcat得到了开放源码志愿者的广泛支持,它可以和目前大部分的主流HTTP服务器(如IIS和Apache服务器)一起工作,而且运行稳定、可靠、效率高[2]。
 Tomcat服务器除了能够运行Servlet和JSP,还提供了作为Web服务器的一些特有功能,如Tomcat管理和控制平台、安全域管理和Tomcat阀等。Tomcat已成为目前开发企业Java Web应用的最佳选择之一。
§1.3 论文结构安排
 本论文主要分为5章,各章节安排如下:
 第一章 绪论。主要介绍本次毕业设计的题目,以及本次毕业设计中所用到的主要几种软件。
 第二章 系统需求分析。这一章对本次设计的题目进行具体的需求分析。
 第三章 系统设计。这一章主要对系统的设计过程做出描述。
 第四章 系统实现。这一章主要描述本次设计功能的具体实现。
 第五章 系统测试。这一章主要对系统的测试过程做出描述。
§1.4 作者在本次设计中的工作
 在本次毕业设计的实现过程中,作者的主要工作包括:整个系统静态页面的设计和实现;经过反复论证和分析,确定了数据库表以及表与表之间的关系,建立了数据库;完成了系统的需求分析,系统设计,详细设计;对系统功能做出了周密的测试,并且根据测试结果对系统功能做出了调整和改进。
第2章 系统需求分析
§2.1 系统可行性分析
 系统的可行性分析主要是技术可行性,经济可行性,操作可行性。
§2.1.1 技术可行性
 在目前的网络管系统开发中,主要分成两大编程体系,一种是基于浏览器的B/S机构,另一种是C/S结构。考虑到本系统是基于B/S模式的,作者可以通过JSP+SQL server 2000+TOMCAT的开发体系来开发。先在SQL server 2000上建立好数据库,然后在编写HTML、JSP浏览器端和服务器端语言并传送到服务器,服务器将编译好的服务端页面再传回给浏览器端。
 TOMCAT的特点:适合做中小型企业的应用服务器,它占用内存少;能在任何支持JDK(1.4及更高版本)的系统上运行;开放源代码,并且免费易于调试;兼容性良好。最后,经过论证,认为此开发体系是可行的。
§2.1.2 经济可行性
 现在的网络教学管理系统大部分还处于手工阶段,手工劳作不仅耗费了大量的时间,人为出错的几率也比较大,这势必将影响到整个实验教学的质量,一个错误甚至可能给学生和老师带来很大的影响,直接影响到学生的成绩。因此,建立一个合理的实验教学管理系统既要体现投资效益原则,也要保证系统质量和性能,尽量使用性能价格比比较高的硬件和软件,从而达到节约投资和增加效益的目的。基于B/S模式的管理信息系统便是最佳的选择,利用先进的计算机网络通信技术和强大的JAVA语言体系进行开发,不仅能提供一致的用户界面,还能实现客户端零配置和客户端平台无关性;服务器端是系统开发、维护和升级的所在,能够较容易地升级、扩展和集成系统。这样,在提高了学生和教职工工作效率的同时,也减轻了学校在信息管理工作方面的开销。开发此系统的价值远远超过了开发系统的成本,因此,作者认为进行此项开发是可行的。
§2.1.3 操作可行性
 随着Internet的日益普及以及相关技术的发展,B/ S(浏览器/服务器)模式逐渐成为现代MIS的首选方案。B/S模式是一种从传统的二层C/S(客户机/服务器)结构发展起来的新的网络结构模式。它的出现克服了C/S模式下MIS系统的种种缺陷,如:客户端软件过于庞大,维护困难;客户端应用系统依赖于其应用平台;系统相对封闭,同一应用系统需要多种操作系统版本;各个企业或部门的MIS没有标准的用户界面和操作流程,使用前需要专门培训,不利于推广和普及等等。它还极大地改变了基于C/S结构模式的MIS的结构设计、开发环境和应用环境,成为具有良好经济效益且易于推广的结构模式。在B/S模式下,用户只需要在自己的办公地点,通过浏览器就可以和远端服务器进行通讯,操作十分简便、快捷,并且不受地点的约束。
 随着网络技术的日新月异,网络技术的应用已经进入了我们生活的每一个方面,网络给我们的学习和生活带来了极大的便利。在现在的学校中,几乎每一个细节都被网络技术所渗透,无论是选课还是成绩的发布与查询,都是通过网络来进行,这极大地方便了广大的师生,也极大地节约了教学的成本。与传统的实验教学管理系统相比,网络管理系统有着交流方便,操作简单等许多优点,它给老师和学生都带来了极大的便利。这一系统的开发能够给学校的实验教学带来这么多的便利,所以作者在本次毕业设计中选择了《实验教学网络管理系统》这一题目。
§2.2 系统功能需求分析
    作为实验教学管理系统,首先需要具有选题的功能,学生在登陆以后可以对现有的实验题目进行查看,在确定自己感兴趣的试验题目后可以进行选题的操作。为了方便学生的选题,在选题的页面具有查询的功能,可以通过题目或者是教师进行查找,方便学生的选题需要。学生选好了题目以后再做完实验得出结果之后,可以将实验结果上传至服务器,以方便老师的查看,在遇到困难的时候可以通过向老师提问来寻求解决方案。
    由于本系统隶属于学校的教学管理系统,所以数据库中的学生和教师信息都应该是由学校负责提供的,管理员也可以通过添加来增加学生和教师的基本信息,以应付突发的事件。为了满足管理员增加的需要,管理员在必要时可以添加新的管理员。但是为了保证学校数据安全,本系统的管理员没有删除用户的权限。
教师将新实验的申请提交以后,需要经过管理员的审核以后才能发布到学生可选题目列表中。
    教师在本系统中的主要任务是申请实验,察看学生实验结果,以及对学生的提问及时回答。当老师有了增加新实验的准备以后可以将新实验的信息提交给系统,供管理员审查。教师可以对学生提交的实验结果进行查看,并对学生提出的问题进行及时解答。
§2.3 系统数据流图
 根据系统需求分析,得到系统数据流图如图2.1所示。

图2.1 系统数据流图
§2.4 数据字典
 数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。其作用是在软件分析和设计的过程中给人们提供关于数据的描述信息[4]。
 根据对上面数据流图的分析,得到本次系统得主要数据字典如下图2.2-2.7所示:
 
名字:实验编号
别名:
描述:唯一的标识一个实验的一个关键域
定义:实验编号=11{数字}11
位置:实验申报信息
      实验审查信息
      选题信息
图2.2 实验编号数据字典
名字:实验申报信息
别名:实验申请信息
描述:教师申报实验时需要提交的信息表
定义:实验编号=实验编号+教师编号+介绍论文
位置:实验信息表
图2.3 实验申报信息数据字典
名字:实验结果
别名:
描述:学生提交给系统得实验结果
定义:实验结果=实验编号+学生编号+结果论文
位置:实验结果表
图2.4 实验结果数据字典
名字:实验开放状态
别名:
描述:某个实验是否通过审查的标志
定义:实验开放状态=0{数字}4
位置:实验信息表
图2.5 实验开放状态数据字典
名字:问题信息
别名:提问信息
描述:学生提问时提交给系统的信息
定义:问题信息=学生编号+提交时间+问题
位置:问题表
图2.6 问题信息数据字典
名字:回复信息
别名:答案信息
描述:教师回答的信息
定义:答案信息=教师编号+提交时间+答案
位置:回答表
图2.7 回复信息数据字典
第3章 系统设计
§3.1 系统功能设计
 经过对实验教学网络管理系统地分析,设计出了系统地大体结构。整个系统由管理员功能模块,教师功能模块以及学生功能模块3部分组成。其各个功能模块的具体功能如下:
 1.管理员功能模块包括添加新管理员、添加新教师、添加新学生和实验审批的功能。
 2.教师功能模块包括新实验的申请、试验结果的查看以及回答学生提问的功能。
 3.学生功能模块包括实验选题、实验结果上传和在线提问的功能。
作为一个实验教学管理系统,其主要的功能就是对于实验教学的管理。学生
在取得合法的用户身份登陆系统以后可以实现选题,选题以后再实验结果出来以后可以将实验结果上传到服务器等待教师的审查。教师在登陆系统以后可以实现申请新实验,察看学生实验结果以及回答学生提问的功能。管理员则可以对教师提交的新实验进行审查,检查是否符合学生选题的要求,当符合要求时,将实验发布供学生选择。
§3.2 系统总体结构
    根据以上对于整个系统的分析以及功能设计,作者得出了系统的总体结构图,如图3.1所示。

 图3.1系统功能模块图
§3.2 数据库概要设计
§3.2.1 概念设计
 实体——联系方法(Entity—Relationship Approach)是最常用的表示概念性数据模型的方法。这种方法使用E-R图来描述现实世界中的实体,而不涉及这些实体在系统中的实现方法,即使不熟悉计算机技术的用户也能理解它。系统的E-R图如图3.2所示。
 
 图3.2 系统E-R图
 根据E-R图中的实体,画出每个实体的属性图,如图3.3-3.7所示:
 
 图3.3 学生实体属性图
 
 图3.4 教师实体属性图
 
 图3.5 管理员实体属性图
 
 图3.6 实验题目实体属性图
 
 图3.7 问答信息实体属性图
   本次系统得数据库采用了SQL2000数据库系统完成,在参考了学校一般系统得数据库设计的基础上,结合本系统的特点,做出了本系统数据库各表之间的关系图,如图3.8所示。

图3.8 实验教学网络管理系统各表关系图
§3.2.2 逻辑设计
 逻辑结构设计的任务就是把概念结构设计阶段设计好的基本E-R图,转换为逻辑结构。E-R图向关系模型转换的结果如下所示:(其中下划线为主键,波浪线为外键)
 管理员信息(管理员编号,密码,管理员姓名)
 学生信息(学号,密码,学生姓名,所选实验编号)
 教师信息(教师编号,密码,教师姓名)
 实验结果信息(文件编号,学生编号)
 问题信息(提问学生编号,提问时间,问题)
 答案信息(回答教师编号,回答时间,答复)
 实验说明信息(实验编号,上传教师编号)
 实验信息(实验编号,指导教师编号,实验名称,开放状态)
§3.2.3 物理设计
 本系统的数据库通过SQL Server的企业管理器生成,主要包含了admin,student,teacher,result,questions,instruction,experitions,answers8个表。它们的具体字段设置如表3.1—3.8所示。
 
字段变量名 类型 长度 关键字类型 默认值
管理员编号 char 10 Primary Key —
密码 char 10 — —
管理员姓名 char 10 — —
表3.1管理员信息表
字段变量名 类型 长度 关键字类型 默认值
学生编号 char 10 Primary Key —
密码 char 10 — —
选择实验编号 char 11 — 0
学生姓名 char 10 — —
表3.2 学生信息表
字段变量名 类型 长度 关键字类型 默认值
教师编号 char 10 Primary Key —
密码 char 10 — —
教师姓名 char 10 — —
表3.3 教师信息表
字段变量名 类型 长度 关键字类型 默认值
文件编号 Int 4 Primary Key —
学生编号 char 10 — —
表3.4 实验结果信息表
字段变量名 类型 长度 关键字类型 默认值
提问学生编号 char 10 Primary Key —
提问时间 char 20 Primary Key —
问题 char 200 — —
表3.5 提问信息表
字段变量名 类型 长度 关键字类型 默认值
实验说明编号 Int 4 Primary Key —
上传教师编号 char 10 — —
表3.6 实验说明信息表
字段变量名 类型 长度 关键字类型 默认值
实验编号 char 11 Primary Key —
指导教师编号 char 10 — —
实验名称 char 10 — —
开放状态 Int  4 — 0
表3.7 实验信息表
字段变量名 类型 长度 关键字类型 默认值
回答教师编号 char 10 Primary Key —
回答时间 char 20 Primary Key —
回复 char 200 — —
表3.8 回复信息表
第4章 系统实现
§4.1 数据库连接实现
 在系统开发过程中,因为要多处用到对数据库的操作,如果这些操作在每次用到时在每个JAVA程序中去实现,将非常繁琐,因此,为了简化这些操作,作者在开发时设计了一个可重用组件:dbConn .java,把对数据库的操作都封装在在这个类中,需要用到时生成对象调用便可,其工作流程图如图4.1所示。

图4.1数据库访问流程图
§4.2 管理员功能模块实现
 管理员在登陆以后可以实现添加新管理员、添加新教师、添加新学生和实验审批3个功能。所有用户根据提示选择适合自己身份的登陆框填写。其中每个登陆框都是一个(form),他们的action事件分别定义给了3个JSP文件。由这些JSP程序来检验用户的合法性。
 所有用户在登陆之前都无法进行操作,只有在成功登陆系统以后才能实现各项功能。
 登陆功能的流程图如图4.2所示。
 
 图4.2 登陆流程图
 登陆的功能是由下面的代码实现的:
 String user="";
 String password="";
 user=request.getParameter("tea_id");
 password=request.getParameter("tea_password");
 首先定义两个变量来获取用户提交的用户名和密码。
 String sd="select *from teacher where 教师编号='"+user+"' and 密码='"+password+"'" ;
 rs=stmt.executeQuery(sd);
  out.print("<br>");
      if(rs.next()){
    out.println("登录成功");
    out.print("<br>");
    String t=rs.getString("教师编号");
    response.sendRedirect("tea_manage.jsp");
         session.setAttribute("teacher",t);
   }else{
     response.sendRedirect("erron.htm");
   }
§4.2.1 人员管理功能实现
 管理员登陆后可以进行管理员、教师与学生的添加。下面以添加学生为例对此功能的实现做出简单介绍。管理员登陆以后先输入想要添加的学生信息,当输入信息合法并且与数据库数据没有重复时就添加成功,否则返回重新添加。添加流程图如图4.3所示。
 
 图4.3 添加学生流程图
 添加用户的界面就是一个表单(form),然后在表单中画出如图所示的表格(Table),当用户按照要求填好了表单之后点击提交,则触发Action事件,到Stu_acceptadd.jsp。表单中规定了学生编号和姓名不能为空。
 这部分功能由以下代码所实现:
   if (form1.stu_id.value== "")
     {
      alert("学号不能为空,请输入学号!");
      form1.stu_id.focus();
      return false;
     }
       if (form1.stuname.value== "")
     {
      alert("姓名不能为空,请输入姓名!");
      form1.stuname.focus();
      return false;
     }
 密码与确认密码必须相同。否则要出现错误提示。其功能的实现主要由以下代码实现:
 if (form1.password.value!= form1.repassword.value)
     {
     alert("密码与确认密码不同");
     form1.password.focus();
      return false;
     }
 当输入的信息全部符合规定的话,则跳转到Stu_acceptadd.jsp,如果学号不存在则将信息添加到数据库中,其功能的实现是通过以下代码:
   String strstu_id=request.getParameter("stu_id");
   String strstuname=request.getParameter("stuname");
   String strpassword=request.getParameter("password");
 首先定义3个变量从提取从刚才表单中提取的数据。
 <%
 Connection conn=null;
 Statement stmt=null;
 ResultSet rs=null;
 try{
   Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");  }
   catch(ClassNotFoundException ce)
 try{
   conn=DriverManager.getConnection("jdbc:odbc:libwm");  stmt=conn.createStatement();
   String sql="select 学生编号 from student where 学生编号='"+strstu_id+"'";
 连接数据库,查询数据库中是否已经存在添加的学生编号。
   String sql1="INSERT INTO studentTable(学生编号,学生姓名,密码)" + " VALUES ("+strstu_id+"',"+strstuname+"','"+strpassword+"')";
   rs=stmt.executeQuery(sql);  if(rs.next()){                                                          out.print("<a href=AddStu.jsp>此学号已存在,请返回重新添加!</a>");
   }
   else{
   stmt.executeUpdate(sql1);
   response.sendRedirect("succ.jsp");
   }
 添加新教师和添加新管理员与添加学生的流程完全相同,在此就不多做介绍。
§4.2.2 实验审批功能实现
 教师在教师功能模块中可以提交新实验信息到数据库供管理员审查。管理员可以看到所有没有经过审批的实验的名称以及教师提交的实验介绍等材料,审查通过以后可以将实验开放状态设为开放,供学生选题。
 实验审批功能流程图如图4.4所示。
         图4.4 实验审批功能流程图
 当管理员察看过此实验的资料以后,可以通过点击按钮实现实验开放,本功能实现的关键代码如下:
    conn=DriverManager.getConnection("jdbc:odbc:libwm");
 stmt=conn.createStatement
 strSQL = "SELECT count(*) as recordcount FROM experiments";
 rs = stmt.executeQuery(strSQL);
 if (rs.next()) totalrecord = rs.getInt("recordcount");
 //输出记录
 strSQL="SELECT * FROM experiments where 开放状态=0";
 rs=stmt.executeQuery(strSQL);
 此为输出实验信息代码。
 Connection conn=null;
 Statement stmt=null;
 ResultSet rs=null;
 try{
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}catch(ClassNotFoundException ce){
  out.println(ce.getMessage());
}
 try{
    request.setCharacterEncoding("gbk");
    String id=request.getParameter("id");
    conn=DriverManager.getConnection("jdbc:odbc:libwm");
    stmt=conn.createStatement();
    String sql="update experiments set 开放状态='1' where 实验编号='"+id+"' ";
 stmt.executeUpdate(sql);
§4.3 教师功能模块实现
 教师登陆以后可以实现新实验申请、学生实验结果的查看以及回答学生提问的功能。在教师登陆中为了使该教师登录后不管跳转到哪个合法页面都应该呈现登录状态,在教师登陆过程中定义了一个session变量,用它来保存教师的编号。在得到教师信息的同时将它的登陆信息写到SESSION中。这个主要是语句session.setAttribute("id",id);来实现[5]。
§4.3.1 实验申请功能实现
 合法的教师登陆以后可以将准备好的实验资料提交给系统,等待管理员审批通过以后就可以将实验发布。教师需要提交的资料包括实验名称,实验编号和实验要求&描述。其中实验编号是一个11位数字包括8位教师编号和3位实验编号,实验要求&描述是由教师事先准备好的DOC文件,可以直接上传到服务器,以方便管理员的审查和学生选题时察看。
 实验申请功能流程图如图4.5所示:
 
 图4.5 实验申报流程图
 实验申请与之前的添加用户差不多就是一个表单(FORM),然后通过action事件将数据添加到数据库,并且把上传的文件保存到指定的文件夹。其action事件为exp_apply1.jsp,其中,申请教师编号通过session得到,代码如下:
<%!String strapp_tea_id;%>
<%strapp_tea_id=(String)session.getAttribute("teacher");%>
 由于需要实现教师上传DOC文件,所以我在网络上找到了java.io.* ,
com.jspsmart.upload.*这两个类[7],他们的具体调用方法如下:
// 新建一个SmartUpload对象 
SmartUpload su = new SmartUpload();
// 上传初始化
su.initialize(pageContext);
//限制每个上传文件的最大长度。
su.setMaxFileSize(10000000);
//只能上传doc,jsp,asp,htm,html,文件
su.setAllowedFilesList("doc,jsp,asp,htm,html,,");
// 上传文件
su.upload();
//定义i初值为0
int i=0;
com.jspsmart.upload.File file=su.getFiles().getFile(i);
Connection conn=null;
Statement stmt=null;
ResultSet rs=null;
//定义文件大小初值为0
int file_size=0;
//定义文件名初值为空
String file_name="";
//调用su.getFiles().getFile(i)中getSize()方法得到文件大小
file_size=file.getSize();
//调用su.getFiles().getFile(i)中getName()方法得到文件名
file_name=file.getFileName();
 当没有输入论文时显示“没有选择任何论文”并且提示返回添加,实现代码如下:
  if(file_name.equals("")){  
 out.print("抱歉!您没有选择任何论文!<br><br><input type='button' value='返回添加' onclick='history.go(-1);'>");
}
 当输入合法时开始调用SQL语句查询数据库中是否已经存在此实验,如果有则弹出报错返回页面,如果没有则将数据添加到experiments和instruction两个表中,此段代码在上边的介绍中有雷同,在此不做更多介绍。当数据添加成功之后,系统自动生成与实验编号相同的文件夹,并将上传的论文保存在其中,其代码如下:                     
 String path=request.getRealPath("/instruction /");
 java.io.File fp=new java.io.File(path+"/"+strapp_exp_id);
 fp.mkdir();
 file.saveAs(path+"/"+strapp_exp_id+"/"+file_name);
§4.3.2 实验结果查看功能实现
 学生在实验结束后可以将实验结果上传到教师申请实验时创建的文件夹中,教师登陆以后可以察看学生上传的实验结果。功能流程图如图4.6所示。
 
 图4.6 实验结果查看功能流程图
§4.3.3 问题回复功能实现
 教师登陆以后可以看到所有学生的问题以及教师的回复,当有没有回复的学生提问时,教师可以通过提交回复将回复提交给系统供学生参考。
 功能流程如图4.7所示。
 
 图4.7 问题回复功能流程图
 功能实现的关键代码如下:
 <%!String tea_id;%>
 <%tea_id=(String)session.getAttribute("teacher");%>
 <%Calendar cal=Calendar.getInstance();
 int year=cal.get(Calendar.YEAR);
 int month=cal.get(Calendar.MONTH)+1;
 int date=cal.get(Calendar.DATE);
 int hour=cal.get(Calendar.HOUR_OF_DAY);
 int minute=cal.get(Calendar.MINUTE);
 String date1=year+"-"+month+"-"+date+"/"+hour+":"+minute;
 conn=DriverManager.getConnection("jdbc:odbc:libwm");//使用
DriverManager类的getConnection()方法来建立数据库连接
 stmt=conn.createStatement();
 String sql="INSERT INTO answers (回答教师编号,回答时间,回复)" + " VALUES ('"+tea_id+"','"+date1+"','"+answer+"')";
 stmt.executeUpdate(sql);//执行sql语句更新数据库
 response.sendRedirect("succ.jsp");//转向“succ.jsp”页
§4.4 学生功能模块实现
§4.4.1 实验选题功能实现
 学生登陆以后可以看到实验列表并且可以通过教师和实验名称进行查询,查询功能流程图如图4.8所示。
 
 图4.8 查询功能流程图
 查询功能实现的关键代码如下:
 <form action="exp_sel.jsp" method="post" >
               <input type="submit" name="Submit" value="查询">
               <input type="text" name="keywords">
               <select name="select">
           <option selected>实验名称</option>
           <option>指导教师</option>
         </select>
           </form>
 request.setCharacterEncoding("GBK");
 String str = request.getParameter("keywords");
 String stre=request.getParameter("select");
 //out.print(stre);
 if( str == null)
  str = "";
 try{
  conn=DriverManager.getConnection("jdbc:odbc:libwm");
  stmt=conn.createStatement(
   ResultSet.TYPE_SCROLL_INSENSITIVE,
   ResultSet.CONCUR_READ_ONLY);
  //算出总行数
  strSQL = "SELECT count(*) as recordcount FROM experiments WHERE 开放状态='1'";
  rs = stmt.executeQuery(strSQL);
  if (rs.next()) totalrecord = rs.getInt("recordcount");
  //输出记录
  strSQL="SELECT * FROM experiments WHERE 开放状态='1'";
  rs=stmt.executeQuery(strSQL);
 为了保证系统信息显示的可看性,页面采用了分页显示的技术,实现的代码如下[8]:
 Connection conn = null;
 Statement stmt = null;
 ResultSet rs = null;
 String strSQL = "";
 int PageSize =15 ;
 int Page = 1;
 int totalPage = 1;
 int totalrecord = 0;
 conn=DriverManager.getConnection("jdbc:odbc:libwm");
 stmt=conn.createStatement(
  ResultSet.TYPE_SCROLL_INSENSITIVE,
  ResultSet.CONCUR_READ_ONLY);
  if(totalrecord % PageSize ==0)// 如果是当前页码的整数倍
   totalPage = totalrecord / PageSize;
  else  // 如果最后还空余一页
   totalPage = (int) Math.floor( totalrecord / PageSize ) + 1;
  if(totalPage == 0) totalPage = 1;
  if(request.getParameter("Page")==null || request.getParameter("Page").equals(""))
   Page = 1;
  else
  try {
   Page = Integer.parseInt(request.getParameter("Page"));
  }
     catch(java.lang.NumberFormatException e){
  Page = 1;
  }
  if(Page < 1)  Page = 1;
  if(Page > totalPage) Page = totalPage;
  rs.absolute((Page-1) * PageSize + 1);
 当学生没有选题时可以通过点击按钮来实现实验选题。功能流图如图4.9所示。
 
 图4.9 选题功能流程图
 实验选题功能实现的关键代码如下:
 request.setCharacterEncoding("gbk");
 String id=request.getParameter("id");
 conn=DriverManager.getConnection("jdbc:odbc:libwm");
 stmt=conn.createStatement();
 String sql="update student set 选择实验编号='"+id+"'  where 学生编号='"+stu_id+"'  ";
 stmt.executeUpdate(sql);
§4.4.2 疑难提问功能实现
 学生登陆后可以向教师提问,并且可以看到教师给学生的回复。学生在提交提问的同时将提问的时间也提交给了服务器,以方便教师和学生查看提问和回答的时间。这部分功能是由java.util中的Calendar方法实现的[9]。
 提问功能流程图如图4.10所示。
 
 图4.10 提问功能流程图
 本功能实现的关键代码如下:
 <%!String stu_id;%>
 <%stu_id=(String)session.getAttribute("student");%>
 <%Calendar cal=Calendar.getInstance();
 int year=cal.get(Calendar.YEAR);
 int month=cal.get(Calendar.MONTH)+1;
 int date=cal.get(Calendar.DATE);
 int hour=cal.get(Calendar.HOUR_OF_DAY);
 int minute=cal.get(Calendar.MINUTE);
 String date1=year+"-"+month+"-"+date+"/"+hour+":"+minute;
   request.setCharacterEncoding("gbk");
   String question=request.getParameter("textarea");
 %>
 <%
 Connection conn=null;
 Statement stmt=null;
 ResultSet rs=null;
 try{
   Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");  }
   catch(ClassNotFoundException ce){
    out.println(ce.getMessage());
    }
 try{
   conn=DriverManager.getConnection("jdbc:odbc:libwm");  stmt=conn.createStatement();
  String sql="INSERT INTO questions (提问学生编号,提问时间,问题)" + " VALUES ('"+stu_id+"','"+date1+"','"+question+"')";
   stmt.executeUpdate(sql);
   response.sendRedirect("succ.jsp");
 }catch(SQLException e){
   out.print(e.getMessage());
 }
   finally{
     stmt.close();
  conn.close();
  }
§4.4.2 实验结果上传功能实现
 学生在得到实验结果以后可以将实验结果上传到服务器供教师查看。学生在实验结束后可以将实验结果上传到教师申请实验时创建的文件夹中。实验结果上传功能流程图如图4.11所示。
 
 图4.11 实验结果上传功能流程图
 此处代码与教师上传文件时代码原理相同,在此就不作更多描述。

第5章 系统测试
§5.1 测试环境
 硬件环境:
(1) CPU: P4 1.4G
(2) 内存:512M(3) 硬盘:80G 7200转(4) 交换机及网卡: 10/100M 交换机及10/100M 兼容网卡 软件环境:
(1) 操作系统:Microsoft Windows XP
(2) 软件环境:jsp、sql2000、DreamWeaver、tomcat、java
§5.2 系统功能测试
§5.2.1 人员管理功能测试
 此部分的测试主要是对用户登录,以及管理员添加用户的测试。
 对用户登录的测试用例如表5.1所示.
测试功能 测试数据 预期结果 实际结果 比较
学生登陆 学号:20023738
密码:1234 输入不合法 学号和密码匹配不对,请核对 错误的密码(如图5.1所示)
学生登录 学号:20023738
密码:004910 输入合法 输入合法,登录成功 输入的数据为正确密码,登录成功
学生登录 学号:20023738
密码: 输入不合法 提示输入密码 没有输入密码
 表5.1 学生登录测试表
 
 图5.1 登录出错页面
 对教师登录和管理员登录的测试与学生登录相同。
 对管理员添加新用户的测试用例如表5.2所示。
测试功能 测试数据 预期结果 实际结果 比较
学生添加 学号:20023738
密码:1234
重复密码:1234 输入不合法 学号已存在。 学号已存在。(如图5.2)
学生添加 学号:20020001
密码:123
重复密码:321 输入不合法 密码与重复密码不同。 密码与重复密码不同。
(如图5.3)
学生添加 学号:20020001
密码:123
重复密码:123 输入合法 添加成功。 添加成功。
 表5.2 添加学生测试表
 
 图5.2 学号存在出错图
 
 图5.3 密码不同出错图
 添加管理员与教师和添加学生测试相同,在此就不作更多描述。
§5.2.2 选题功能测试
  选题系统为本系统的一个重要模块,功能主要包括实验申报,实验审批,实验查询,实验选题4部分。实验申报测试用例如表5.3。
测试功能 测试数据 预期结果 实际结果 比较
实验申报 申请实验编号:20010001002
实验名称:VC++
实验描述文件:20010001001.doc 输入合法 添加成功。 添加成功。
实验申报 申请实验编号:20010001002
实验名称:VC++
实验描述文件:20010001001.txt 输入不合法 文件添加失败。 文件格式不合格。
表5.3 实验申报测试表

图5.4 申报成功效果图

图5.5 文件格式不合格效果图
 实验审批方面经过测试,只有当实验新申报时才能在审批页面显示,经过审批的实验不再在此页面显示,经过测试,功能实现。
 实验查询可以通过实验名称和指导教师查询,测试用例如表5.4所示。
测试功能 测试数据 预期结果 实际结果 比较
通过课题名称 基于。。 输入合法 没有你要查询的结果 数据库中无该数据
通过课题名称 Vc++ 输入合法 查询成功,列出该用户信息 成功查询到数据库中数据
通过指导教师 王 输入合法 没有你要查询的结果 数据库中无该数据
 通过指导教师 张 输入合法 查询成功,列出该用户信息 成功查询到数据库中数据
表5.4实验查询测试表
   实验选题部分测试用例如表5.5所示。
测试功能 测试数据 期望结果 实际结果
选题 学号:20023738 选题成功。 选题成功。(如图5.6所示)
重复选题 学号:20023738
实验号:
20010001002 不能选择该课题 不能选择第2题,已经选择了第一题。
表5.5 实验选题测试表

图5.6 选题成功效果图
§5.2.3 实验结果批阅功能测试
 实验结果批阅系统是本系统得一个重要功能模块,主要实现学生上传和教师察看实验结果。学生只有选题以后才能上传结果文件,而且上传的文件只能是doc,jsp,asp,htm,html,文件,上传其他文件时不能上传。测试用例表入表5.6。
测试功能 测试数据 期望结果 实际结果
上传文件类型过滤 上传文件:123.exe
上传学号:20023738 上传失败。 文件类型不符合规定。(如图5.7所示)
上传成功 上传文件:123.DOC
上传学号:20023738 上传成功。 上传成功。(如图5.8所示)
 表5.6 实验结果上传
 
 图5.7 文件格式出错效果图
 
 图5.8 实验结果上传成功效果图
 教师登录以后就可以看到自己带的实验的结果。此处功能经过测试可以成功实现。
§5.2.4 在线交流功能测试
 学生登录后可以通过进入在线提问页面将自己的问题提交给老师,并且可以看到老师留言中给自己和其他同学问题的解答,这样当遇到相同问题的时候就可以避免重复提问,老师也可以同时看到所有学生提问和教师回答。在在线提问何回答页面中用户只需要提出问题或给出答案,系统自动可以获取提问人或是回答者的ID以及当时的时间。提问问题不能超过200字节,否则出现数据库溢出错误。经过测试,此部分功能可以正常实现。
§5.3. 测试结果分析
 通过对系统的测试,发现部分问题,对不足之处进行了修改,在系统中为了增加实用性,对系统中数据的输入进行了要求,需要输入合法信息才能成功输入数据。
 通过测试证明系统功能基本能按照预期要求得到实现。

总 结
     至此,实验教学网络管理系统经过不断的分析,设计,修改,在指导老师的帮助和指导下终于完成了。作者以实际应用为开发背景,运用软件工程原理和开发方法,采用当前网络开发主流技术,结合JSP和SQL数据库技术,设计并开发了一个基于B/S模式的实验教学管理系统。首先对开发系统进行了需求分析,得到系统功能需求、数据流图和数据字典。随后对系统进行了概要设计和详细设计,在概要设计中主要进行了系统功能模块划分,将系统划分为了管理员控制模块、教师控制模块和学生控制模块三大模块,其中管理员的权限包括对新教师和新学生的注册,对新管理员的注册和对实验题目的审批;教师的权限包括实验题目的申请,学生实验结果的查看,回答学生提问;学生权限包括选择实验题目,上传实验结果和向教师提问。概要设计中还进行了系统总体结构设计,系统数据结构设计,系统安全设计等。详细设计主要包括系统数据库访问的实现,主要功能模块的具体实现,模块实现关键代码等。最后对系统进行了功能测试,并对测试结果进行了分析。
 世界上没有完美的人,系统也是一样,本系统在经过作者的努力开发后,虽然能够基本实现预期目标,但是也存在一些不足之处:
由于作者美工水平有限,导致本系统的界面不够友好,界面不够美观。
由于作者编程习惯存在问题,导致系统有些代码产生冗余。
在系统安全方面,本系统还存在一些漏洞。
 在本次的毕业设计的过程中我也学习到了很多的知识,以前在课堂上和书本上学到的理论知识得到了具体的应用,加深了对所学知识的理解,并且让我认识到了自己在编程以及美工方面的不足。但是让我感到欣慰的是在许多软件的应用方面自己去的了不小的收获,比如在网站发布上用到的Tomcat,界面开发和代码编写是用到的Dream Weaver我对这些软件的应用水平都有了更进一步的提高,甚至在论文的写作过程中,我对Word的应用水平都有了不小的提高。可以说这次毕业设计的过程对我的动手能力和实际水平都有很大的提高作用。
参考文献
[1]石志国,薛为民,董洁.《JSP应用教程》.清华大学出版社,2004-10
[2]孙卫琴,李洪成.《Tomcat 与 Java Web开发技术详解》.电子工业出版社,2005-3
[3]李春葆,曾慧.《SQL Server 2000应用系统开发教程》. 清华大学出版社.2005
[4]张海藩.《软件工程导论》.清华大学出版社.2003-1
[5]韩东.JAVABEAN在JSP中的应用[J].计算机应用,2004年,Vol.10 No.2:17-19
[6]姜楠.《Dreamweaver MX2004完美网页设计与制作》.中国青年出版社.2004-5
[7]纪琳.软件工程的研究与应用[J].福建电脑,2004
[8]李华飚, 郭英奎等.《Java中间件开发技术》.中国水利水电出版社.2005
[9] 何雄等.《JSP网络程序设计》.人民邮电出版社.2000-12
[10]贾更新,赵立超.《JSP 完全实例教程》.电子工业出版社.2001.1
[11] Stephen Ruth and Min Shi, George Mason University, Virginia, USA. Distance Learning in Developing Countries: Is Anyone Measuring
Cost-Benefits?[J].TechKnowLogia.May/June, 2001
[12] Colin Pattinson. A simulated network management information base[J]. Journal of Network and Computer Applications (2000) 23, 93–107
致 谢
 本次作者的毕业设计是由老师指导的,在他的悉心指导下,作者开阔了眼界,明确了思路.指导老师严格的治学精神和忘我的工作态度给作者留下了深刻的影响,并且将使作者终身受益.在整个的设计过程中,唐老师提出了许多宝贵的建议和指导,使作者能够顺利的完成整个设计,在此,谨向唐老师表示由衷的感谢.
 在此临近毕业之际,还要感谢在大学生活中教育和培养过作者的众多老师,正是在他们的谆谆教诲下使我顺利完成了大学的基础知识和专业知识的学习,在此,向各位在大学生活中指导过作者的老师表示衷心感谢.
 最后,向各位在毕业设计中给与过作者帮助的所有老师同学表示感谢!


以上为本篇毕业论文范文JSP实验教学管理系统(文档 设计)的介绍部分。
本论文在计算机论文栏目,由论文网(www.zjwd.net)整理,更多论文,请点论文范文查找

毕业论文降重 相关论文

收费专业论文范文
收费专业论文
汉语言文学论文
物理学论文
自动化专业论文
测控技术专业论文
历史学专业论文
机械模具专业论文
金融专业论文
电子通信专业论文
材料科学专业论文
英语专业论文
会计专业论文
行政管理专业论文
财务管理专业论文
电子商务国贸专业
法律专业论文
教育技术学专业论文
物流专业论文
人力资源专业论文
生物工程专业论文
市场营销专业论文
土木工程专业论文
化学工程专业论文
文化产业管理论文
工商管理专业论文
护理专业论文
数学教育专业论文
数学与应用数学专业
心理学专业论文
信息管理专业论文
工程管理专业论文
工业工程专业论文
制药工程专业论文
电子机电信息论文
现代教育技术专业
新闻专业论文
艺术设计专业论文
采矿专业论文
环境工程专业论文
西班牙语专业论文
热能与动力设计论文
工程力学专业论文
酒店管理专业论文
安全管理专业论文
交通工程专业论文
体育教育专业论文
教育管理专业论文
日语专业论文
德语专业论文
理工科专业论文
轻化工程专业论文
社会工作专业论文
乡镇企业管理
给水排水专业
服装设计专业论文
电视制片管理专业
旅游管理专业论文
物业管理专业论文
信息管理专业论文
包装工程专业论文
印刷工程专业论文
动画专业论文
环境艺术专业论文
信息计算科学专业
物流专业论文范文
人力资源论文范文
营销专业论文范文
工商管理论文范文
汉语言文学论文范文
法律专业论文范文
教育管理论文范文
小学教育论文范文
学前教育论文范文
财务会计论文范文

电子商务论文范文

上一篇:网络书店销售管理系统 下一篇:基于Java的访问远程数据库的高效..

最新论文

精品推荐

毕业论文排版

热门论文


本站简介 | 联系方式 | 论文改重 | 免费获取 | 论文交换

本站部分论文来自网络,如发现侵犯了您的权益,请联系指出,本站及时确认删除 E-mail:229120615@qq.com

毕业论文范文-论文范文-论文同学网(www.zjwd.net)提供计算机论文毕业论文,毕业论文范文,毕业设计,论文范文,毕业设计格式范文,论文格式范文

Copyright@ 2010-2024 zjwd.net 毕业论文范文-论文范文-论文同学网 版权所有