基于Struts2结构的在线考试系统设计与实现

合集下载

基于Struts和Hibernate架构的计算机公共课程在线考试系统的实现

基于Struts和Hibernate架构的计算机公共课程在线考试系统的实现
< ls n me ” o e a m.b e a u s a l” ca s a = c m.x s d .x mq e T b e q eT be > u s a l” < d n n e ” q e i ” c l mn ” q e i i a l- u sd ou : us d ca s ” sin d , < i > ls : a sg e ” > / d < ca s /ls > ” < e eao > g n r tr tb e e a a l=” x m-
借助 S usHb rae t t ie t 框架技术搭建 系统 的体系结 构 r + n MV Moe- Ve - C n oe) 计 模 式 将 系 统 分成 模 型 C( dl i w o tl r rl 设 层 、 图层 、 视 控制层 三层 , 降低 了 页面显示 、 辑控 制 、 据处 逻 数
S usH bra t t ient r + e框架 技术实现整个 系统功能的开发 。本文 以陕 西科 技大学计算机公共课 程为实例 ,基 于系统 功能 的需求 , 在 软件设计 中采 用基 于 Srt Hb ra 框 架技 术实现 整个 系 统 t s ie t u+ ne
功能。
样在实 现相关数据 库操作时 可以直接继 承该类 。Hbra Bs i n t ae e e 类 的实现方法 在此 略 ,而是 直接使 用它实 现删除 一条记 录的 功能 。
ea q eT be t tus = ( a q eTbe es node— xm usal e qe s e m usal x )ss o.a ( i 1 x a q eT b .as dd; m us alc s, i) el 上 面在实现删除一条记录功能 的代码过程 中,因为使用了

基于Struts的在线考试系统的设计与实现

基于Struts的在线考试系统的设计与实现

基 于 Sr t 的在 线 考试 系统 的设 计 与 实现 tus
李 爱 华
( 南大 学育 才学院 , 西 重庆 4 12 ) 0 54
摘要 : 介绍了如何采用 Srt框 架技术 结合 U t s u ML设 计和实现一个在线考试系统。给出了系统的需求分析 , 用
例模 型及软件结构 图 , 主要功能模 块的 MVC框架设计 , 介绍 了一些关键问题的解决方案和实现代 码。
1 2 需求 分析 .

个 完 备的在 线考试 系统 要能 够充 分利用 网络 优势 , 适合 网络教 学 的考 试模 式和考 试环境 ; 有效 管理 和使 用
网络资 源 , 更好 地指 导学生 进行学 习 ; 形成 一套 完整 的考 试体 系 和质 量评 价体 系 。要实 现 这一 要 求 , 了需 要 具 除 备 一套成 熟 的题库 , 还应具 备 以下功 能 。
关 键 词: 在线考试 系统 ;t t; Sr sUML MV JP u ; C;S
文献 标 识 码 : A 中 图 分 类号 : P 1 T 31
在线 考试 系统 的软件 开发 是现 阶段研 究开 发 的一个 热点 。采用 UML建模 已经成 为 面 向对 象 分析 和设 计 的

种趋 势 , 为基 于 MV 作 C模 式 We 用 的典 型体 现 ,t t 给 出 了一套 框 架工 具 , 开发 人员 在 此框 架 的 支 持 b应 Sr s u 使
下 就能够 快速 高效 的构建 不 同的应用 。介 绍 了如何 将 UML与 Srt结 合 在一 起 , 发一 个 功能 较 完备 的 在线 tus 开
考试系统, 对于开发企业级应用有一定的参考价值。
1 需 求分 析 与 系统设 计

基于Struts2结构的在线考试系统设计与实现

基于Struts2结构的在线考试系统设计与实现

基于Struts2结构的在线考试系统设计与实现作者:唐晔来源:《软件导刊》2013年第06期摘要:基于Struts2和J2EE技术框架,结合MySQL数据库,设计并实现了一个基于B/ S 架构的在线考试系统,重点阐述了用户答题模块的设计,并提出了一种系统随机出题的方法。

关键词:在线考试系统;Struts2技术;J2EE;随机出题中图分类号:TP319文献标识码:A文章编号:1672-7800(2013)006-0071-02作者简介:唐晔(1973-),男,遵义师范学院计算机科学与技术系副教授,研究方向为计算机网络。

0引言根据市场需求,网站的开发需要高效,同时考虑到网站的盈利性,则需要降低人力成本和资源成本。

目前,大部分基于Java开发的网站都采用了Struts2的框架结构,并结合MySQL 数据进行开发,以降低开发成本和提高开发效率。

Struts2是基于MVC模式的开发,Struts2框架为程序员的开发带了极大方便,同时也更好地满足了用户的多样化需求。

本系统是基于Struts2开发的一个在线考试系统,同时采用了J2EE技术,结合Mysql数据库,设计并实现了一个基于B/S架构的网上考试系统,并提出了一种系统随机出题的方法。

1系统总体设计使用在线考试系统的用户必须是注册用户,使用时要先登录。

当用户选择某种测试后,系统会自动给出题目进行考试。

考试开始时,系统自动计时,用户必须在规定的时间内完成考试,否则时间到了则不能答题。

用户答完题后可以直接提交,系统会在用户自主提交或时间超时的情况下对用户所做的题进行评分。

用户信息和试题维护由管理员进行管理,当管理员进入管理时,也需要有一个登录验证功能来验证是否有权限进入管理页面。

管理员可以完成录入、修改、添加、删除等功能,还可以把已保存在文本文件里的数据导入到数据库中。

本系统总体结构如图1所示。

2系统设计2.1数据表设计根据系统功能要求,构建如下数据表,其中有下划线的是主键:用户表(用户标号、登录名、密码、邮箱、登录状态):建立用户的基本情况,主要用于登录网络考试系统;管理员表(管理员标号、登录名、密码、登录状态):建立管理员的基本情况,主要用于登录数据库管理;选择题表(编号、题干、选项1、选项2、选项3、选项4):提供考试题中的选择题,其中“选项1”为正确答案;填空题表(编号、题干、答案):提供考试题中的填空题;套题记录表(编号、题目类型、年号、月号):用于记录套题包含的选择题和填空题,该表信息在录入试题时由系统自动填写;成绩表(用户标号、考试时间、成绩):记录用户考试成绩。

基于Struts2的在线考试系统的设计与开发毕业设计(论文)

基于Struts2的在线考试系统的设计与开发毕业设计(论文)

毕业设计(论文)题目:基于Struts2的在线考试系统的设计与开发目录第一章绪论 (1)1.1在线考试系统的研究背景 (1)1.1.1在线考试系统研发背景 (1)1.1.2国内外在线考试系统研究背景 (1)1.2在线考试系统内容和意义 (2)1.2.1在线考试系统的内容 (2)1.2.2在线考试系统的意义 (2)1.3论文组织结构 (3)第二章 Struts2和Hibernate相关技术的介绍 (4)2.1 J2EE技术 (4)2.1.1J2EE分层模型结构 (4)2.2MVC模式 (6)2.3Struts2+Spring+Hibernate(SSH2)框架技术 (7)2.3.1Struts2 (8)2.3.2Spring (10)2.3.3Hibernate (11)第三章在线考试系统的需求分析与总体设计 (13)3.1在线考试系统需求分析 (13)3.1.1功能分析 (13)3.1.2系统流程分析 (15)3.2系统架构选择 (18)3.2.1数据库设计 (18)3.2.2技术实现方案 (19)第四章系统关键模块的设计与实现 (29)4.1系统开发环境 (29)4.2 SSH2在系统中的运用 (29)4.2.1 SSH2架构的工作流程 (30)4.3系统关键模块的实现 (31)4.3.1试卷与试题之间的关系和存储 (31)4.3.2试卷的展示 (32)4.3.3考试监控 (32)4.3.4考试计时和显示剩余时间 (32)4.3.5安全问题 (32)4.4公共模块 (33)4.4.1字符串处理类 (33)4.4.2过滤器类 (33)4.5登陆模块 (34)4.5.1考生登录系统设计 (34)4.5.2考生个人信息维护设计 (35)4.5.3考生管理模块 (36)4.5.4增加考生设计 (36)4.5.5维护考生信息设计 (38)4.6试卷管理模块 (39)4.6.1题库管理设计 (39)4.6.2试卷管理设计 (41)4.6.3开启试卷设计 (44)4.7考试管理模块 (46)4.7.1考试项目管理设计 (46)4.7.2考生查询成绩设计 (48)4.8考务管理模块 (50)4.8.1在线监考管理设计 (50)4.8.2考卷评分设计 (51)4.8.3考试分析管理设计 (52)第五章总结与展望 (53)5.1论文工作总结 (53)5.2展望 (54)参考文献 (55)致谢 (55)基于Struts2的在线考试系统的设计与开发摘要随着当今科学技术的不断发展,考试的手段跟媒介都发生了革命性的改变。

基于J2EE的在线学习考试系统的设计与实现的开题报告

基于J2EE的在线学习考试系统的设计与实现的开题报告

基于J2EE的在线学习考试系统的设计与实现的开题报告一、选题的背景和意义随着科技的不断进步,互联网的普及,网络学习和在线考试已经成为一种趋势。

考试是学校教育中必不可少的一个环节,而在线考试能够解决传统考试中面临的许多问题,例如时间和空间限制、后期管理等。

本项目旨在实现一个基于J2EE的在线学习考试系统,建立一个统一的考试平台,可以让学生随时随地进行在线学习和考试,同时可以帮助老师进行考试管理、题库维护等工作。

这样的系统不仅有利于提高学生自主学习的能力,而且也可以提高考试的公平性和科学性,能够帮助提高学校教育质量和学生学习水平,具有重要的现实意义。

二、研究的目的和内容本项目旨在设计和实现一个基于J2EE的在线学习考试系统,包括以下几个方面的内容:1、需求分析:进行对在线学习考试系统的需求分析,明确系统所需的功能和性能要求,确定系统的主要模块和进行模块设计。

2、系统设计:进行系统的总体设计和详细设计,采用J2EE技术进行设计,并使用UML进行建模分析。

3、系统实现:使用Java语言和J2EE技术实现系统的各个模块,进行代码编写和单元测试。

4、系统测试:对系统进行全面测试,包括功能测试、性能测试和安全测试等。

5、系统部署:将系统部署到服务器上,并进行网络测试和系统维护。

三、技术路线和预期成果本项目将采用J2EE技术进行设计和实现,在具体实现中涉及的技术有:1、Spring框架:用于实现系统的业务逻辑层和控制层,提供事务管理和依赖注入等功能。

2、Struts2框架:用于实现系统的MVC框架,提供模型层和视图层。

3、Hibernate框架:用于实现系统的数据持久层,提供对象关系映射和数据访问等功能。

4、MySQL数据库:用于保存系统的数据。

5、HTML、CSS和JavaScript:用于实现系统的前端页面和交互效果。

本项目的预期成果是:实现一个基于J2EE技术的在线学习考试系统,包含学生登录、考试、练习、成绩查询等功能,同时有管理员管理学生信息、试题、课程等功能。

基于Struts框架的在线考试系统

基于Struts框架的在线考试系统
a s i u t t e e y u cin lmo u e o n ie T s y tm n h o e s se ’ e eo me t p o e u e b s d o lo l s a e v r f n t a d l f O l e tS s l r o n e a d t e wh l y tm S d v lp n r c d r a e n
统基 于 S t的开发流程 ,并通过 一个应 用示例 ,介绍 Srt 框架在 系统开发 中的应 用。 ts u r ts u
关键词 :Srt MV t s; C;We 在线考试 系统 u b;
Th l e Te tn y t m s d o t u sFr m e r e On i si g S se Ba e n S r t a wo k n
作 者简 介 :陈杏环 (90 ) 18 一 ,女 ,讲 师 ,硕 士 ,研 究方 向 :
A tn eve 主要负 责接受 H I 求信息 ,A tn类 负责调 c oSrlt i T' P请 co i 用模型 的方法 ,更 新模 型 的状 态 ,并 帮助控 制应用程 序的流
程。
3 在 线 考试 系统
鉴于主 观题的 主观性 , 目前无法 实现 系统 自动判 卷 ,所
以本 系统只针对客 观题部分 进行单项 选择形 式的考试 。一般
情况下 ,单选题往 往在 4个 供选 的答案 A、B 、C 、D 中选择 唯一正确的答案 。 31 系统功能模块
2 Srt体 系结构 t s u
作 为 一个 实 现 良好 的 MV C框架 ,S t M d l i t s对 o e、Ve u r w 和 C n ol 都提供 了对应 的实现组件 ,图 1所示 为 Srt 体 otlr re t s u

基于Struts的考试系统设计与实现

基于Struts的考试系统设计与实现
据。 本系统将 Srt 和 H brae tus ient 框架 以及 V lct 模 板 eoiy
无 缝地整合 来 , 通过使 用这 些成熟 的框架, 减少 重复开 发
的问题.其目标是希望分离 Wb e 程序的表示层 、 控制层和后
台功能层, 也就是实现 M C V 模式 。其体 系结构 如图一所示 。
摘 要: 随着 时代 不断 向前发展 , 高校信息化技 术的不 断提高 , 网络教 学也得到 了广泛 的应用 , 网上考试 是 网络教 学不可

缺少 的部分 , 文主要叙述 了基 于 Srt 框 架的在线考试 系统 的技术原理和 功能模块 , 本 tus 为实现在 线考试 系统提 供 了一个解决 方 案, 给考试管理者 的工作 带来 了方便 。 关键词 :tus 考试 系统 Srt ;
通过控制器 连接不 同的模型和 视 图, 完成 用户 的需求 , 高 提
习效果 , 并且系统 自 阅卷 更能提高教师 的工 作效 率。 动
在 线考 试系统是 网络教学 的一个重要组成部分 , 以提 可
软件的可维护性 、 可扩展性和灵活性 。Srt 是一种 较好 实 tus
现 M c思想 的技术框架 , v 而且近年在业界 开发 中被证 明是 一
Srt t u s框架是 目前非常流行的框架 。它采 用 M C模 式, V
: 作量 、 【 缩短开 发时间 、 降低 开发成本 , 并增强系统的可维护
供一种学 生对所 学课程进行 自 评价的手段, 我 从而找 出差距 进行重 点学 习, 也可 以为教师提供一 种评 价学 生对课程掌握
种 比较稳定 、 成熟的技术框架 。以 Srt 为基础 , 以使 开 tu s 可 发人员集中精 力构建业务应 用程序 , 而不 必关注体系结 构上

《J2EE系统架构和程序设计》课程设计实训项目——基于Struts +Hibernate架构的在线考试系统需求规格说明书

《J2EE系统架构和程序设计》课程设计实训项目——基于Struts +Hibernate架构的在线考试系统需求规格说明书

《J2EE系统架构和程序设计》课程设计实训项目——基于Struts +Hibernate架构的在线考试系统需求规格说明书1.1.1引言1、编写目的本文档作为在线考试系统第一期的需求说明文档,用于与用户确定最终的目标,并成为协议文本的一部分,同时也是本系统设计人员的基础文档。

2、背景在线考试系统(以下简称OnlineExam)是一套专业的在线考试(也称网络考试或计算机考试)解决方案,具有高度的可扩展性,被授权的考试用户不管身处何地,只要使用网络浏览器(IE浏览器),就可通过网络登录考试系统,参加在线考试。

OnlineExam 采用开放、动态的系统架构,将传统的考试培训模式与先进的网络应用相结合,可使用户完全根据自身应用特点快速构建考试平台系统,实现对在线考试工作的高效组织和管理。

OnlineExam 产品体系不仅可满足各类专业的教育、考试、培训机构的考试应用与管理需求,也是各类政府机构、企业、学校、事业单位进行考试考核、技能评测的理想平台。

OnlineExam 产品体系开放的架构、精良的设计、专业的服务,将为用户创造完美的应用价值。

3、读者范围最终用户、软件设计人员。

4、定义(1)GB:中华人民共和国国家标准的英文缩写字母(2)构件:具有某种功能的可重用的软件模版单元,表示了系统中主要的计算元素和数据存储。

(3)逻辑视图:描述支持系统的功能需求的视图。

(4)开发视图:也称模块视图,主要侧重于软件模块的组织和管理描述。

5、参考资料(1)J2EE项目实训Hibernate框架技术(21世纪高等学校实用软件工程教育规划教材)杨少波编著清华大学出版社 2008 年5月(2)J2EE项目实训Spring框架技术(21世纪高等学校实用软件工程教育规划教材)杨少波编著清华大学出版社 2008 年5月(3)J2EE项目实训UML及设计模式(21世纪高等学校实用软件工程教育规划教材)杨少波编著清华大学出版社 2008 年5月(4)J2EE项目实训Struts框架技术(21世纪高等学校实用软件工程教育规划教材)杨少波编著清华大学出版社2008 年10月(5)《JSP与数据库连接》刘瑞挺,高等教育出版社(6)《数据库原理与方法》郑若忠王鸿武,湖南科学技术出版社(7)《软件需求》(美)Karl E.Wiegers 著,刘伟琴刘洪涛译1.1.2任务概述1、目标OnlineExam系统主要实现蓝梦大学软件学院部分课程在线考试考试功能,考试题型只有选择题和判断题,节省了教师阅卷和监考的步骤,要求该系统形式简单,但方便实用。

《J2EE系统架构和程序设计》课程设计实训项目——基于Struts +Hibernate架构的在线考试系统详细设计说明书

《J2EE系统架构和程序设计》课程设计实训项目——基于Struts +Hibernate架构的在线考试系统详细设计说明书

《J2EE系统架构和程序设计》课程设计实训项目——基于Struts +Hibernate架构的在线考试系统详细设计说明书1.1.1在线考试系统中的表示层的设计1、在线考试系统表示层功能在在线考试系统中的表示层使用Struts框架,该层所负责的主要功能如下:1)管理用户的请求,做出相应的响应2)提供一个流程控制器,委派调用业务逻辑和其他上层处理3)处理异常4)为显示提供一个数据模型5)用户界面的验证以下内容,不该在Struts表示层中出现,因为它们应该是与表示层无关的。

