论文部分内容阅读
[摘 要] 文章從计算机实验室管理的相关工作展开,结合本人工作中的经验,利用Ajax技术的独特优势,研究基于Ajax技术的Web系统应用,改善传统B/S模式的系统。
[关键词] Ajax 异步 实验室
[Abstract] This essay starts from the relevant work of computer labolatory management, combining the author's personal work experience, utilizing the unique edge of Ajax Technology, to study on web system application based on Ajax Technology, in order to the traditional system of B/S mode.
[Keyword] Ajax Asynchronous Lab
1、实验室现状分析
随着社会的发展和高等教育理念的进步,各高校陆续把实验室的开放提上工作日程,并不断加大实验室开放的力度,其目的是为了最大限度地利用好现有的仪器设备和教师资源,提高学生的动手能力,培养学生的创新能力,拓展学生的知识面,加强学生的团队协作精神。
实验室开放的过程主要包括开放性实验项目信息的公布、学生申请及实验资格审查、实验预约、实验排课、实验考勤、指导实验、实验结果评定及上报等一系列环节。以往的开放管理工作方式存在一些弊端,体现在:
(1)实验室管理员和实验指导教师需要投入相当的精力去处理事务性的工作,尤其随着实验室开放规模和开放范围的不断扩大,实验室的开放工作日显繁琐,工作量日益增加。
(2)学校层面的领导无法及时获取各实验室开放情况的统计信息,使得其对实验室开放的指导工作有一定的滞后性。
(3)实验成绩的保存存在保密性差的问题,从而降低了实验成绩的可信性。
在计算机技术尤其是网络技术飞速发展的今天,施行网络化、无纸化办公能提高工作效率,作为实验实践教学工作的一个重点方向,开放性实验管理系统也将慢慢与学校办公自动化系统接轨。
本文结合Ajax技术,针对传统的B/S模式系统的缺点进行研究,利用Ajax技术,旨在通过对新技术的研究应用,能够在一定程度上解决大数据量数据与服务器频繁交互所给服务器带来的压力问题,能为大数据量的应用环境系统开发时,提供一种解决方案。
2、Ajax技术分析
2.1 Ajax定义
Ajax—Asynchronous JavaScript and XML (异步Javascript 和 XML)一种创建交互式网页应用的网页开发技术。实现Ajax的方法是多种的,从另一个角度来看Ajax是一种设计方式或者是一种指导思想。
2.2 Ajax优点
(1)异步发送请求,给用户有连续的体验。用户发送请求后,还可以在当前页面进行浏览或者继续发送请求,而服务器响应后,客户端浏览器并不是重新加载整个页面,而是仅仅加载更新的部分,这个是最核心的内容。
(2)服务器响应的是数据,不是页面内容。与传统Web应用系统不同,服务器端不再生成整个页面。页面第一次下载完,就相当于在客户端部署了相关的应用,客户端的Javascript负责与服务器通信,只获取服务器更新了的数据,从而减少网络数据流量。
(3)浏览器加载了应用,不只是简单的视图。传统的Web应用系统只是显示结果,没有包含逻辑。Ajax应用在初始化时需要加载大量的Javascript代码,这些代码已经包含简单的业务逻辑,负责处理部分逻辑,异步提交请求,以及读取服务器响应数据,动态更新页面,而且还可以保存用户会话状态。
3、基于Ajax实验室管理系统的设计
3.1 系统模式
本系统采用B/S模式的三层网络体系结构,简化客户端的程序安装、提供统一、友好的操作界面、操作简单、交互性强,提高了系统的安全性,系统维护复杂度也降至最低。
3.2 数据库
数据库系统选择用MySQL,它是一个小型关系型数据库管理系统,由于其体积小、速度快,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库,目前MySQL被广泛地应用在Internet上的中小型网站中。
3.3 系统功能模块
系统功能分为系统设置、实验室管理、学生管理、教学管理、实验预约管理、统计分析等几个功能模块。
图1 系统功能模块图
系统设置包括系统参数、账号管理、权限分配。其中账号可包括四种角色:教师、学生、实验室主任、实验室管理员。
实验室管理包括实验室信息、实验设备管理、实验管理。
①教师可以对实验进行修改、添加、删除、导入导出等操作;
②管理员可以对实验设备进行添加、分组、故障报修等操作;
学生管理包括学生组管理、学生角色管理、学生账号管理、注册审批管理、迟到旷课管理、学生黑名单管理。
教学管理包括课程管理、设备使用状态管理、实验结果管理、实验成绩管理。
实验预约管理,学生通过系统公布的课外实验进行预约,管理员根据学生实验记录,按先到先得原则,对学生预约进行审批。
统计分析包括实验次数、迟到旷课、实验室使用率、实验日志、设备使用情况、设备故障。
3.4 Ajax在实验室管理系统的应用
(1)与传统的Web应用不同,Ajax采用异步交互过程。Ajax在用户与服务器之间引入一个Ajax中间引擎,刷新页面不用打断交互流程进行重新加裁,就可以被动态地更新,从而消除了网络交互过程中的处理一等待一处理一等待的缺点。用户的浏览器在执行任务时即装载了Ajax引擎。Ajax引擎用Javascript语言编写,藏在一个隐藏的框架中。它负责编译用户界面及与服务器之间的交互。Ajax引擎允许用户与应用软件之间的交互过程异步进行,独立于用户与网络服务器间的交流。客户端用Javascript调用Ajax引擎来代替产生一个HTTP的用户动作,内存中的数据编辑、页面导航、数据校验这些不需要重新载入整个页面的需求可以交给Ajax来执行。异步发送的核心是XMLHttpRequest,以下是在浏览器中创建XMLHttpRequest 的方法:
funetionereateXMLHttpRequest(){
var XMLHttp:
try{//IE浏览器(6.0以上)
XMLHttp = new AetiveXObjeet(”Msxm12.XMLHttp”):
}cateh (e){
try{//其他IE浏览器
XMLHttp=newAetiveXObjeet(”Mierosoft.XMLHttp”):
}catch (e2){
XMLHttp==false;
}
}
//Mozilla 浏览器
if(!XMLHttp && typeof XMLHttpRequest != ’undefined’){
XMLHttp=newXMLHttpRequest();
}
Return XMLHttp;
}
(2)实验室管理系统面向的是全校师生,在大量用户登录系统进行操作的时候,每个用户都向服务器会提交数据,传统模式在用户每次操作时都向服务器发送数据,如每输入一个字符都重复这个处理过程,导致很短时间内创建大量请求,这不仅引起服务器的响应问题,也使用户处理过程中界面变得很慢。利用Ajax节流提交模式,可以将要发送到服务器的数据存入客户端缓存中,然后在预订的时间一次性发送数据,在输入到发送的处理过程中作出了精细调整,使用户感觉不到延迟,从而提高速度。
(3)利用表单增量验证改善实验室管理系统用户注册的效果。教师或学生在注册时,经常要填写许多信息,传统模式在填写所有信息后,再来验证。若其中一项有错误,就必须重新填写所有信息。使用Ajax有效解决此问题,首先利用isset()函数确定哪些字段需要验证,然后调用ValdateField()函数来验证每一个字段,当特定字段有数值输入就开始验证,不需要等待到最后再验证,及时让用户发现错误,从而提高界面交互性。
(4)实验室管理系统中存在许多级联下拉菜单,从一个下拉菜单中选中一项后,相应的另一个下拉菜单的内容会随之改变。传统模式就是每次选中都提交一次表单,刷新整个页面,这是用户体验度最差的。采用Ajax方式,即开始只载入第一层菜单的内容,当用户选中第一层菜单的某项时,再通过XmlHttpRequest来获取相应选项所对应的第二层菜单的内容。这样就减少下载大量无用的数据量,只下载必要的数据,从而减少带宽的占用。
(5)利用Ajax的定时刷新,学生在提交实验报告的时候,在教师端可以自动显示提交状态。利用iInterval函数设定一个时间间隔,定时检查服务器是否有数据更新。那么当服务器收到有新数据的时候,在教师登录端就能马上刷新状态,及时地显示当前实验报告的提交情况,并作出查看,批改等操作。
Ajax技术不但减轻服务器的压力,也使得浏览器用户界面交互性更强,用户体验性更好。对于开发一个在全校范围内对实验室的进行数据采集、管理、查询的软件系统是一个很好的技术平台。
总结,由于各个浏览器公司的竞争,不同版本浏览器的Javascript有着很大的差异,在创建XMLHttpRequest的方式都不一样,这使得引入Ajax的系统对浏览器版本具有很强的依赖性,导致系统在不同浏览器上使用出现兼容性问题,这个问题是基于Ajax开发的系统在日后需要不断研究和完善的地方。
参考文献:
[1]王刚,高校实验中心教学管理信息系统的设计研究 ,科技广场,2009,3.
[2]田原,基于AJAX的教学web应用,辽宁工程技术大学学报,2007,(05).
[3]夏腾,覃俊,有关AJAX相关问题探讨与研究,电脑知识与技术(学术交流),2007,(11).
[关键词] Ajax 异步 实验室
[Abstract] This essay starts from the relevant work of computer labolatory management, combining the author's personal work experience, utilizing the unique edge of Ajax Technology, to study on web system application based on Ajax Technology, in order to the traditional system of B/S mode.
[Keyword] Ajax Asynchronous Lab
1、实验室现状分析
随着社会的发展和高等教育理念的进步,各高校陆续把实验室的开放提上工作日程,并不断加大实验室开放的力度,其目的是为了最大限度地利用好现有的仪器设备和教师资源,提高学生的动手能力,培养学生的创新能力,拓展学生的知识面,加强学生的团队协作精神。
实验室开放的过程主要包括开放性实验项目信息的公布、学生申请及实验资格审查、实验预约、实验排课、实验考勤、指导实验、实验结果评定及上报等一系列环节。以往的开放管理工作方式存在一些弊端,体现在:
(1)实验室管理员和实验指导教师需要投入相当的精力去处理事务性的工作,尤其随着实验室开放规模和开放范围的不断扩大,实验室的开放工作日显繁琐,工作量日益增加。
(2)学校层面的领导无法及时获取各实验室开放情况的统计信息,使得其对实验室开放的指导工作有一定的滞后性。
(3)实验成绩的保存存在保密性差的问题,从而降低了实验成绩的可信性。
在计算机技术尤其是网络技术飞速发展的今天,施行网络化、无纸化办公能提高工作效率,作为实验实践教学工作的一个重点方向,开放性实验管理系统也将慢慢与学校办公自动化系统接轨。
本文结合Ajax技术,针对传统的B/S模式系统的缺点进行研究,利用Ajax技术,旨在通过对新技术的研究应用,能够在一定程度上解决大数据量数据与服务器频繁交互所给服务器带来的压力问题,能为大数据量的应用环境系统开发时,提供一种解决方案。
2、Ajax技术分析
2.1 Ajax定义
Ajax—Asynchronous JavaScript and XML (异步Javascript 和 XML)一种创建交互式网页应用的网页开发技术。实现Ajax的方法是多种的,从另一个角度来看Ajax是一种设计方式或者是一种指导思想。
2.2 Ajax优点
(1)异步发送请求,给用户有连续的体验。用户发送请求后,还可以在当前页面进行浏览或者继续发送请求,而服务器响应后,客户端浏览器并不是重新加载整个页面,而是仅仅加载更新的部分,这个是最核心的内容。
(2)服务器响应的是数据,不是页面内容。与传统Web应用系统不同,服务器端不再生成整个页面。页面第一次下载完,就相当于在客户端部署了相关的应用,客户端的Javascript负责与服务器通信,只获取服务器更新了的数据,从而减少网络数据流量。
(3)浏览器加载了应用,不只是简单的视图。传统的Web应用系统只是显示结果,没有包含逻辑。Ajax应用在初始化时需要加载大量的Javascript代码,这些代码已经包含简单的业务逻辑,负责处理部分逻辑,异步提交请求,以及读取服务器响应数据,动态更新页面,而且还可以保存用户会话状态。
3、基于Ajax实验室管理系统的设计
3.1 系统模式
本系统采用B/S模式的三层网络体系结构,简化客户端的程序安装、提供统一、友好的操作界面、操作简单、交互性强,提高了系统的安全性,系统维护复杂度也降至最低。
3.2 数据库
数据库系统选择用MySQL,它是一个小型关系型数据库管理系统,由于其体积小、速度快,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库,目前MySQL被广泛地应用在Internet上的中小型网站中。
3.3 系统功能模块
系统功能分为系统设置、实验室管理、学生管理、教学管理、实验预约管理、统计分析等几个功能模块。
图1 系统功能模块图
系统设置包括系统参数、账号管理、权限分配。其中账号可包括四种角色:教师、学生、实验室主任、实验室管理员。
实验室管理包括实验室信息、实验设备管理、实验管理。
①教师可以对实验进行修改、添加、删除、导入导出等操作;
②管理员可以对实验设备进行添加、分组、故障报修等操作;
学生管理包括学生组管理、学生角色管理、学生账号管理、注册审批管理、迟到旷课管理、学生黑名单管理。
教学管理包括课程管理、设备使用状态管理、实验结果管理、实验成绩管理。
实验预约管理,学生通过系统公布的课外实验进行预约,管理员根据学生实验记录,按先到先得原则,对学生预约进行审批。
统计分析包括实验次数、迟到旷课、实验室使用率、实验日志、设备使用情况、设备故障。
3.4 Ajax在实验室管理系统的应用
(1)与传统的Web应用不同,Ajax采用异步交互过程。Ajax在用户与服务器之间引入一个Ajax中间引擎,刷新页面不用打断交互流程进行重新加裁,就可以被动态地更新,从而消除了网络交互过程中的处理一等待一处理一等待的缺点。用户的浏览器在执行任务时即装载了Ajax引擎。Ajax引擎用Javascript语言编写,藏在一个隐藏的框架中。它负责编译用户界面及与服务器之间的交互。Ajax引擎允许用户与应用软件之间的交互过程异步进行,独立于用户与网络服务器间的交流。客户端用Javascript调用Ajax引擎来代替产生一个HTTP的用户动作,内存中的数据编辑、页面导航、数据校验这些不需要重新载入整个页面的需求可以交给Ajax来执行。异步发送的核心是XMLHttpRequest,以下是在浏览器中创建XMLHttpRequest 的方法:
funetionereateXMLHttpRequest(){
var XMLHttp:
try{//IE浏览器(6.0以上)
XMLHttp = new AetiveXObjeet(”Msxm12.XMLHttp”):
}cateh (e){
try{//其他IE浏览器
XMLHttp=newAetiveXObjeet(”Mierosoft.XMLHttp”):
}catch (e2){
XMLHttp==false;
}
}
//Mozilla 浏览器
if(!XMLHttp && typeof XMLHttpRequest != ’undefined’){
XMLHttp=newXMLHttpRequest();
}
Return XMLHttp;
}
(2)实验室管理系统面向的是全校师生,在大量用户登录系统进行操作的时候,每个用户都向服务器会提交数据,传统模式在用户每次操作时都向服务器发送数据,如每输入一个字符都重复这个处理过程,导致很短时间内创建大量请求,这不仅引起服务器的响应问题,也使用户处理过程中界面变得很慢。利用Ajax节流提交模式,可以将要发送到服务器的数据存入客户端缓存中,然后在预订的时间一次性发送数据,在输入到发送的处理过程中作出了精细调整,使用户感觉不到延迟,从而提高速度。
(3)利用表单增量验证改善实验室管理系统用户注册的效果。教师或学生在注册时,经常要填写许多信息,传统模式在填写所有信息后,再来验证。若其中一项有错误,就必须重新填写所有信息。使用Ajax有效解决此问题,首先利用isset()函数确定哪些字段需要验证,然后调用ValdateField()函数来验证每一个字段,当特定字段有数值输入就开始验证,不需要等待到最后再验证,及时让用户发现错误,从而提高界面交互性。
(4)实验室管理系统中存在许多级联下拉菜单,从一个下拉菜单中选中一项后,相应的另一个下拉菜单的内容会随之改变。传统模式就是每次选中都提交一次表单,刷新整个页面,这是用户体验度最差的。采用Ajax方式,即开始只载入第一层菜单的内容,当用户选中第一层菜单的某项时,再通过XmlHttpRequest来获取相应选项所对应的第二层菜单的内容。这样就减少下载大量无用的数据量,只下载必要的数据,从而减少带宽的占用。
(5)利用Ajax的定时刷新,学生在提交实验报告的时候,在教师端可以自动显示提交状态。利用iInterval函数设定一个时间间隔,定时检查服务器是否有数据更新。那么当服务器收到有新数据的时候,在教师登录端就能马上刷新状态,及时地显示当前实验报告的提交情况,并作出查看,批改等操作。
Ajax技术不但减轻服务器的压力,也使得浏览器用户界面交互性更强,用户体验性更好。对于开发一个在全校范围内对实验室的进行数据采集、管理、查询的软件系统是一个很好的技术平台。
总结,由于各个浏览器公司的竞争,不同版本浏览器的Javascript有着很大的差异,在创建XMLHttpRequest的方式都不一样,这使得引入Ajax的系统对浏览器版本具有很强的依赖性,导致系统在不同浏览器上使用出现兼容性问题,这个问题是基于Ajax开发的系统在日后需要不断研究和完善的地方。
参考文献:
[1]王刚,高校实验中心教学管理信息系统的设计研究 ,科技广场,2009,3.
[2]田原,基于AJAX的教学web应用,辽宁工程技术大学学报,2007,(05).
[3]夏腾,覃俊,有关AJAX相关问题探讨与研究,电脑知识与技术(学术交流),2007,(11).