免费预览已结束,剩余35页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 摘摘 要要 现在的实验教学网络管理系统存在实验题目分发慢,文档交换不方便,师 生交流困难等方面的问题。为了解决现有系统的这些问题,特开发新的实验教 学网络管理系统。 作者以实际应用为开发背景,运用软件工程原理和开发方法,采用当前网 络开发主流技术,结合 JSP 和 SQL 数据库技术,设计并开发了一个基于 B/S 模 式的实验教学管理系统。首先对开发系统进行了需求分析,得到系统功能需求、 数据流图和数据字典。随后对系统进行了概要设计和详细设计,在概要设计中 主要进行了系统功能模块划分,将系统划分为了管理员控制模块、教师控制模 块和学生控制模块三大模块,其中管理员的权限包括对新教师和新学生的注册, 对新管理员的注册和对实验题目的审批;教师的权限包括实验题目的申请,学 生实验结果的查看,回答学生提问;学生权限包括选择实验题目,上传实验结 果和向教师提问。概要设计中还进行了系统总体结构设计,系统数据结构设计, 系统安全设计等。详细设计主要包括系统数据库访问的实现,主要功能模块的 具体实现,模块实现关键代码等。最后对系统进行了功能测试,并对测试结果 进行了分析,在总结、分析的基础上,指出了系统 存在的不足及需要改进的地 方,为今后开发类似系统提供借鉴和帮助。 本系统界面友好,操作方便,能够基本满足实验教学管理的要求。 关键词关键词:实验教学管理系统;JSP;三层结构 2 AbstractAbstract 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 students 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. KeyKey wordswords:Experiment Education Management System;JSP;Three-tier structure 3 目目 录录 第第 1 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 2 章章 系统需求分析系统需求分析3 2.1 系统可行性分析 3 2.2 系统功能需求分析 4 2.3 系统数据流图 5 2.4 数据字典 5 第第 3 3 章章 系统设计系统设计8 3.1 系统功能设计 8 3.2 系统总体结构 8 3.2 数据库概要设计 9 3.2.1 概念设计 .12 3.2.2 逻辑设计 .12 3.2.3 物理设计 .12 第第 4 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 5 章章 系统测试系统测试29 5.1 测试环境 .29 5.2 系统功能测试 .29 5.2.1 人员管理功能测试 .29 5.2.2 选题功能测试 .29 5.2.3 实验结果批阅功能测试 .29 4 5.2.4 在线交流功能测试 .29 5.3. 测试结果分析 33 总总 结结34 参考文献参考文献35 致致 谢谢36 1 第第 1 1 章章 绪绪 论论 1.11.1 选题背景选题背景 现在,网络越来越多的走进人们的生活当中,特别是在学校的管理上,许 多工作都是通过网络来操作。学校的多数工作,例如:选课,4、6 级报名等工 作都是通过学校的网站来完成。网络给学生和老师都带来了极大的便利,老师 和学生可以通过网络非常方便的进行交流以至于文档交换,这为实验教学网络 管理系统的实现创造了条件。本次毕业设计的选题实验教学网络管理系 统即是通过 JSP 以及数据库技术开发出来的,基于 B/S 模式的一个教学管理 系统。下面就让我们来对这个毕业设计进行初步的认识。 1.21.2 开发技术开发技术 本系统所涉及的开发技术主要是指 JSP 技术和 TOMCAT。 .1 JSPJSP 技术技术 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。 .2 TOMCATTOMCAT Jakarta Tomcat 服务器是在 SUN 公司的 JSWDK(JavaServer Web DevelopmentKit,是 SUN 公司推出的小型 Servelet/JSP 调试工具)的基础上发 2 展起来的一个优秀的 Servlet/JSP 容器,它是 Apache-Jakarta 软件组织的一个 子项目。它不但支持运行 Servlet 和 JSP,而且还具备了作为商业 JAVA WEB 应 用容器的特征。 作为一个开放源码的软件,Tomcat 得到了开放源码志愿者的广泛支持,它 可以和目前大部分的主流 HTTP 服务器(如 IIS 和 Apache 服务器)一起工作, 而且运行稳定、可靠、效率高2。 Tomcat 服务器除了能够运行 Servlet 和 JSP,还提供了作为 Web 服务器的 一些特有功能,如 Tomcat 管理和控制平台、安全域管理和 Tomcat 阀等。 Tomcat 已成为目前开发企业 Java Web 应用的最佳选择之一。 1.31.3 论文结构安排论文结构安排 本论文主要分为 5 章,各章节安排如下: 第一章 绪论。主要介绍本次毕业设计的题目,以及本次毕业设计中所用到 的主要几种软件。 第二章 系统需求分析。这一章对本次设计的题目进行具体的需求分析。 第三章 系统设计。这一章主要对系统的设计过程做出描述。 第四章 系统实现。这一章主要描述本次设计功能的具体实现。 第五章 系统测试。这一章主要对系统的测试过程做出描述。 1.41.4 作者在本次设计中的工作作者在本次设计中的工作 在本次毕业设计的实现过程中,作者的主要工作包括:整个系统静态页面 的设计和实现;经过反复论证和分析,确定了数据库表以及表与表之间的关系, 建立了数据库;完成了系统的需求分析,系统设计,详细设计;对系统功能做 出了周密的测试,并且根据测试结果对系统功能做出了调整和改进。 3 第第 2 2 章章 系统需求分析系统需求分析 2.12.1 系统可行性分析系统可行性分析 系统的可行性分析主要是技术可行性,经济可行性,操作可行性。 .1 技术可行性技术可行性 在目前的网络管系统开发中,主要分成两大编程体系,一种是基于浏览器 的 B/S 机构,另一种是 C/S 结构。考虑到本系统是基于 B/S 模式的,作者可以 通过 JSP+SQL server 2000+TOMCAT 的开发体系来开发。先在 SQL server 2000 上建立好数据库,然后在编写 HTML、JSP 浏览器端和服务器端语言并传送到服 务器,服务器将编译好的服务端页面再传回给浏览器端。 TOMCAT 的特点:适合做中小型企业的应用服务器,它占用内存少;能在任 何支持 JDK(1.4 及更高版本)的系统上运行;开放源代码,并且免费易于调试; 兼容性良好。最后,经过论证,认为此开发体系是可行的。 .2 经济可行性经济可行性 现在的网络教学管理系统大部分还处于手工阶段,手工劳作不仅耗费了大 量的时间,人为出错的几率也比较大,这势必将影响到整个实验教学的质量, 一个错误甚至可能给学生和老师带来很大的影响,直接影响到学生的成绩。因 此,建立一个合理的实验教学管理系统既要体现投资效益原则,也要保证系统 质量和性能,尽量使用性能价格比比较高的硬件和软件,从而达到节约投资和 增加效益的目的。基于 B/S 模式的管理信息系统便是最佳的选择,利用先进的 计算机网络通信技术和强大的 JAVA 语言体系进行开发,不仅能提供一致的用户 界面,还能实现客户端零配置和客户端平台无关性;服务器端是系统开发、维护 和升级的所在,能够较容易地升级、扩展和集成系统。这样,在提高了学生和 教职工工作效率的同时,也减轻了学校在信息管理工作方面的开销。开发此系 统的价值远远超过了开发系统的成本,因此,作者认为进行此项开发是可行的。 .3 操作可行性操作可行性 随着 Internet 的日益普及以及相关技术的发展,B/ S(浏览器/服务器)模 式逐渐成为现代 MIS 的首选方案。B/S 模式是一种从传统的二层 C/S(客户机/服 务器)结构发展起来的新的网络结构模式。它的出现克服了 C/S 模式下 MIS 系统 4 的种种缺陷,如:客户端软件过于庞大,维护困难;客户端应用系统依赖于其 应用平台;系统相对封闭,同一应用系统需要多种操作系统版本;各个企业或 部门的 MIS 没有标准的用户界面和操作流程,使用前需要专门培训,不利于推 广和普及等等。它还极大地改变了基于 C/S 结构模式的 MIS 的结构设计、开发 环境和应用环境,成为具有良好经济效益且易于推广的结构模式。在 B/S 模式 下,用户只需要在自己的办公地点,通过浏览器就可以和远端服务器进行通讯, 操作十分简便、快捷,并且不受地点的约束。 随着网络技术的日新月异,网络技术的应用已经进入了我们生活的每一个 方面,网络给我们的学习和生活带来了极大的便利。在现在的学校中,几乎每 一个细节都被网络技术所渗透,无论是选课还是成绩的发布与查询,都是通过 网络来进行,这极大地方便了广大的师生,也极大地节约了教学的成本。与传 统的实验教学管理系统相比,网络管理系统有着交流方便,操作简单等许多优 点,它给老师和学生都带来了极大的便利。这一系统的开发能够给学校的实验 教学带来这么多的便利,所以作者在本次毕业设计中选择了实验教学网络管 理系统这一题目。 2.22.2 系统功能需求分析系统功能需求分析 作为实验教学管理系统,首先需要具有选题的功能,学生在登陆以后可以 对现有的实验题目进行查看,在确定自己感兴趣的试验题目后可以进行选题的 操作。为了方便学生的选题,在选题的页面具有查询的功能,可以通过题目或 者是教师进行查找,方便学生的选题需要。学生选好了题目以后再做完实验得 出结果之后,可以将实验结果上传至服务器,以方便老师的查看,在遇到困难 的时候可以通过向老师提问来寻求解决方案。 由于本系统隶属于学校的教学管理系统,所以数据库中的学生和教师信息 都应该是由学校负责提供的,管理员也可以通过添加来增加学生和教师的基本 信息,以应付突发的事件。为了满足管理员增加的需要,管理员在必要时可以 添加新的管理员。但是为了保证学校数据安全,本系统的管理员没有删除用户 的权限。 教师将新实验的申请提交以后,需要经过管理员的审核以后才能发布到学生可 选题目列表中。 5 教师在本系统中的主要任务是申请实验,察看学生实验结果,以及对学生 的提问及时回答。当老师有了增加新实验的准备以后可以将新实验的信息提交 给系统,供管理员审查。教师可以对学生提交的实验结果进行查看,并对学生 提出的问题进行及时解答。 2.32.3 系统数据流图系统数据流图 根据系统需求分析,得到系统数据流图如图 2.1 所示。 教师 实验信息 实验申报 实验信息 实验 察看实验 实验信息实验信息 学生 选题 察看选题 选题信息 实验信息 选题信息 选题信息 管理员 审查实验 实验信息 实验信息 在线交流 问答 问题和答案 问答 问答信息 图 2.1 系统数据流图 2.42.4 数据字典数据字典 数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素 的定义的集合。其作用是在软件分析和设计的过程中给人们提供关于数据的描 述信息4。 根据对上面数据流图的分析,得到本次系统得主要数据字典如下图 2.2- 2.7 所示: 6 名字:实验编号 别名: 描述:唯一的标识一个实验的一个关键域 定义:实验编号=11数字11 位置:实验申报信息 实验审查信息 选题信息 图 2.2 实验编号数据字典 名字:实验申报信息 别名:实验申请信息 描述:教师申报实验时需要提交的信息表 定义:实验编号=实验编号+教师编号+介绍文档 位置:实验信息表 图 2.3 实验申报信息数据字典 名字:实验结果 别名: 描述:学生提交给系统得实验结果 定义:实验结果=实验编号+学生编号+结果文档 位置:实验结果表 图 2.4 实验结果数据字典 名字:实验开放状态 别名: 描述:某个实验是否通过审查的标志 定义:实验开放状态=0数字4 位置:实验信息表 图 2.5 实验开放状态数据字典 名字:问题信息 别名:提问信息 描述:学生提问时提交给系统的信息 定义:问题信息=学生编号+提交时间+问题 位置:问题表 图 2.6 问题信息数据字典 7 名字:回复信息 别名:答案信息 描述:教师回答的信息 定义:答案信息=教师编号+提交时间+答案 位置:回答表 图 2.7 回复信息数据字典 8 第第 3 3 章章 系统设计系统设计 3.13.1 系统功能设计系统功能设计 经过对实验教学网络管理系统地分析,设计出了系统地大体结构。整个系 统由管理员功能模块,教师功能模块以及学生功能模块 3 部分组成。其各个功 能模块的具体功能如下: 1.管理员功能模块包括添加新管理员、添加新教师、添加新学生和实验审 批的功能。 2.教师功能模块包括新实验的申请、试验结果的查看以及回答学生提问的 功能。 3.学生功能模块包括实验选题、实验结果上传和在线提问的功能。 作为一个实验教学管理系统,其主要的功能就是对于实验教学的管理。学 生 在取得合法的用户身份登陆系统以后可以实现选题,选题以后再实验结果出来 以后可以将实验结果上传到服务器等待教师的审查。教师在登陆系统以后可以 实现申请新实验,察看学生实验结果以及回答学生提问的功能。管理员则可以 对教师提交的新实验进行审查,检查是否符合学生选题的要求,当符合要求时, 将实验发布供学生选择。 3.23.2 系统总体结构系统总体结构 根据以上对于整个系统的分析以及功能设计,作者得出了系统的总体结构 图,如图 3.1 所示。 9 管理 员模 块 教师 模块 学生 模块 实验教学网络管理系统 人 员 管 理 实 验 审 批 实 验 申 请 实 验 结 果 审 查 学 生 提 问 回 复 学 生 选 题 疑 难 提 问 试 验 结 果 上 传 添 加 管 理 员 添 加 学 生 添 加 教 师 实 验 查 询 确 认 选 题 图 3.1 系统功能模块图 3.23.2 数据库概要设计数据库概要设计 .1 概念设计概念设计 实体联系方法(EntityRelationship Approach)是最常用的表示概念 性数据模型的方法。这种方法使用 E-R 图来描述现实世界中的实体,而不涉及 这些实体在系统中的实现方法,即使不熟悉计算机技术的用户也能理解它。系 统的 E-R 图如图 3.2 所示。 10 学生 教师 选题实验题目 n 申报 1 n 教师 审批 m n 问答信息 回答 mn 1 提问 m n 图 3.2 系统 E-R 图 根据 E-R 图中的实体,画出每个实体的属性图,如图 3.3-3.7 所示: 学生 密码选题编号 学号姓名 图 3.3 学生实体属性图 教师 密码 教师编号姓名 教师电话教师邮箱 图 3.4 教师实体属性图 11 管理员 密码 ID姓名 图 3.5 管理员实体属性图 实验题目 指导教师开放状态 实验编号实验名称 图 3.6 实验题目实体属性图 问答信息 提问时间 回答时间 提问学生编号 回复教师编号 编号 问题 回复 图 3.7 问答信息实体属性图 本次系统得数据库采用了 SQL2000 数据库系统完成,在参考了学校一般系统 得数据库设计的基础上,结合本系统的特点,做出了本系统数据库各表之间的 关系图,如图 3.8 所示。 12 图 3.8 实验教学网络管理系统各表关系图 .2 逻辑设计逻辑设计 逻辑结构设计的任务就是把概念结构设计阶段设计好的基本 E-R 图,转换 为逻辑结构。E-R 图向关系模型转换的结果如下所示:(其中下划线为主键, 波浪线为外键) 管理员信息(管理员编号,密码,管理员姓名) 学生信息(学号,密码,学生姓名,所选实验编号) 教师信息(教师编号,密码,教师姓名) 实验结果信息(文件编号,学生编号) 问题信息(提问学生编号,提问时间,问题) 答案信息(回答教师编号,回答时间,答复) 实验说明信息(实验编号,上传教师编号) 实验信息(实验编号,指导教师编号,实验名称,开放状态) .3 物理设计物理设计 本系统的数据库通过 SQL Server 的企业管理器生成,主要包含了 admin,student,teacher,result,questions,instruction,experitions,answer s8 个表。它们的具体字段设置如表 3.13.8 所示。 13 字段变量名类型长度关键字类型默认值 管理员编号 char10Primary Key 密码 char10 管理员姓名 char10 表 3.1 管理员信息表 字段变量名类型长度关键字类型默认值 学生编号 char10Primary Key 密码 char10 选择实验编号 char110 学生姓名 char10 表 3.2 学生信息表 字段变量名类型长度关键字类型默认值 教师编号 char10Primary Key 密码 char10 教师姓名 char10 表 3.3 教师信息表 字段变量名类型长度关键字类型默认值 文件编号 Int4Primary Key 学生编号 char10 表 3.4 实验结果信息表 字段变量名类型长度关键字类型默认值 提问学生编号 char10Primary Key 提问时间 char20Primary Key 问题 char200 表 3.5 提问信息表 字段变量名类型长度关键字类型默认值 实验说明编号 Int4Primary Key 上传教师编号 char10 表 3.6 实验说明信息表 14 字段变量名类型长度关键字类型默认值 实验编号 char11Primary Key 指导教师编号 char10 实验名称 char10 开放状态 Int 40 表 3.7 实验信息表 字段变量名类型长度关键字类型默认值 回答教师编号 char10Primary Key 回答时间 char20Primary Key 回复 char200 表 3.8 回复信息表 15 第第 4 4 章章 系统实现系统实现 4.14.1 数据库连接实现数据库连接实现 在系统开发过程中,因为要多处用到对数据库的操作,如果这些操作在每 次用到时在每个 JAVA 程序中去实现,将非常繁琐,因此,为了简化这些操作, 作者在开发时设计了一个可重用组件:dbConn .java,把对数据库的操作都封 装在在这个类中,需要用到时生成对象调用便可,其工作流程图如图 4.1 所示。 JSP 客户 HTTP 请求 JAVA BEAN 调用 数据库 Jdbc odbc 图 4.1 数据库访问流程图 4.24.2 管理员功能模块实现管理员功能模块实现 管理员在登陆以后可以实现添加新管理员、添加新教师、添加新学生和实 验审批 3 个功能。所有用户根据提示选择适合自己身份的登陆框填写。其中每 个登陆框都是一个(form),他们的 action 事件分别定义给了 3 个 JSP 文件。 由这些 JSP 程序来检验用户的合法性。 所有用户在登陆之前都无法进行操作,只有在成功登陆系统以后才能实现 各项功能。 登陆功能的流程图如图 4.2 所示。 16 图 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(“); if(rs.next() out.println(“登录成功“); out.print(“); String t=rs.getString(“教师编号“); response.sendRedirect(“tea_manage.jsp“); session.setAttribute(“teacher“,t); else response.sendRedirect(“erron.htm“); .1 人员管理功能实现人员管理功能实现 管理员登陆后可以进行管理员、教师与学生的添加。下面以添加学生为例 对此功能的实现做出简单介绍。管理员登陆以后先输入想要添加的学生信息, 17 当输入信息合法并且与数据库数据没有重复时就添加成功,否则返回重新添加。 添加流程图如图 4.3 所示。 开始 输入新添加学生信 息 输入合法 跳转到 succ.jsp 页面 并且添加到数据库 Y N 结束 显示出错原因 图 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; 密码与确认密码必须相同。否则要出现错误提示。其功能的实现主要由以 18 下代码实现: 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 个变量从提取从刚才表单中提取的数据。 此学号已存在,请返回重新添加!“); else stmt.executeUpdate(sql1); response.sendRedirect(“succ.jsp“); 添加新教师和添加新管理员与添加学生的流程完全相同,在此就不多做介 绍。 .2 实验审批功能实现实验审批功能实现 教师在教师功能模块中可以提交新实验信息到数据库供管理员审查。管理 19 员可以看到所有没有经过审批的实验的名称以及教师提交的实验介绍等材料, 审查通过以后可以将实验开放状态设为开放,供学生选题。 实验审批功能流程图如图 4.4 所示。 开始 查看新实验 信息 通过审批 开放实验 Y 结束 N 不开放实验 图 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(); 20 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.34.3 教师功能模块实现教师功能模块实现 教师登陆以后可以实现新实验申请、学生实验结果的查看以及回答学生提 问的功能。在教师登陆中为了使该教师登录后不管跳转到哪个合法页面都应该 呈现登录状态,在教师登陆过程中定义了一个 session 变量,用它来保存教师 的编号。在得到教师信息的同时将它的登陆信息写到 SESSION 中。这个主要是 语句 session.setAttribute(“id“,id);来实现5。 .1 实验申请功能实现实验申请功能实现 合法的教师登陆以后可以将准备好的实验资料提交给系统,等待管理员审 批通过以后就可以将实验发布。教师需要提交的资料包括实验名称,实验编号 和实验要求 / 上传初始化 su.initialize(pageContext); /限制每个上传文件的最大长度。 su.setMaxFileSize(10000000); /只能上传 doc,jsp,asp,htm,html,文件 su.setAllowedFilesList(“doc,jsp,asp,htm,html,“); / 上传文件 su.upload(); /定义 i 初值为 0 22 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(“抱歉!您没有选择任何文档!“); 当输入合法时开始调用 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); .2 实验结果查看功能实现实验结果查看功能实现 学生在实验结束后可以将实验结果上传到教师申请实验时创建的文件夹中, 教师登陆以后可以察看学生上传的实验结果。功能流程图如图 4.6 所示。 23 开始 选择实验结果 结束 实验结果下载 图 4.6 实验结果查看功能流程图 .3 问题回复功能实现问题回复功能实现 教师登陆以后可以看到所有学生的问题以及教师的回复,当有没有回复的 学生提问时,教师可以通过提交回复将回复提交给系统供学生参考。 功能流程如图 4.7 所示。 开始 查看问题 检查回复长度 符合要求 结束 回复过长 图 4.7 问题回复功能流程图 功能实现的关键代码如下: 实验名称 指导教师 request.setCharacterEncoding(“GBK“); 25 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“); 26 catch(java.lang.NumberFormatException e) 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); .2 疑难提问功能实现疑难提问功能实现 学生登陆后可以向教师提问,并且可以看到教师给学生的回复。学生在提 交提问的同时将提问的时间也提交给了服务器,以方便教师和学生查看提问和 回答的时间。这部分功能是由JAVA.UTIL中的 Calendar 方法实现的9。 提问功能流程图如图 4.10 所示。 27 开始 查看回复 检查问题长度 符合要求 结束 问题过长 图 4.10 提问功能流程图 本功能实现的关键代码如下: % 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) 28 out.print(e.getMessage(); finally stmt.close(); conn.close(); .2 实验结果上传功能实现实验结果上传功能实现 学生在得到实验结果以后可以将实验结果上传到服务器供教师查看。学生 在实验结束后可以将实验结果上传到教师申请实验时创建的文件夹中。实验结 果上传功能流程图如图 4.11 所示。 检查学生上传资格 已经选题 跳转到学生操作页 面 Y N 符合要求? 检测文件类 型 Y N 上传文件添 加数据库 开始 结束 图 4.11 实验结果上传功能流程图 此处代码与教师上传文件时代码原理相同,在此就不作更多描述。 29 第第 5 5 章章 系统测试系统测试 5.15.1 测试环境测试环境 硬件环境: (1) CPU: P4 1.4G (2) 内存:512M (3) 硬盘:80G 7200 转 (4) 交换机及网卡: 10/100M 交换机及 10/100M 兼容网卡 软件环境: (1) 操作系统:Microsoft Window
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年在线职业培训平台开发可行性研究报告及总结分析
- 2025年废弃物处理与资源回收项目可行性研究报告及总结分析
- 事业单位招聘工作人员28人笔试模拟试题及答案解析
- 2025年零售行业电子价签安装维护协议
- 2025年华为ICT大赛考试题库 含答案
- 2025年粮食收购返利协议
- 2025年高级化验员(理论知识)考试真题试题 含答案
- 2025年(新版)质量月质量知识竞赛考试题库 含答案
- 2025年社交媒体营销综合平台项目可行性研究报告及总结分析
- 学院单招职业适应性考试题库含答案详解【研优卷】
- 素养立意的义务教育化学学业水平考试试题研究
- 2024年全国职业院校技能大赛中职组(婴幼儿保育赛项)考试题库-上(单选题)
- 【基于JSP的图书管理系统设计开题报告文献综述4500字】
- 钱钟书名著导读《十七世纪英国文学里的中国》
- 安全使用无线网络的技巧
- 业绩提成协议书
- 点亮生命-大学生职业生涯发展与就业指导全套教学课件
- 《意象对话技术》课件
- 小学生必背古诗“飞花令”100令(低年级版)
- 第三单元一《伐檀》公开课一等奖创新教案-【中职专用】(中职语文高教版2023-2024-基础模块上册)
- 重型颅脑创伤指南(第四)
评论
0/150
提交评论