1)与数据库直接通信2)与应用程序相关联的业务逻辑及校验3)事务处理因为,如果我们在表示层引入这些功能的实现代码,将会给系统带来高耦合和难以维护的后果。

2、在线考试系统表示层主要组成在线考试系统表示层由UI(User Interface)和UI控制逻辑组成:(1)UI(User Interface)主要由JSP页面来体现,UI是客户端的用户界面,负责从用户方接收命令,请求,数据,传递给业务层处理,然后将结果呈现出来。

(2)UI控制逻辑主要由JavaBean来实现,UI控制逻辑负责处理UI和业务层之间的数据交互,UI之间状态流程的控制,同时负责简单的数据验证和格式化等功能,在线考试系统表示层采用Struts框架,为了更好的实现实现表示和业务的分离分层原则,JSP实现尽可应该做到:1)利用标签技术标准的做法是尽可能的使用struts标签,一方面即可以使用Struts中所提供的各个标签库的标签,同时页根据项目的实际需要定制了自己的标签库的标签,只有这样一来,提高了系统设计的规范性和代码的可重用性,为后期升级提供方便。

2)利用View Help组件(JavaBean)实现业务逻辑标准的做法是尽可能的使用Java Bean,这样可以完成将某些复杂数据格式化或者数据转换的功能,才能够把业务逻辑和页面表示彻底分开,符合MVC设计原则和方法。

