基于JAVA的在线考试系统的设计与实现_第1页
基于JAVA的在线考试系统的设计与实现_第2页
基于JAVA的在线考试系统的设计与实现_第3页
基于JAVA的在线考试系统的设计与实现_第4页
基于JAVA的在线考试系统的设计与实现_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于JAVA的在线考试系统的设计与实现摘 要:基于Java的在线考试系统的设计与实现采用MyEclipse 6.5作为开发工具,使用MVC开发形式,框架使用了目前流行的Struts,数据库使用Oracle 10i。该系统主要有三大模块:管理员模块对试题进展管理;教师模块负责对试题批阅;学生模块主要是在线考试。关键词:Java设计;Struts框架;在线考试;B/S中图分类号:TP316 文献标识码:A 文章编号:2095-1302202101-00-020 引 言在分析了现有考试系统,结合实际情况的根底上,利用Java语言设计并实现了一个基于Web的在线考试系统设计。系统包含了登录、注册、教师

2、和学生信息管理、在线考试、试卷管理、题库管理、学生成绩管理等能功能。1 采用技术模型-视图-控制器MVC是Xerox PARC在八十年代为编程语言Smalltalk-80创造的一种软件设计形式,至今已被广泛使用。最近几年被推荐为Sun公司J2EE平台的设计形式。Struts最早是作为Apache Jakarta工程的组成部分问世运做,Struts的目的是为了帮助开发者减少在运用MVC设计模型来开发Web应用的时间。假设想混合使用Servlet和JSP的优点来建立可扩展的应用,Struts是一个不错的选择。Struts 是MVC的一种实现,它将Servlet和JSP标记属于J2EE标准用作实现的

3、一部分。Struts继承了MVC的各项特性,并根据J2EE的特点,做了相应的变化与扩展。Struts的核心是ActionSevlet,ActionSevlet的核心是Struts-config.xml配置文件。2 系统可行性分析可行性研究Feasibility Study是为了弄清所定义的工程是不是可能实现并值得进展。下面从三个方面分析本系统的可行性。本系统是在Windows XP操作系统下开发的基于B/S体系构造的Struts框架的MVC形式的系统,采用MyEclipse 6.5、Tomcat 5.5、DreamWeaver、PLSQL作为开发工具。本系统后台采用Oracle 10i数据库,

4、其具有跨平台性、可靠性、易用性。软件运行环境:终端支持运行Windows的计算机、数据库支持各种流行的大型关系数据库,数据库效劳器支持Windows等各种操作系统;开发本系统的经济本钱低,使用Java开发维护费用不高、开发的周期短;网络化已经成为社会的趋势,本系统操作简单方便。3 系统设计形式基于B/S的在线Web考试形式的物理模型:一方是管理员在一端通过Internet与效劳器进展连接,另一方是学生分别从不同的地方,也通过Internet与考试效劳器连接,图1为系统的网络原理图。图1 系统的网络原理图在线考试系统从概念上看,是一个典型的数据库应用Web系统,采用三层B/S体系构造。三层体系构

5、造相对较为简单,表示层展现给最终用户UI界面,中间业务逻辑层处理用户恳求并访问数据库,底层为持久层数据库实现;而多层体系构造那么将业务逻辑层进一步细化,使系统更加灵敏。本系统采用了多层体系构造系统体系构造如图2在线考试系统网络部署图。图2 在线考试系统网络部署图4 系统总体设计及部分模块实现该系统具有用户登录、参加考试、以及教师进展试题维护、成绩查询等功能的ASP应用程序,应具有开放性、方便性和灵敏性。登录用户可以是学生、教师和系统管理员,每类用户有不同的操作权限。考生通过用户验证后进入考试系统,并在规定的时间内进展答题,考生交卷后,其分数将被存入数据库中以供以后的查阅。为了保证系统运行的效率

6、和可靠性,系统效劳器端应具有较高的软硬件配置,客户端的要求不是很高。详细设计阶段的任务是在总体设计的根底上进一步确定如何实现目的系统,包括以下内容:确定每一模块使用的数据构造,确定每个模块实现的功能,确定流程图,为每个模块确定采用的算法,写出模块的详细过程性描绘。下面将系统试题抽取模块实现时的关键技术及代码进展说明。在进入到该页面之前,所抽取的题目是在题库中随机抽取的,不能有重复的题目,部分代码如下所示:publicstatic ListIntegergetRandomsint size, intnum ListIntegerlistInt = newArrayListIntegerRandom ran = new Random;int k = 0;/初始的数据个数为0;while true /这里可以有两种方法来处理:一种是重新遍历数组找出不重复,另一种是直接用Set 集合if listInt.size = 0 listInt.addnew Integerran.nextIntsize;k+; else int t = ran.nextIntsize;boo

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论