开放实验室预约系统(基于Ajax的开放实验室预约系统的设计与实现)
实验室管理是当前教育信息管理中的一个薄弱环节。随着互联网和网络技术的发展,迫切需要改变传统的管理模式,实现开放式管理。广州大学实验中心是直属大学的实验教学和管理单位。拥有省级实验教学示范中心——电子信息实验室和两个大学级示范中心——计算机实验室和语言实验室,为11所高校30多个专业的1万多名学生提供开放的实验资源服务。因此,建立一个新的基于Web的开放实验室预约系统,可以更新和显示实验资源,桌面风格和方便快捷的预约操作,可以大大提高实验资源的利用率和学生的学习积极性,将实验技术人员从繁重的实验室
1.2 Ajax开发方法在Asp.net有两种使用Ajax技术的方法。一是使用ASP.NET Ajax,这是官方,微软;提供的Ajax包库和工具集;二是自己实现xmlhttprequest对映像和方法调用;前一种方法很简单,但不够灵活。后一种方法很灵活,但是编码的工作量有点大。该系统的开发结合了两种方法。要使用ASP.NET Ajax,您只需要安装和配置开发环境。ASP.NET Ajax包括服务器框架MicrosoftASP.NET 2.0 Ajax扩展)和客户端脚本集合MicrosoftAjax库)。安装包将安装AJAX网站扩展安装模板和一个扩展Visual Studio工具箱的程序集(AJAXExtensionToolbox.dll)。通过将相应的控件拖到页面上,页面可以支持Ajax。它提供了一系列类似桌面应用的用户界面组件,可以生成高度交互的网络应用,如提供事件确认和格式的交互用户界面,提供快速的界面响应时间而不刷新页面,提供拖放操作,非常方便。
2系统设计及关键技术分析2.1系统功能设计本开放式实验预约系统主要服务于教师、学生、实验技术人员和系统管理员,系统采用权限分级管理,主要功能模块见如图2。系统向学生用户提供的主要功能包括:实验室开放信息查询、实验预约(取消)、实验项目(包括实验指导)查看、实验报告提交(预约一些大型精密仪器需要额外的实验项目预习报告,格式和要求由指导实验项目的老师制定)、在线虚拟实验、预约历史浏览、在线提问等权限,功能,其中实验预约模块的时序图如如图3所示。教师用户的主要功能是查询:实验项目、修改实验项目指导内容、查看部分虚拟实施课程的实验报告、查看报告、修改密码功能、在线答疑等。实验技术人员的主要功能是用:浏览实验室的开放信息,创建一个开放的、可回收的、开放的实验室(按时间和不同房间操作);批准预订申请,重置申请,管理和维护仪器设备。2.2关键技术分析该系统的特点是利用Ajax技术按需读取和刷新实验室预约信息,并在客户端提供类似桌面风格的丰富用户界面控件,提高用户体验。要实现这些功能,关键在于系统的层次结构和网络服务的异步调用。网络服务注重程序逻辑的实现,提供纯数据,不涉及任何表达方式;客户端的ASP.NET Ajax框架用于处理程序的所有接口并与用户交互。系统采用流行的三层架构:数据层、业务层和表示层。业务逻辑层主要用于实现预订系统的业务逻辑。例如,当用户登录时,有必要显示可用于预订的实验资源。在这个过程中,表示层向业务逻辑层的业务逻辑项BLL发送一个请求,BLL将调用相应的获取实验信息的逻辑来处理这个请求。实验预约类是关键类,图4是添加关联后实验预约案例的简化类图。使用ASP.NET Ajax异步调用网络服务主要分为两个步骤。第一步是:为了使ASP.NET Ajax生成的网络服务的客户端异步调用代理,并允许在JavaScript代码中直接调用网络服务方法,需要将[ScriptService]属性添加到网络服务类中,如粗体部分://.[scriptservice]//.公共类简单网络服务:系统。web.services.webservice {//.}第2步,用ASP.NET Ajax异步调用这个web服务。首先,在网站上创建一个由ASP.NET Ajax支持的新页面,并在页面上添加一个ScriptManager服务器端控件。为了让ASP.NET Ajax为之前的Web服务生成客户端异步调用代理,有必要在ScriptManager控件中添加对Web服务的引用
然后在程序接口中声明基本的用户界面元素,并指定调用函数。3系统原型和应用效果3.1系统原型开放实验室预约系统平台服务器整体组件和关系如图5。预订系统网络服务器操作系统使用视窗2003服务器企业版。Windows 2003操作系统安装了。NET Framework2.0和MicrosoftASP.NET 2.0 Ajax扩展来支持Ajax控件的运行。同时,启动Aspnet状态服务,即启动Aspnet_state.exe进程以确保会话状态有效。数据库服务器使用SQL Server 2005。如图6系统接口的一部分。3.2应用效果开放实验室预约系统已于2010年3月在我实验中心对约10所高校和31个专业的师生进行了试运行。其中,Ajax技术的应用解决了传统Web模式的缺点,例如,1)系统提供了丰富的客户端控件,易于操作。提供类似桌面应用程序的控件,如日期选择、标签和对用户操作,以捕获和支持拖放操作;同时,它甚至模拟桌面程序的多窗口处理业务,并使用异步传输与服务器交互(如如图6所示)。2)解决了传统网络中的“白屏”现象,为用户提供了流畅的交互,即不需要每次都刷新页面,学生交互频繁,高度参与系统。3)无需刷新即可实现网页数据的搜索、预览和编辑。在Ajax控件中,用户可以单击编辑将静态表更新为具有可编辑内容的表。用户单击完成后,异步发送一个Ajax请求来更新服务器和用户界面,这提高了效率。4)异步传输提高了站点的性能,系统按需读取,可以减少从服务器下载重复数据。实践表明,与传统的全页面刷新模式相比,Ajax的异步交互模式在能节省网络中具有60%以上的带宽。