下图为在线考试系统表示层架构图:在线考试系统中的表示层中的用户登陆组件类的类图以及它们之间的关系的图示如下图所示:3、在线考试系统表示层用主要技术——客户端的JavaScript脚本的应用(1)应用JavaScript时的要点在Struts的应用中,一般是不再鼓励使用客户端的校验技术,而改用服务器端的校验技术以提高项目的安全性和更好的兼容性。

基于Struts的在线考试系统的设计与实现的开题报告

基于Struts的在线考试系统的设计与实现的开题报告

基于Struts的在线考试系统的设计与实现的开题报告一、选题背景随着互联网技术的不断发展,网络教育越来越受到人们的关注。

在线考试系统是网络教育中不可或缺的组成部分之一。

在线考试系统可以方便学生随时随地参加考试,减轻考试的考点安排和监考工作,提高了考试效率和质量。

本课题选取 Struts 框架技术进行在线考试系统的设计与实现,旨在提高学生和教师的参与感,更好地开展在线教学。

二、研究内容和目标本项目的目标是实现一个基于 Struts 的在线考试系统,具备以下功能:1. 教师可以创建考试试卷和题目,并设置考试时间和考生限制;2. 考生可以注册账户,并参加教师创建的考试;3. 考生在考试过程中可以在线查看考试试卷并回答试题;4. 系统可以自动判卷,生成考试成绩;5. 教师可以查看学生的考试成绩和答题情况。

