欢迎光临112期刊网!
网站首页 > 论文范文 > 计算机论文 > 计算机应用 > 基于AJAX技术提升Web考试系统性能的研

基于AJAX技术提升Web考试系统性能的研

日期:2023-01-24 阅读量:0 所属栏目:计算机应用


  摘要:网络考试系统是我国教育远程化的重要组成部分,然而现有的网上考试系统模式众多,各有千秋。文章重点研究利用ajax技术提升web考试系统性能。改进后,web考试系统具有c/s结构的优点,并克服了c/s和b/s结构的缺点,提高了系统的实用性。

  关键词:ajax;在线考试系统;b/s系统;c/s系统
  
  一、引言
  
  ajax是asynchronous javascript and xml(以及dhtml等)的缩写。它由几种技术组合而成,包括:基于xhtml和css标准的表示;使用document object model进行动态显示和交互;使用xml http request与服务器进行异步通信;使用javascript进行绑定。
  传统的web应用程序强制用户进入提交、等待、重新显示的模式,即用户的界面操作触发http请求,服务器在接收到请求之后进行业务逻辑处理,比如保存数据,然后向客户端返回一个html页面。但服务器处理数据的时候,用户处于等待的状态,每一步操作都需要等待,使得web用户界面在响应灵敏性方面大打折扣。而ajax带给用户完全不同的浏览感受。传统的动态网页技术被隐藏到ajax的后台。用户所看到的只是一个静态页面,不需要在提交页面后等待或者主动刷新网页。动态程序反馈的结果被直接无刷新地显示在这个页面上。因此利用ajax开发的web应用程序能够提供响应极其灵敏的web用户界面,使得应用过程很自然,操作很流畅,并消除了页面刷新所带来的闪烁。
  
  二、系统的设计与实现
  
  (一)系统设计
  在用户登录进考试系统时,将登录时间按用户id存入session变量中,以便对每个用户实现计时。
  用户登录后,利用ajax技术在后台实现计时功能,由javascript定时向服务器查询考试时间并实时显示在用户的web页面上。考试时间可在jsp的配置文件中给出,计时器到规定时间后如用户还未提交试卷,则由系统自动提交。
  用户考试过程中,利用ajax技术由javascr-ipt代码在后台为用户定时存盘,一旦系统出现故障,再次进入考试系统时,可根据保存的信息在故障点处继续进行考试,原来考试的信息可以从服务器端一次性加载。
  试卷的形式可以采用一页一题的方式,也可采用一页多题的方式。用户在答题时,系统在后台为用户预先从服务器端读取下一段的试题,当用户需要下一段试题时,可以很快从客户端直接加载,而不需要用户等待服务器端的数据,实现无闪烁、无延迟的效果。
  ajax采用的是一种沙箱安全模型,ajax代码(具体而言即xml http request对象)只能对所在的同一个域发送请求,在本地机器上运行的代码只能对本地机器上的服务器端脚本发送请求。虽然上述功能的实现都是基于客户端脚本,对于用户来说是可见的,但是ajax的沙箱安全模型保证了只有来自考试服务器端的客户端脚本才可以与服务器通信,同时服务器端也只接受有访问信息的客户端的请求(通过session等技术)。所以该改进方案保证了考试系统的准确性。
  (二)系统的实现
  1、xml http request对象。目前主流浏览器均支持xml http request对象,但不同的浏览器对该对象的声明各不相同,为了使得系统具有通用性,要对不同情况加以区分。本文将该功能直接写在xml 文件中,具体实现请参考文献。xml http request对象的各种方法和属性请参考msxml5.0sdk或其他相关文档。
  2、时间控制系统的实现。首先在服务器数据库的考生表中设置“答卷时间”字段,用于记录考生剩余考试时间。该字段值在考试过程中会以每分钟减一的频率被改写,并在半分钟之内回显给考生,当该字段值减为零或以下时系统自动交卷,结束考试。在计时器的设计上,以.net系统自带的组件为基础进行了自定义设计。在文件中生成并启动自定义计时器,由调用者订阅其发出的一分钟一次的事件,并将自身注册为监听的监听者。这样,每次触发事件时,注册者相应函数内的时间更新功能就会被执行,从而达到考生表中“答卷时间”字段值每分钟自动减一的功能。由于net中的组件是基于服务器的,并为在多线程环境中用于辅助线程而设计的,服务器计时器可以在线程间移动来处理引发的elapsed事件,这样就可以比windows计时器更精确地按时引发事件。在客户端向服务器端请求时间时,要根据xmlhttprequest对象的http状态码来操作;在服务器端,必须将“cache-control”头设为“no-cache”来保证每次取得的数据都不是从缓存中得到的。下面是计时器的一段示例代码。

  客户端:
  <script language="javascript" src=""></script>
  <script language="javascript">
  function clockfun(){
  var url="";
  
  ("get",url,true); //lxmlhttp对象在中声明;
  
  ystatechange=function(){ //指定服务器返回信息时客户端的处理程序
   if(tate==4){
  
  if(==200){// http的状态码
   mentbyid("clock").innerhtml=setext;}}}
  (null) ;}//发送请求到http服务器
  function timer(){//计时器
  
  erval('clockfun()',1000) ;}
  </script>
  服务器端()
  calendar
  begintesttime=calendarget instance ();
  begintest (……);//省略号处为登录时间;
  long
  begintime=ein millis();
   long
  nowtime=tance().
  get'timeinmillis(); //获取当前时间
  der ("cache -control","no-cache");//数据不缓存
  long hastime=nowtime-begintime;
  //如用倒计时,此处要用总时长来减去此值;
  ter().write ((new long (hastime/60000)).tostring}+":"+(new long((hastime%60000)/1000)).tostring}) ;//以文本方式返回时间 ter().flush();
  3、试卷的定时存盘和预读试卷数据的实现。这两种功能的实现也采用ajax技术,只是由于请求的数据量比计时器的数据量大,所以请求时采用“post”方法。同时要求数据以xml格式返回,在客户端利用dom的强大功能来实现对数据的操作。用“post”,方法请求数据时客户端要添加request头,uestheader ("content-type","applicatior/ x-/network/">网络环境为服务器在教育网内,客户机在局域网内和远程电信网。系统在局域网内部和广域网上的测试均达到了预期效果。
  
  三、结束语
  
  本文利用ajax技术改进现有的网上考试系统,实现了在线考试的b/s系统,使其达到了c/s系统所具有的功能,同时兼备了b/s系统固有的优势,即能实现用户的网上在线考试的功能,又不需要用户安装额外的客户端软件。新的考试系统具有准确计时、快捷、安全、方便等优点,从根本上改变了原有网上考试系统的多种弊端。
  
  参考文献:
  1、jesse james : a new approach to web applications[eb/ol].http: // adaptivepath. com/ publications/ ,2006-02-28.
  2、david ript: the detnitive guide 4th edition[m].0'neilly media,inc,2001.
  3、黄国平,陈斌.jsp与javascript整合使用[j].南通职业大学学报,2004(4).   本文链接:http://www.qk112.com/lwfw/jsjlw/jisuanjiyingyong/244525.html

论文中心更多

发表指导
期刊知识
职称指导
论文百科
写作指导
论文指导
论文格式 论文题目 论文开题 参考文献 论文致谢 论文前言
教育论文
美术教育 小学教育 学前教育 高等教育 职业教育 体育教育 英语教育 数学教育 初等教育 音乐教育 幼儿园教育 中教教育 教育理论 教育管理 中等教育 教育教学 成人教育 艺术教育 影视教育 特殊教育 心理学教育 师范教育 语文教育 研究生论文 化学教育 图书馆论文 文教资料 其他教育
医学论文
医学护理 医学检验 药学论文 畜牧兽医 中医学 临床医学 外科学 内科学 生物制药 基础医学 预防卫生 肿瘤论文 儿科学论文 妇产科 遗传学 其他医学
经济论文
国际贸易 市场营销 财政金融 农业经济 工业经济 财务审计 产业经济 交通运输 房地产经济 微观经济学 政治经济学 宏观经济学 西方经济学 其他经济 发展战略论文 国际经济 行业经济 证券投资论文 保险经济论文
法学论文
民法 国际法 刑法 行政法 经济法 宪法 司法制度 法学理论 其他法学
计算机论文
计算机网络 软件技术 计算机应用 信息安全 信息管理 智能科技 应用电子技术 通讯论文
会计论文
预算会计 财务会计 成本会计 会计电算化 管理会计 国际会计 会计理论 会计控制 审计会计
文学论文
中国哲学 艺术理论 心理学 伦理学 新闻 美学 逻辑学 音乐舞蹈 喜剧表演 广告学 电视电影 哲学理论 世界哲学 文史论文 美术论文
管理论文
行政管理论文 工商管理论文 市场营销论文 企业管理论文 成本管理论文 人力资源论文 项目管理论文 旅游管理论文 电子商务管理论文 公共管理论文 质量管理论文 物流管理论文 经济管理论文 财务管理论文 管理学论文 秘书文秘 档案管理
社科论文
三农问题 环境保护 伦理道德 城镇建设 人口生育 资本主义 科技论文 社会论文 工程论文 环境科学