硅谷杂志:基于MIDAS的高校收费管理系统的实现 |
2012-07-10 11:18 作者:王佳祥 来源:硅谷网 HV: 编辑: 【搜索试试】
|
|
硅谷网7月10日消息 (原文载于《硅谷》杂志6月刊)阐述delphi中的MIDAS技术,对利用MIDAS开发三层体系结构的数据库应用程序的过程进行介绍;采用三层设计思路,使用delphi中的MIDAS技术设计高校收费管理系统,详细论述基本的实现过程。
收费是学校财务机构的重要工作,传统的收费方式繁琐、数据统计效率低且容易出错。提高收费效率,保证数据准确及安全是财务收费系统设计的基本要求。
如果采用传统的两层C/S结构(客户/服务器结构)设计收费系统,存在客户端程序庞大、效率因客户端数量增加变低等缺点,势必增加系统维护成本。和两层C/S结构相比,三层C/S结构可以有效解决二层结构中出现的问题,三层结构中各层间逻辑结构清晰,每一层在硬件、软件上均可以独立,从而维护和更新均变得方便。
1三层C/S结构和MIDAS技术
理论上,三层C/S结构应用程序分为客户层、中间层和数据层。客户层作为用户与系统交互的门面,完成数据接收和显示,所以也称表示层。中间层起到一个桥梁作用,负责客户层与数据库的通讯,同时要承担均衡负载、访问隔离等任务,保证了系统的性能和安全性。数据层负责存储数据,该层功能一般由大型数据库服务器软件完成。
MIDAS(Multi-tierDistributedApplicationServices多层分布应用服务)技术被广泛应用到三层系统的设计中,提供了完整的中间层解决方案。该技术为系统设计人员提供了一套多层分布式应用服务组件,其具备远程数据获取能力,经由网络传输的数据流量小,在开发多层结构的数据库应用程序时广泛应用。
MIDAS具备远程数据代理、企业对象代理、数据约束代理三项功能,客户端通过远程数据代理在有效降低数据流量的情况下间接存取数据库数据。企业对象代理则主要为用户提供“平衡负载”且“容错”的开发环境。数据约束代理对数据进行必要的约束,保证其合理性。MIDAS的四类组件是设计三层系统的核心:
1)远程数据管理:在应用服务器中使用,可作为CORBA或COM服务器供客户端访问。
2)数据供应组件:如Provider组件之类的组件。在应用服务器中使用到这些组件,该类组件具备IProvider接口。
3)通讯连接组件:如SocketConnection、DCOMConnection组件,通过他们完成通讯连接任务。
4)客户数据集组件:如ClientDataSet之类组件。通过他们访问服务器的IProvider接口获取数据。
它们在整个MIDAS的三层数据库系统结构中的位置如图1所示。
midas在整个系统的位置和作用,其具体以文件midas.dll形式出现。数据库应用程序在工作时,客户层和服务器端都需要动态连接midas.dll,工作时由客户端连接到中间层,中间层通连接到数据库,中间层把获取的数据集送回客户层。midas.dll要对数据包进行封装管理,客户层收到数据包后,再还原成数据集发往数据集组件,最后通过客户端界面上的组件显示出来。可在delphi安装目录中找到midas.dll文件,复制到本机的system32目录下,若提示未注册,在“运行”中用“regsvr32midas.dll”处理一下即可。
图1基于MIDAS的三层数据库系统结构
2基于MIDAS的三层收费系统的设计
2.1收费系统的功能
收费系统至少应该具备:学生信息维护模块、学费收缴管理模块、学费信息维护模块、奖助贷管理模块、住宿费收缴管理模块、书费管理、其他项目收费管理模块、数据统计分析模块、系统管理模块。
1)学生信息维护模块:该模块完成学生的信息维护,包括学生的基本信息、应缴学费数额、休学、退学、留级等信息。
2)学费收缴管理模块:该模块根据学生信息,提供学费信息录入、查询、修改功能,操作人员和管理人员可随时查询当天或某期间的历史数据,并按要求进行显示或打印。3)学费信息维护模块:对欠费、减免学费进行管理,可以根据不同专业、不同年级的学费等进行维护与管理。
4)奖助贷管理模块:根据奖学金、助学金、贷款的学生名单,对奖、助、贷进行管理。
5)住宿费收缴管理模块:根据学生所选宿舍类别进行管理。
6)书费管理:根据不同年级、专业、不同选修课程进行书费管理。
7)其他项目收费管理模块:对学校各部门零散收费性进行管理。
8)数据统计分析模块:按需要对数据进行统计、审核、分析。
9)系统管理模块,确定系统运行参数,并与所有收费点统一。包括学费金额、学费类别、学生名单、时钟同步等。系统工作时,各客户端负责信息的录入、查询、票据打印等操作,服务器端负责接收收费点上传的原始收费数据,可以在分别在客户端和服务器端对数据的统计、分析、审校。
服务器端还应负责系统管理的相关功能,具体包括:
1)管理报表的生成与打印。
2)数据自动备份功能,一旦系统受到破坏,可以尽快地恢复运行。
3)具备系统诊断功能,能自动测试系统的工作状况,包括与各收费收费点的网络连接情况,并且在检测到异常时自动显示或打印诊断报告。
4)安全功能:限定登录IP,系统能对不同操作人员设置不同的操作权限,防止越权存取和修改,保障数据的安全和完整性,并对操作人员的操作行为进行记录、分析。
5)若提供与银行的数据接口,必须具备安全技术防范,以保证数据的安全。
2.2收费系统地具体实现
1)应用程序服务器与数据库的连接
使用delphi可以访问SQLServer、Oracle、Access数据库,连接到数据库的方法大同小异。连接时在远程数据模块中添加一个ADOConnection组件作为连接的枢纽,需设置ConnectionString属性以指明应用程序连接数据库的方式和路径。
2)创建应用程序服务器
创建应用程序服务器时使用到TRemoteDataModule类创建远程数据模块。在应用程序服务器程序中需要加入TADODataSet组件和与之对应的TDataSetProvider组件用以建立IProvider接口获取数据。
3)客户端应用程序
在项目中添加一个TSocketConnection组件,供若干TClientDataSet组件连接使用。设置TSocketConnection的相关属性。将TClientDataSet组件DCOMConnection、TDataSetProvider组件相连。为保证客户端启动时正确连接到服务器,需设置SocketConnection的Address、Port、ServerName属性,再将ClientDataSet的RomoteServer属性设置为SocketConnection。
3系统的安全性
1)使用者赋予不同的权限。
2)限时访问。对系统的访问限时,可通过系统设置和硬件操作实现。
3)访问IP限制。通过将允许的IP加入服务器的数据库中,限定登录IP来限制访问,同时系统对不同权限的人设置不同的访问权限,来保证系统安全性,限定登录IP程序可如下设计。
……
ClientDataSetIP.Open;
ifnotClientDataSetIP.Locate('IP',IdIPWatch1.LocalIP,[])then
showmessage('IP不在允许范围,你不能登录');……
4结语
采用MIDAS技术开发的收费系统有较强的稳定性及较高的执行效率,delphi可连接SQLServer、Oracle、Access等数据库,连接方便,操作简单。利用此技术可以快速地开发多层数据库应用程序,也可用于基于Web的多层数据库应用系统的开发,MIDAS技术使得开发一个复杂的多层数据库结构应用变得方便、简单。
|
|
|
|
【对“硅谷杂志:基于MIDAS的高校收费管理系统的实现”发布评论】 |
版权及免责声明:
① 本网站部分投稿来源于“网友”,涉及投资、理财、消费等内容,请亲们反复甄别,切勿轻信。本网站部分由赞助商提供的内容属于【广告】性质,仅供阅读,不构成具体实施建议,请谨慎对待。据此操作,风险自担。
② 内容来源注明“硅谷网”及其相关称谓的文字、图片和音视频,版权均属本网站所有,任何媒体、网站或个人需经本网站许可方可复制或转载,并在使用时必须注明来源【硅谷网】或对应来源,违者本网站将依法追究责任。
③ 注明来源为各大报纸、杂志、网站及其他媒体的文章,文章原作者享有著作权,本网站转载其他媒体稿件是为传播更多的信息,并不代表赞同其观点和对其真实性负责,本网站不承担此类稿件侵权行为的连带责任。
④ 本网站不对非自身发布内容的真实性、合法性、准确性作担保。若硅谷网因为自身和转载内容,涉及到侵权、违法等问题,请有关单位或个人速与本网站取得联系(联系电话:01057255600),我们将第一时间核实处理。
|
|
|
|