三、研究方法本项目采用经典的MVC架构模式,基于 Struts 框架进行设计和开发。

具体研究方法如下:1. 调研相关技术,包括 Struts 框架、Java Web 编程、MySQL 数据库等;2. 按照MVC架构模式设计系统框架,并根据需求进行详细设计;3. 基于 Struts 框架进行开发,实现系统的各项功能和特性;4. 存储考试数据和用户信息,设计合理的数据库结构,并进行开发和调试;5. 进行系统测试和性能优化,确保系统稳定、高效运作。

四、项目意义和创新点本项目的意义在于:1. 采用Struts 框架进行开发,体现了面向对象的设计思想和模块化、组件化的开发方法,提高了代码的可维护性和可扩展性;2. 实现了在线考试系统的多项功能,有利于提高教育教学的效率和质量,方便学生和教师的参与和管理;3. 创新性地采用了自动化判卷的技术,提高了考试的效率和准确性,方便教师的评分和管理。

五、预期成果本项目的预期成果为:一个基于 Struts 的在线考试系统。

该系统具备如下特点:1. 针对人力、物力和时间的约束,使考试变得高效、快捷和智能;2. 创建、发布、答题、批改全程在线化处理,使考试变得珍贵而严谨;3. 可选题目数量、题目分类、答题时间的灵活性,使考试变得个性化而富有挑战;4. 监考人工一定程度上的减少,考试的安全性大大提高。

基于Struts2+Hibernate在线学习系统的设计与实现

基于Struts2+Hibernate在线学习系统的设计与实现

基于Struts2+Hibernate在线学习系统的设计与实现
教育对个人而言,在一定程度上可以改变命运,可以为国家培养人才推动社会的进步,是从事社会生活整个过程中不可缺少的环节。

伴随着计算机技术与教育的结合,人们开始通过互联网开展教育,出现了新的教育模式——在线教育。

它给教育行业带来了新的机遇和挑战,不论是初创业者、培训机构还是如BAT(百度、阿里、腾讯)这样的互联网公司都被巨大的市场潜力其吸引。

与传统教学模式相比,“翻转课堂”教学的重点从“以教师为中心”转移到“以学生为中心”,学习过程分为课前自学和课上教师引领学习两部分。

本系统则主要用于课前学习,为学习者提供丰富的在线教学资源,将面对面的知识讲解变成在线完成。

本文通过对国内外在线教育平台进行对比,借鉴其优点,并结合“翻转课堂”这一教育理念来设计和开发在线学习系统,采用通关式方法进行学习,弥补在线学习注意力容易分散,过程枯燥,效率低的缺点;根据需求分析,设计出系统功能模块,使用常用的框架和设计模式搭建系统整体架构,分析类关系模型,使用Hibernate实现实体类与数据库表之间的映射,生成数据库表;围绕系统学习资源,完成对商品的搜索、搜索结果分页显示、购买功能,对生成的订单进行管理;对用户关键信息进行加密处理,防止信息泄露,提出安全登录的处理方法,利用责任链模式原理对网页的访问权限进行控制。

基于Struts的远程在线考试系统的设计与实现

基于Struts的远程在线考试系统的设计与实现
型 、 图 和控 制 器 , 们 分 别 承 担 不 同 的 任务 。如 ቤተ መጻሕፍቲ ባይዱ 2 1 示 了 视 它 — 显
这 几个 模 块 各 自的功 能 以及 它 们 的 相互 关 系 图 3 1系统 主要 模 块 结 构 图 — 31 . 1系 统 管理 模 块 . 本 模 块 主要 负 责 管 理 系 统 管理 员 的 信 息 .也 可 根 据管 理 需 要 添 加部 门和 科 目的 信 息 。 理 员 可 根据 自己 的权 限 审批 试 卷 . 管 发布 考试 等
远程 在 线 考试 系统 几 乎 都 存 在 以 下 共 同 的 问题 :
辑 ) 离 。这 样 可 以实 现 业 务逻 辑 的 重 用 。 分
视 图 ( i ) 视 图是 用 户 看 到并 与之 交 互 的界 面 。 图 向用 Ve : w 视
户显 示 相 关 的 数 据 , 能 接 收用 户 的输 人 数 据 . 是 它并 不 进 行 并 但 任 何实 际 的事 务 逻辑 处 理 。t t应 用 中 的 V e Sr s u iW部分 是通 过 JP S
技术 实 现 的
控 制 器 ( o t lr : C nr l ) 其作 用 是 从 客 户 端 接 受 请求 . 且 选 择 oe 并 ( 系 统性 能 方 面 ,各 种 考 试 系 统 的基 本 功 能 大 致 相 同 , 1 ) 突 执 行相 应 的业 务 逻 辑 , 后 把 响应 结 果 送 回到 客 户 端 。在 S u 然 tt rs 出 的不 多 : 中 C n ol 功 能 由 A t neve 和 A t n p i ot l r r e c oS r t i l c oMapn i g对象 构 成 。 ( 技术方面 , 分系统并 未使用跨平 台的系统架构 , 2 ) 部 因此 基 于 MV C模 型 的 S u 具 有 组 件 化 的优 点 从 而 更 易 于 实 tt rs 系统 可移 植 性 不强 现 对 大规 模 系 统 的 开 发 和管 理 .具 有 很 高 的 可扩 展 性 和或 移 植 综 合 以 上 的 考 虑 因 素 .我 们 提 出 基 于 M VC模 型 和 JP 性 . 系 统也 正是 基 于 这 种 架构 开发 的。 S 本 Srt 发 框 架 的 开 源 、 用 、 t s开 u 通 跨平 台 的 在 线 考试 系 统 的设 计 方 3 系统 分 析 与规 划 . 案。 31 能 模块 的设 计 .功 2M . VC模 型 与 J P S rt 架 概 述 S t s框 u 系 统 主要 模块 为 : 统 管 理 模 块 、 库 管 理 模 块 、 生 管 理 系 题 考 21 V .M C模 型 概述 模 块 、 库 管 理 模 块 、 体 资 源管 理模 块 和 监控 中心 模 块 . 图 题 媒 如 M C是 Moe Ve — o t l r 简称 . V dl i C nr l 的 — w oe 即模 型一 图一 制 3 视 控 —1。 器 ,V M C是 一 种 设 计 模 式 和 框 架 模 型 .强 制 性 地 把 应 用 程 序 的 输入 、 理 和输 出 分 开 。M 处 VC把 应 用程 序 分 成 三 个 核心 模 块 : 模

