基于
Delphi 的Midas 成绩
管理系统摘 要:Delphi 提供了一组Midas 组件,利用该组件,可以方便快捷地开发三层体系结构的数据库应用
程序。本文介绍了分布式系统的基本结构,对Midas 技术的运行机制进行了说明,同时介绍了Midas 所要用到的组件。据此
设计开发了成绩管理系统,详细论述了基本的实现过程。
关键词:Delphi;Midas;分布式结构;成绩管理
1. 前言
研究生入学考试自命题部分是由招生单位自行管理,为此设计开发了成绩管理系统,主要用于成绩的录入和成绩管理。通过分布式技术实现多台
计算机同时录入,对录入的成绩进行有效的约束,以及对两次录入的成绩进行效验,若不同,则保存错误记录,便于及时处理。同时对于成绩也可以方便的进行管理,如导出上报数据库等。由于可以充分利用现有的计算机
网络资源,提高了成绩录入的效率,减少成绩录入时出错的几率,大大降低了成本,也为成绩的有效管理提供了一个很好的平台。
2. Midas
Midas (Multitiered Distributed Application Services), 多层分布式应用服务器。它提供了一整套中间层应用服务,扩展了操作系统标准,这些服务用于解决各种具体的分布式计算
问题,从网络定位的目录服务到数据库集成和业务规则处理等。Borland 公司提供的多层分布式应用服务组件(Multi-Tier Distributed Application Service Suite)是用来实现分布式多层数据库应用的通用中间件产品,是开发多层应用系统的中介透明引擎,它提供客户端程序和应用服务器之间互通数据库信息的机制[1]。
2.1 分布式系统结构
分布式系统结构把传统两层结构中的C/S模式扩展为客户层、中间层和数据层三层模式。客户层主要负责用户界面及交互控制,显示需求数据。中间层也称业务层,由应用服务器集中处理,是客户层和数据库服务器的通讯桥梁,负责访问数据库服务器,完成网络连接与通
讯,并为客户端提供远程调用的接口,它是整个系统的核心。数据层一般由支持分布式应用的大型数据库服务器实现。分布式结构中,各应用程序服务器接管了众多来自客户层的连接和数据处理请求,数据库服务器只需响应来自应用服务器的请求,这样就不会因为客户机的
大幅度增加而影响整个系统的运行性能,大幅减轻了数据服务器的负荷,提高了系统的可扩展性。
2.2 Midas 运行机制
客户端通过连接组件连接中间层,根据用户的需求发出请求。中间层的远程数据模块相当于一个com接口,通过数据集组件和数据引擎连接数据库,根据客户需求和业务逻辑定制的SQL语句对数据库进行
查询或存储数据等操作。中间层把获取的数据集
压缩成数据包,通过连接组件对象接口传给客户层。客户层和服务器端都需要动态;连midas.dll,它负责对数据包进行管理。客户层收到数据包后,还原成数据集传给客户程序本地数据模块中的数据集组件,再由数据源作为桥梁连接界面上的显示控件。客户层程序可以直接对本地数据集中
的数据进行操作。当用户对数据进行编辑修改后,向应用服务器申请更新数据,应用服务器。收到客户程序的申请后,就向远程数据库服务器提交更新数据[2]。
2.3 Midas 组件
在Delphi中实现基于Midas的多层结构的基础是Midas技术,该技术在开发基于Midas的多层应用程序时,需要用到一些特殊的组件[3],这些组件分为4 大类 :
1) 远程数据模块。作为COM或CORBA服务器让客户程序访问它的接口。 Delphi支持RemoteDataModule、MTSDataModule和CorbaDataModule3种类型的数据模块。 COM 服务器支持DCOM、TCP / IP 或OLEEnterprise协议, CORBA 服务器支持CORBA 协议。
2) DataSetProvider或Provider组件。这两个组件用在服务器端,提供IProvider接口,客户程序通