基于训练信息网的实验室信息管理系统研究
摘要论文探讨了一个基于ASP.NET、ADO.NET和SQL Server 2000相结合的实验室信息管理系统总体构结及功能实现,有效解决了实验室信息管理系统的WEB动态发布、查询等问题,并设计了DataGrid控件的数据添加方法来增加数据处理的灵活性。
【关键词】训练信息网 实验室 信息管理系统
1 引言
在计算机技术与信息技术迅猛发展的今天,作为信息系统核心和基础的数据库技术得到了越来越广泛的应用。从小型单项事务处理系统到大型共享系统,从一般商用事务处理到计算机辅助设计与制造、计算机集成制造系统、办公信息系统、地理信息系统等等,越来越多的新的应用领域采用数据库存储和处理他们的信息资源。实验室作为人、财、物、信息的汇聚点之一,为提高实验室工作效率、保证实验室的管理质量,也迫切需要现代化的信息管理手段。目前,有的单位已开发出单机版的实验室信息管理系统,而基于训练信息网或局域网的实验室信息管理系统还没有出现,本文谨就这个问题作一简单的探讨。
2 系统架构
2.1 系统体系结构
基于训练信息网的实验室信息管理系统是用于用户(学员、教员、研究人员等)在线采用浏览器进行实验室信息各个环节的网上操作管理,它包括用户登录、人员管理、教学管理、科研管理、图书管理、实验室管理等ASP应用程序。
从结构和功能上看,系统可以分为三部分:显示逻辑部分(表示层),事务处理逻辑部分(应用层)和数据处理逻辑部分(数据层)。如图1所示:
表示层位于客户端,相当于用户界面,如IE浏览器;应用层是实验室信息管理系统的核心部分,主要负责处理HTTP请求、数据库的连接及交互等工作;数据层位于底层,以ADO为数据库接口,处理应用层对数据库的查询﹑更新﹑筛选等请求。层与层之间相互独立,任意一层的改变不影响其它层的功能,可以说是网络应用体系结构的一次重大变革。
2.2 系统功能模块
基于训练信息网的实验室信息管理系统包括人员管理系统,教学管理系统,科研管理系统,图书管理系统,实验室管理系统,打印管理系统等几个模块。
3 系统开发的关键技术
3.1 Web应用与ASP.NET结合的桥梁——ADO.NET
ADO.NET是由ADO (ActiveX Data Objects, ActiveX数据对象) 发展而来,它是一种无连接、基于消息的数据访问模型。数据源上的数据可以作为XML文档进行传输和存储,这样,只要应用能够解析XML,就能够实现数据访问。ADO.NET的核心在于Data Set对象。Data Set可以包含任意多个Data Table (数据表),每个Data Table都是一张数据库表或视图在内存中的映射,即数据读出之后,Data Set无需和数据库保持连接,这节约了网络资源。Data Set的有关方法与关系数据模型完全一致,这使得数据操纵更简洁、直观,即一个Data Set由任意多个Data Table组成,每个Data Table又由一个Data Row (数据行)集、一个Data Column (数据列)集和与其他Data Table的关系Data Relation组成。另外,它还提供了主键约束和外键约束。
受管理提供者 (Managed Provider) 是ADO.NET在应用和数据源间的桥梁。ADO.NET中提供了两个数据访问受管理提供者:SQL和OLE DB.SQL主要用于SQLServe7及其后的版本,而OLE DB则用于其他数据源。受管理提供者包括四部分:连接 (Connection)、命令(Command)、数据读取器(Data Reader)、数据适配器(Data Adapter)。对数据的访问要经历建立并打开连接﹑执行SQL命令﹑读取结果数据等几个步骤,也可以通过Data Adapter来自动完成。
3.2 ASP技术
ASP (Active Server Pages) 是一种服务器端的脚本语言,为了更加灵活、方便的控制数据,服务器端ASP引擎支持一套可以方便的访问WEB服务器上数据库系统的对象模型 ADO (ActiveX Data Control)。通过内置的多个对象,可以动态生成用户所需的信息页面。另外,通过ASP内置对象,将浏览器与特定的用户信息关联,以跟踪系统对各个用户的状态,可以实现系统的用户密码是否合法的检测,以便保护系统的安全性。ASP内嵌了主要有以下五种基本对象,它们在ASP技术的使用当中扮演十分重要的角色。
3.2.1 Request、Response对象
Request、Response对象是ASP对象中最重要的对象。它用来连接客户端和服务器端,使得它们之间可以交换数据。Request对象的功能是单向的,它只能接收客户端提交的数据,而Response对象的功能则是将服务器端的数据发送到客户端的浏览器,这两个对象的功能是对立的。
在使用Request对象接收数据时,根据提交数据的Html表单的Method属性 (GET或POST),可以通过Query String集合或Form集合来检索表单的数据。
3.2.2 Server﹑Application﹑Session对象
Server对象在ASP中是一个很重要的对象,许多高级功能都是靠它完成,它可以帮助你在服务器上启动ActiveX对象例程,并使用Active Server服务提供对象Html和URL编码这样的函数。
Application对象是一个应用程序级的对象,用来在所有用户之间共享信息,并可以在Web应用程序运行期间持久地保持数据。
Session对象其实指的就是访问者从到达特定主页到离开为止的那段时问,每一个访问者都会单独获得一个Session ID身份,我们可以把用户的信息存放在Session对象变量中,这样就可以在今后一定时间内记住这些信息。
在HTTP协议中没有什么可以允许服务器端来跟踪用户请求,而利用session,就可以在一个用户在多个主页间切换的时候也可以保存用户的信息,在验证用户信息时往往用到它。
利用以上三个对象的属性以及方法,再加上Request﹑Response 两个对象发送和返回的信息,就可以实现在信以迅速改变时显示个性化页面的系统。
4 系统实现的关键步骤
4.1 ASP访问数据库
目前,Microsoft对应用程序访问各种各样的数据源所使用的方法是OLE.DB。 OLE.DB是一套组件对象模型(COM)接口,但它是相当复杂的。连接应用程序与OLE.DB的桥梁就是ADO (ActiveX Data Object ActiveX数据对象)。使用ADO编写简洁和可扩展的脚本,连接到与OLE.DB兼容的数据库。OLE.DB是一个系统级的编程接口,它提供一套标准的COM接口,用来展示数据库管理系统的功能。 使用ADO的对象模型,可以轻松地访问这些接口,将数据库功能添加到WEB应用程序中。另外ADO还可以使用脚本语言来控制数据库地存取以及输出查询结果。
4.2 数据访问控件的使用
这部分在ASP.NET Web窗体和SQL Sever数据库之间起到交流的作用,也叫作中间层控件。这些控件一般是将类分组然后封装成.VB文件的形式,在微软.NET环境下这些控件可以使用命名空间来组织管理。
4.3 存储过程的使用
存储过程封装了所有的数据库操作,使用存储过程彻底分离了数据库和中间数据库访问层,这样使得维护起来方便,即使在改变数据库结构的情况下,只需改变存储过程,对数据库访问层没有一点影响。使用存储过程还有一个优点,就是当它第一次调用后会被数据库系统优化保存在缓存里,以后调用就会得到更高的效率。
4.4 界面层的设计
“WEB窗体”是ASP.NET技术,可用于创建可编程的Web页。不同于HTML 表单元素,这些对象是完全可以控制的它们有属性、事件以及方法,而Code behind属性所设置的.VB或.CS程序文件才是真正的源代码存放的地方。所以在控制Web页面上可以像控件窗体一样方便。
5 结束语
实验室信息管理系统是为适应网络环境下的办公自动化任务而开发设计的。它在网络环境下实现了数据的录入和导出。该系统是在面向对象的方法下,运用B/S结构进行设计、开发并具体实现的。它具有能准确、及时、动态地反映实验室各种有效信息,并对数据统计分析, 为教学管理提供决策依据,保证了数据处理的准确性及信息交流的快速性, 并且由于采用了三层结构,当某些业务规则变动时,只需要改动系统中的一小部分,这使得该系统具备了良好的可维护性和可扩展性。
参考文献
[1]DonnyMack,DougSeven.ASP.NET数据驱动Web开发[M].北京:中国电力出版社,2003.
[2]PaulDickinson,etal.ADO.NET高级编程[M].北京:中国电力出版社,2003.
[3]周治平.ADO数据存取技术[J].计算机应用,1999,(7):93-95.
[4]叶德谦,马勤勇.使用ADO.NET对关系数据库的访问[J].微型电脑应用,2001,(8):39-42.
作者单位
电子工程学院安徽省合肥市230037