基于J2EE架构的在线考试系统的设计与实现的开题报告

基于J2EE架构的在线考试系统的设计与实现的开题报告

基于J2EE架构的在线考试系统的设计与实现的开题报告1. 选题背景与意义随着信息化时代的到来,网络技术和计算机技术的不断发展和普及,网络应用越来越广泛,而在线考试系统也逐渐成为了在线教育的重要组成部分,适用于各种教育和测试场景。

在线考试系统能够提高考试的效率和公平性,改善教育教学的质量,提高学生学习成绩和知识水平。

因此,设计和实现一款基于J2EE架构的在线考试系统具有重要的意义。

2. 研究现状近年来,随着计算机技术和网络技术的不断发展,各类在线考试系统层出不穷。

当前,国内外基于J2EE架构的在线考试系统的设计和实现已经有一定的研究成果。

但是,现有的系统在稳定性、功能性、安全性、用户体验等方面还存在一定的问题和不足。

因此,本项目旨在设计和实现一款更加完善和优化的基于J2EE架构的在线考试系统。

3. 研究内容和方法本项目将通过以JSP和Servlet技术为基础,利用MVC架构设计和实现一款基于J2EE架构的在线考试系统,着重研究以下几个方面:(1)系统的整体设计:选取适宜的J2EE框架实现在线考试系统的各个模块,如用户登录、考试题目的添加、试卷生成、考试答题、成绩统计等。

(2)系统的安全性设计:加强系统的数据安全性、系统身份认证和权限控制等方面的研究和实现,以确保用户信息和系统数据的安全。

(3)系统的优化设计:提高系统的交互和用户体验,完善系统的功能,解决系统在考试高并发时的稳定性问题。

4. 预期成果和意义本项目将设计和实现一款基于J2EE架构的在线考试系统,具有如下预期成果和意义:(1)提高在线考试的效率和公平性,改善教育教学的质量。

(2)提高学生学习成绩和知识水平,为学生提供更好的学习体验。

(3)积累和总结一定的J2EE开发经验,为后续类似系统的开发提供参考。

(4)提高个人软件开发水平,增加自身的竞争力。

综合以上三方面因素,本项目设计和实现的基于J2EE架构的在线考试系统具有一定的研究和应用价值。

基于Struts 2.0技术的软考考务系统设计与研究

基于Struts 2.0技术的软考考务系统设计与研究
tm,d s r st e k y tc n lg ons i e i l me t g p o e u e o e s s m , n l i e h u nn f c f h y — e e c b h e h oo y p it n t mp e n i rc d r ft y t i e e h n h e i f al gv ste r n i ge e t e s s y ot t r n rwsa c n lso o eu a e o e p l ain o t t f me o k e a d d a o cu in f rt s g W b a p i t fS r s r n h f c o u a w r. Ke r s S mt 2 0;s f r e e x m ;We p l ain;d tb s y wo d : t s . ot e lv le a wa b a pi t c o aa a e

YANG Xu.h si
(inx Istt o o p t gT cnl y a cag 3 0 2 h a Jagi ntu f m ui eho g ,N nh n 00 ,C i ) ie C n o 3 n
Ab ta tSrt a w r ih o e sJ E p c iaini v r o ua e p l ainf me okb sd o sr c : t s ̄ me okwhc b y 2 E s eic t s eyp plrW ba pi t r w r ae nMVC n w d y . u f o c o a o aas
速发 展和 It t 日益普 及 , 切要 求 软 考考 务 管 ne 的 me 迫
1 Sr t tus技术 介 绍
Srt 是 A ah t s u pc e软件 基金 会 赞 助 的一 个 开源 项 目。它通 过 采 用 Jv ev tJP技术 , 现 了基 :t t2 0 软考 ; b应用 ; Sr s . ; u We 数据 库 中图分类号 :P 1 T3l 文献标识码 : A

基于J2EE架构的在线考试系统的设计与实现

基于J2EE架构的在线考试系统的设计与实现

1.2功能模块
课程管理模块:允许管理员创建课程,添加课程章节和教学内容,制定教学 计划等。
学习资源管理模块:支持教师上传各类学习资源,包括视频、音频、文档等, 方便学生学习。
1.2功能模块
学习社区管理模块:提供论坛、聊天室等功能,方便学生互相交流,形成良 好的学习氛围。
学生管理模块:可以对学生的学习进度、成绩等进行跟踪和管理。
实现技术
2.1 J2EE技术
2.1 J2EE技术
J2EE是一种基于Java的分布式应用开发标准。它提供了一致的基础架构,将 业务逻辑、数据访问和表示层分离,提高了系统的可维护性和可扩展性。
2.2 Spring框架
2.2 Spring框架
本系统采用了Spring框架进行开发。Spring提供了全面的编程模型,包括 IoC容器、AOP框架、持久化框架等,使得开发人员可以专注于业务逻辑的实现, 而无需底层的实现细节。
三、系统实现
用户登录时需要输入用户名和密码进行身份验证,系统会根据用户名在数据 库中查找对应的密码进行比对。如果验证通过,则允许用户登录系统。如果验证 失败,则显示错误信息并重新登录。找回密码时,用户需要输入注册时填写的邮 箱或,系统会发送验证码到用户的邮箱或手机上,用户输入正确的验证码后可以 重置密码。
三、系统实现
2、试卷生成模块:该模块通过试卷新建、试卷编辑和试卷发布等功能实现了 试卷的生成和编辑功能。管理员可以新建一份试卷并设置相关参数,例如题型、 题量、难度等。每个题型可以包含多个试题,每个试题可以设置正确答案和分值。 设置完成后可以发布试卷供考生参考。
三、系统实现
3、在线考试模块:该模块通过考试页面和考试交卷等功能实现了考生的在线 考试功能。考生登录系统后可以查看管理员发布的试卷并开始答题。答题时间有 限制,需要在规定时间内完成试卷并提交答案。提交答案后系统会自动保存答案 并计算分数。如果考试时间到了还未提交答案,系统会自动提交当前答题进度并 计算分数。

《J2EE系统架构和程序设计》课程设计实训项目——基于Struts + Hibernate框架技术的在线考试系统设计和实现

《J2EE系统架构和程序设计》课程设计实训项目——基于Struts + Hibernate框架技术的在线考试系统设计和实现

《J2EE系统架构和程序设计》课程设计实训项目——基于Struts + Hibernate框架技术的在线考试系统设计和实现1.1.1在线考试系统设计1、系统概述由于这次实训也做了一个web在线考试系统,所以把这次实训的整个过程记录下来,完成实用开发技术的这个大作业。

经过一个学期的实用开发技术的学习,使我了解到了一些比较流行的开发技术,也在实践中锻炼了自己。

在线考试系统主要功能是提供一个在线的考试平台,教师可以利用此平台输入试卷,学生可以选择试卷考试,另外,系统也提供用户管理功能。

系统总体用例如下图所示。

2、系统总体用例3、系统模块划分为方便系统的功能实现,系统模块按业务功能与平台功能划分为如下几个模块,以包的形式加以区分:4、设计系统的DAO组件为业务层提供通用数据访问接口,本系统采用一般DAO实现模式,现样,为了减少耦合度,采用了工厂模式,客户端要得某个具体DAO实现类,必须通过工厂类。

5、设计系统中的用户信息管理相关的程序类6、设计系统中的试卷信息管理相关的程序类7、分别根据用户设计模块和试卷功能模块设计对应的数据库表结构(1)权限相关表设计(2)用户相关表设计(3)试卷相关表设计8、创建数据库表的过程和文档drop table if exists tbl_admin;drop table if exists tbl_class;drop table if exists tbl_question;drop table if exists tbl_student;drop table if exists tbl_teach;drop table if exists tbl_teacher;drop table if exists tbl_test;create table tbl_admin(adm_id int not null auto_increment, adm_name varchar(10),adm_password varchar(15),primary key (adm_id));create table tbl_class(cls_id int not null auto_increment, cls_name varchar(20),primary key (cls_id));create table tbl_question(qst_id int not null auto_increment, tst_id int,qst_title varchar(100),qst_answer char(1),qst_score int,primary key (qst_id));create table tbl_student(stu_id int not null auto_increment, cls_id int,stu_name varchar(10),stu_password varchar(15),primary key (stu_id));create table tbl_teach(tch_id int not null,cls_id int not null,primary key (tch_id, cls_id));create table tbl_teacher(tch_id int not null auto_increment, tch_name varchar(10),tch_password varchar(15),primary key (tch_id));create table tbl_test(tst_id int not null auto_increment, tch_id int,tst_name varchar(15),tst_time varchar(10),primary key (tst_id));alter table tbl_question add constraint FK_has foreign key (tst_id)references tbl_test (tst_id) on delete cascade on update cascade;alter table tbl_student add constraint FK_belong_to foreign key (cls_id)references tbl_class (cls_id) on delete cascade on update cascade;alter table tbl_teach add constraint FK_teach foreign key (tch_id)references tbl_teacher (tch_id) on delete cascade on update cascade;alter table tbl_teach add constraint FK_teached_by foreign key (cls_id)references tbl_class (cls_id) on delete cascade on update cascade;alter table tbl_test add constraint FK_test foreign key (tch_id)references tbl_teacher (tch_id) on delete cascade on update cascade;9、在数据库表中添加测试相关的测试数据insert into tbl_teacher (tch_id, tch_name, tch_password) values (0, 't1', 't1'); insert into tbl_teacher (tch_id, tch_name, tch_password) values (0, 't2', 't2'); insert into tbl_admin (adm_id, adm_name, adm_password) values (0, 'admin','admin');insert into tbl_class (cls_id, cls_name) values (0, 'class1');insert into tbl_class (cls_id, cls_name) values (0, 'class2');insert into tbl_test (tst_id, tch_id, tst_name, tst_time) values (0, 0, 'addition', '60');insert into tbl_test (tst_id, tch_id, tst_name, tst_time) values (0, 1, 'subtration', '60');insert into tbl_test (tst_id, tch_id, tst_name, tst_time) values (0, 0,'multiplication', '60');insert into tbl_test (tst_id, tch_id, tst_name, tst_time) values (0, 1, 'division', '60');insert into tbl_question (qst_id, tst_id, qst_title, qst_answer, qst_score) values (0, 0, '11+1=12','1', '3');insert into tbl_question (qst_id, tst_id, qst_title, qst_answer, qst_score) values (0, 0, '13+21=32','0', '3');insert into tbl_question (qst_id, tst_id, qst_title, qst_answer, qst_score) values(0, 1, '11-1=10','1', '3');insert into tbl_question (qst_id, tst_id, qst_title, qst_answer, qst_score) values (0, 1, '20-0=19','0', '3');insert into tbl_question (qst_id, tst_id, qst_title, qst_answer, qst_score) values (0, 2, '10*0=0','1', '5');insert into tbl_question (qst_id, tst_id, qst_title, qst_answer, qst_score) values (0, 2, '11*1=12','0', '5');insert into tbl_question (qst_id, tst_id, qst_title, qst_answer, qst_score) values (0, 3, '11/1=11','1', '5');insert into tbl_question (qst_id, tst_id, qst_title, qst_answer, qst_score) values (0, 3, '13/2=5.5','0', '5');insert into tbl_student (stu_id, cls_id, stu_name, stu_password) values (0, 0, 'xrj', 'xrj');insert into tbl_student (stu_id, cls_id, stu_name, stu_password) values (0, 0, 'ljk', 'ljk');insert into tbl_student (stu_id, cls_id, stu_name, stu_password) values (0, 1, 'zcj', 'zcj');insert into tbl_student (stu_id, cls_id, stu_name, stu_password) values (0, 1, 'dwy', 'dwy');insert into tbl_student (stu_id, cls_id, stu_name, stu_password) values (0, 1, 'zlt', 'zlt');insert into tbl_teach (tch_id, cls_id) values (0, 0);insert into tbl_teach (tch_id, cls_id) values (0, 1);insert into tbl_teach (tch_id, cls_id) values (1, 0);insert into tbl_teach (tch_id, cls_id) values (1, 1);1.1.2在线考试系统实现——管理员功能分类说明1、修改密码2、增加教师3、教师信息列表显示4、对教师列表中的某个教师信息进行修改5、删除某个教师信息6、班级信息管理和维护教师与班级是多对多关系,可通过此界面进行维护。

基于Struts和Hibernate架构的在线考试系统的设计方案

基于Struts和Hibernate架构的在线考试系统的设计方案

基于 S u 和 Hbra 架构的在线考试 系统的设计方案 tt rs ie t ne
侯 枫 , 立 新 赵
( 门峡职业技术学院 , 三 河南 三 门峡 4 2 0 ) 70 0
÷ ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ 夺 夺 孛 ÷ 夸 夺 夺 夺 寺 ÷ 寺 争 夺 ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ 夺 夺 夺 夺 夺 寺 + 争 夺 夺 夺
第 9卷
第 2期
漯河职业技 术学院学报
J u n lo o e Vo ai n lT c n l g o lg o r a fLu h c t a e h oo y C le e o
V 19 N . 0. o 2
Ma . 01 r2 0
21 0 0年 3月
di1 .9 9 ji n 1 7 -84 2 1 .2 0 0 o:0 3 6 /.s . 6 1 6 .0 0 0 . 1 s 7
cngx l of .m 文件 来 配 置 ; JP生 成 页 面完 成 视 图 ,t t i 由 S Su rs 提 供丰 富的 JP S 标签 库 ; 模型 以一个 或多个 JvB a 的形 aaen
式 存在 。 1 2 Hient . b ra e框架 技术 H brae 一个采 用 O M( betR l i p i ) ie t 是 n R O jc e t nMa pn ao g
要组成 部分 , 为学 生提供 了对所 学课 程进行 自我评 价 的平 台, 助这 一平 台找出学 习差距 从而 进行重 点 知识 的重 点 借
作 为一个 M C的框 架 ,t t对 M dlVe V Su rs oe i 、 w和 Cn o—
t lr r l 提供 了对 应 的实 现 组 件 。控 制 逻 辑 利 用 S u — oe tt rs

基于J2EE平台Struts架构设计的网络考试系统

基于J2EE平台Struts架构设计的网络考试系统

Ab ta tT ecre t src : h urn C d s nmo e a dSrt f meb sdo h 2 E w r t d cd. a iga v — MV ei d l n t s r ae nteJ E eei r u e T kn d a g u a no n

试 卷 管理 : 可进 行三 种组 卷方 式 的维护 : 随机 组
卷、 人工组卷 、 综合组卷。还可对考生的基本信息进
行维 护 。
— — — —
-+ 方 法 调 用
第 2 卷 第 3 2 期
20 莅 O8






院Байду номын сангаас


Vo . 2 No. 12 3
9月
J U N L F H N O G N I U E O LG T N U T Y O R A 0 S A D N IS' 3 F IH ID SR I T
S p e.
2O O8
o hs sse w sa ay e ft i y tm a n lz d.
Ke r s J E ywo d :2 E;Srt;MV tu s C;o l ee a ytm ni x/ sse n n
1 M C设计模 式与 S R T 开发框架 V TUS
M C是 一 种设 计模 式 , 强制 性 的把应 用 程序 V 它 的输 入 、 理和输 出分 开 。M C把应 用程 序 分 成 三 处 V
理 以及用 户权 限管 理 。 整个 系统 的模 块介 绍如 下 :
题库 管理 : 于对单 个试 题 的增 、 、 、 等基 用 删 改 查 本维 护 , 可对 题 库 进 行 数 据备 份 和数 据 还原 。我 还

基于Struts的在线考试系统的设计及实现

基于Struts的在线考试系统的设计及实现

器 或 者 使 用 JP的 应用 服 务 器 上 的 J P引 擎 执 行 。JP引擎 接 受 客 S S s It n t 开放 性 、 分 布 性 的 特点 使得 网络 考 试 系统 突 破 了时 户 端 对 JP页 面 的 请 求 ,并 且 生成 JP页 面作 为对 客 户 端 的 响 应 。 n re 的 e s S 间和 空 间 的 限制 , 大 地 提 高 了教 学 的灵 活 性 。 基 于 WE 的在 线 JP页 面 可 以包 含 在 多 种 不 同 的应 用体 系结 构 或 者模 型 中 ,可 以用 极 B S 考 试 系统 将 教 师 从 繁 琐 的 出 题 、 考 、 监 阅卷 、 卷 分 析 和 成 绩 统 计 于 由不 同协 议 、 件 和 格 式 所 组成 的联 合 体 中 。 试 组 的传 统 考试 中 解 脱 出来 , 分体 现 了准 确 、 观 、 正 、 速 、 捷 充 客 公 快 简 基于 JP的动 态信 息发 布 技 术 是 一 个 开 放 的 、 扩 展 的 建立 动 S 可 等特点。 态 We 面 的标 ; b页 隹。不 论 采 用什 么创 建 工 具 , 开发 人 员 都 可 以使 用 本 系统 在 Widw P的 平 台 下 采 用 了 S us 术 、Q evr JP页面 来 创 建 可移 植 的 We 用 ,在 不 同 的 We 用 服 务 器 上 nos x t t技 r S LSre S b应 b应 20 0 0数据 库 、 pc e 务 器 , 个 工程 在 基 于 BS模 式 下 , 用 JP A ah 服 整 / 使 S 运行 。 语 言来 编 写程 序 , 以及 Dem evr 和 P o so S 件 来 制 作 ra w ae 8 ht hpC 3软 o 1 t t技 术 S t I . Sr s 2 u t s2 u r l由一 组 相 互 协作 的 类 、e lt S r e 以及 Jp v s 和 美化 系 统 页 面。 T g i 成 1 基 于 Srt 构 架 的 We aLb组 3 1 。 t s u b应 用 程 序 基 本 上 符 合 JP S 本 系统 开 发 的 目 的是 提 供 一 种 方便 学 生 考 试 和 老 师阅 卷 的 平 Moe dl 2的设 计 标 ; 可 以说 是 M C设 计模 式 的一 种 变 化模 型 。 隹, V 台 。 系统 继 承 和 发扬 了 目前 网 络 上 比较 流 行 的 在 线 考 试 系统 的 特 S t有 其 自己 的控 制 器 ,同 时 整合 了其 他 的一 些 技 术 去 实现 t s u r 点 , 现 了较 为 完整 的在 线 考试 的各 项 功 能 。 实 模 型层 和 视 图 层 。 模 型层 ,t t 可 以 很容 易 的与 数据 访 问 技术 结 在 Sr s u 1 系统 开发 基 本 理 论 合 , 括 EBJ B 包 J ,D C和 O jc R ltnBig。在 视 图层 ,t t能 够 b t eao r e e i d Sr s u 11JP技 术 JP Jv e l ae [ 由 SnMi oytm 公 . S S (aaSr e P g )是 vt 1 1 u c ss s r e 与 JP,S S X L等 等 这 些表 示层 组 件 相 结合 。 司 倡 导 、许 多 公 司 参 与 一 起 建 立 的一 种 动 态 网页 技 术 标 准 。 利 用 分 别 从 模 型 、 图 、 制 器 来 看 看 Srt 的 体 系 结 构 , 图 1 视 控 t s u 如 JP技术 , 态信息 由 JP页面来表现 , P页面由安装在 We S 动 S J S b服务 所 示。 13J B . D C技术 J B (aaD t aeC n eti ,aa D C Jv a B s on cvt Jv 数据库 a iy 作者简介 : 王建 设 (9 4 男 , 南 郑州 人 , 土 , 州 交通 职 业学 院 信 息工 程 17 一) 河 硕 郑 1 4 ] aa与 S L数据库对话 的程 序设计接 口, Q 它是 系, 讲师, 主要研究方向为多媒体技术、 计算机应用 , 黎平国(9 5 , 连接 )是~套允许 Jv 17一) Q aaA I是 aa 存 男 , 北成 宁人 , 士 , 北成 宁学 院 图 书 馆 , 员 , 要 研 究 方 向 用 于 执 行 S L语 句 的 Jv P , Jv 应 用 程 序 连 结 数 据 库 取 湖 硕 湖 馆 主 为计算机网络 存储、 计算机应 用。 数 据 的一 种 机 制 , 以为 多种 关 系数 据 库 提 供 统 一 的访 问 , 由一 可 它

基于Struts2结构的在线考试系统设计与实现

基于Struts2结构的在线考试系统设计与实现

基于Struts2结构的在线考试系统设计与实现
唐晔
【期刊名称】《软件导刊》
【年(卷),期】2013(012)006
【摘要】基于Struts2和J2EE技术框架,结合MySQL数据库,设计并实现了一个基于B/S架构的在线考试系统,重点阐述了用户答题模块的设计,并提出了一种系统随机出题的方法.
【总页数】2页(P71-72)
【作者】唐晔
【作者单位】遵义师范学院计算机科学与技术系,贵州遵义563002
【正文语种】中文
【中图分类】TP319
【相关文献】
1.基于B/S结构模式的在线考试系统的设计与实现 [J], 芦海燕
2.基于Authorware的《数据结构》在线考试系统的设计与实现 [J], 雷小朋;王长清
3.基于Struts2结构的在线考试系统设计与实现 [J], 唐晔;
4.基于B/S结构在线考试系统的设计与实现 [J], 刘莉莉
5.基于B/S结构的在线考试系统的设计与实现 [J], 李果;胡彩明
因版权原因,仅展示原文概要,查看原文内容请购买。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于Struts2结构的在线考试系统设计与实现
摘要:基于Struts2和J2EE技术框架,结合MySQL数据库,设计并实现了一个基于B/ S架构的在线考试系统,重点阐述了用户答题模块的设计,并提出了一种系统随机出题的方法。

关键词:在线考试系统;Struts2技术;J2EE;随机出题
0引言
根据市场需求,网站的开发需要高效,同时考虑到网站的盈利性,则需要降低人力成本和资源成本。

目前,大部分基于Java开发的网站都采用了Struts2的框架结构,并结合MySQL数据进行开发,以降低开发成本和提高开发效率。

Struts2是基于MVC模式的开发,Struts2框架为程序员的开发带了极大方便,同时也更好地满足了用户的多样化需求。

本系统是基于Struts2开发的一个在线考试系统,同时采用了J2EE技术,结合Mysql数据库,设计并实现了一个基于B/S架构的网上考试系统,并提出了一种系统随机出题的方法。

1系统总体设计
使用在线考试系统的用户必须是注册用户,使用时要先登录。

当用户选择某种测试后,系统会自动给出题目进行考试。

考试开始时,系统自动计时,用户必须在规定的时间内完成考试,否则时间到了则不能答题。

用户答完题后可以直接提交,系统会在用户自主提交或时间超时的情况下对用户所做的题进行评分。

用户信息和试题维护由管
理员进行管理,当管理员进入管理时,也需要有一个登录验证功能来验证是否有权限进入管理页面。

管理员可以完成录入、修改、添加、删除等功能,还可以把已保存在文本文件里的数据导入到数据库中。

本系统总体结构如图1所示。

2系统设计
2.1数据表设计
根据系统功能要求,构建如下数据表,其中有下划线的是主键:用户表(用户标号、登录名、密码、邮箱、登录状态):建立用户的基本情况,主要用于登录网络考试系统;
管理员表(管理员标号、登录名、密码、登录状态):建立管理员的基本情况,主要用于登录数据库管理;
选择题表(编号、题干、选项1、选项2、选项3、选项4):提供考试题中的选择题,其中“选项1”为正确答案;
填空题表(编号、题干、答案):提供考试题中的填空题;
套题记录表(编号、题目类型、年号、月号):用于记录套题包含的选择题和填空题,该表信息在录入试题时由系统自动填写;
成绩表(用户标号、考试时间、成绩):记录用户考试成绩。

2.2在线考试模块程序流程
在线考试模块流程如图2所示。

2.3系统页面
整个系统由模块构成,对应的页面如表1所示。

3关键技术处理
3.1选择题选项随机出现算法
选择题选项随机出现可以有效防止考试作弊的发生,维护考试的公平性。

为了让选择题选项随机出现,需要有一个产生随机排列的函数,同时要建立一个临时的随机表。

系统将值“1、2、3、4”与选项“A、B、C、D”建立一一映射,由随机排列函数对每一道题的值“1、2、3、4”进行重新排序,然后存储到临时的随机表。

随机排列函数是没有参数但有返回类型的函数,返回类型为整型数组,该数组中存储排好序的数字。

系统中定义了两个大小为4的整型一维数组a和b,a数组初始赋值为{1,2,3,4},是数据库中原选择题的选项,b数组用来存放重排后的数字。

每次从a中随机选一数字(选项),并在a中将该数字删除,然后存入b,循环4次后b 中就是重排的顺序,然后将b放入临时的随机表。

C#实现随机排列函数的代码如下:
static protected int[] RandomIntArray(){
int[] a = new int[4] { 1,2,3,4 };
int[] b = new int[4];
Random random = new Random();
for (int j = 3,n = 0;j >= 0;j--,n++){
int i;
i = random.Next(0,j + 1);
b[n] = a[i];
for (;i < j;i++){
a[i] = a[i + 1];}
}
return b;}
3.2抽题不重复性
为了避免系统在一套考题中抽题出现重复现象,系统采用排除法进行抽题:将所有备选试题号n存放在数组Topic中,随机生成抽取的序号m,1≤m≤n,选出试题号Topic(m);然后将Topic(m)与Topic(n)交换,再从备选试题号n-1中抽题,这时随机生成抽取的序号m,1≤m≤n-1;重复以上操作,直到抽题数量达到要求。

4结语
随着网络技术的飞速发展,无纸化的在线考试突破时间和空间的限制,成为当今考试的发展方向。

本文探讨了在线考试系统的设计与实现,并提出了一种系统随机出题的方法,具有一定的应用价值。

参考文献:
[1]H M DEITLEL,P J DEITEL.Java大学基础教程[M].刘晓莉,周璐,钱方,等,译.北京:电子工业出版社,2007.
[2]DONALD BROWN,CHAD MICHAEL DA VIS,SCOTT STANLICK. Struts2实战[M]北京:人民邮电出版社,2010.
[3]迪布瓦.MySQL cookbook:中文版[M].北京:电子工业出版社,2008.
[4]VIVEK CHOPRA,SING LI,JEFF GENENDER.Apache tomcat6高级编程[M].北京:人民邮电出版社,2009.。

相关文档
最新文档