基于NET框架下的分布式医疗保险管理系统的设计与应用毕业论文.docx
- 文档编号:16136354
- 上传时间:2023-07-10
- 格式:DOCX
- 页数:58
- 大小:830.62KB
基于NET框架下的分布式医疗保险管理系统的设计与应用毕业论文.docx
《基于NET框架下的分布式医疗保险管理系统的设计与应用毕业论文.docx》由会员分享,可在线阅读,更多相关《基于NET框架下的分布式医疗保险管理系统的设计与应用毕业论文.docx(58页珍藏版)》请在冰点文库上搜索。
基于NET框架下的分布式医疗保险管理系统的设计与应用毕业论文
基于.NET框架下的分布式医疗保险管理系统的设计与应用毕业论文
第一章引言
1.1课题研究背景
随着中国经济体制改革进一步深化,为不断完善社会保障体系,国家医疗保险制度改革政策相继出台。
医疗保险制度的改革直接关系到国计民生,在计划经济向市场经济体制转化的过程中具有举足轻重的作用,是社会主义市场经济的一项基础设施建设。
通过总结各地改革探索的经验,社会医疗保险制度采取了社会统筹与个人账户相结合的方式。
城镇职工医疗保险制度是一种适应市场经济体制根据,根据财政、企业和个人的承受力,保障职工的基本医疗需求的社会医疗保险制度,充分体现了“低水平、广覆盖”的思想。
目前,我国社保制度改革在全国范围逐步展开,为了落实此项涉及国计民生的重大国策,迫切需要一种能与之相适应的技术手段和工具来完成,特别是在制定各种医疗保险政策及整个医疗信息管理等方面,需要有先进的技术和应用成果支持,本论文所提到的医疗保险系统就是为适应这一要求而开发的。
本论文中所提到医疗保险系统采用基于.NET的分布式的B/S结构。
它的目标是建立适应社会主义市场经济要求,保障职工的基本医疗,克服浪费,有利于减轻国家、单位负担,实现医疗资金来源多渠道、权利与义务相适应、社会统筹医疗基金与个人医疗帐户相结合的医疗保险制度。
1.2研究的目的和意义
传统的应用系统模式是“客户机/服务器”[1],客户机/服务器系统(Client/ServerSystem)的结构是指把一个大型的计算机应用系统变为多个能互相独立的子系统,而服务器便是整个应用系统资源的存储与管理中心,多台客户机则各自实现相应的功能,共同实现完整的应用。
随着Internet的发展壮大,特别是企业信息化过程的加快,对大流量、实时性特点的要求需要系统具有实时响应、交互动作异步非耦合、高可用性、高可得到性等特征[2]。
这些传统模式已经不能适应新的环境,于是就产生了新的分布式应用系统,即所谓的“浏览器/服务器”结构、“瘦客户机”模式[3]。
在客户机/服务器结构模式中,客户端直接连接到数据库服务器,由二者分担业务处理,这样的体系有以下缺点:
1)客户机与服务器直接连接,安全性低。
非法用户容易通过客户机直接闯入中心数据库,造成数据损失[4];
2)客户机程序肥大,并且随着业务规则的变化,需要随时更新,或者重新部署客户端程序,大大增加维护工作量,造成维护工作困难;
3)每个客户机都要直接连到数据库服务器,使服务器为每个客户端建立连接,将要消耗大量原本就紧张的服务器资源;
4)大量的数据直接在客户机与服务器间传送,在业务高峰期容易造成网络流量剧增,网络阻塞[5]。
客户机/服务器模式的这些先天不足,随着业务量的变化,出现越来越多的问题,有必要对这种两层体系进行改革。
随着中间件与Web技术的发展,三层或多层分布式应用体系越来越流行,从而借助中间件可以将业务处理与客户交互分开来,实现瘦客户/业务服务/数据服务的分布式应用体系结构[6]。
在基于中间件的分布式体系结构中,客户机只存放表示层软件,应用逻辑包括事务处理、监控、信息排队、Web服务等采用专门的中间件服务器,后台是数据库。
在多层分布式体系中,系统资源被统一管理和使用,客户端用户可以透明地使用整个网络资源[7]。
1.3国内外研究现状
分布式计算技术是当前热门的计算技术之一,分布式计算的实现通常有两种方法:
1)在互连的计算机硬件上采用全新的分布式操作系统;
2)在网络计算平台上部署分布计算环境(中间件)[8],提供开发工具和公共服务,支持分布式应用,实现资源共享和协同工作。
前者是20世纪80年代学术界普遍追求的目标,但没有被用户和市场接受。
后者正是当前现实的分布式计算技术的解决方案。
基于组件的三层分布式体系结构,是计算机软件工程领域发展的热点。
当今国际上有三大分布式软件组件对象标准,一个是由对象管理组织(ObjectManagementGroup,简称OMG)推出的CORBA(CommonObjectRequestBrokerArchitecture),即公共对象请求代理结构[9];一个是SUN公司推出的JAVA2平台企业版(JAVA2PlatformEnterpriseEdition,简称J2EE)[10];还有一个是微软推出的.net[11]。
.net是微软公司提出的新的分布式计算平台,它包含了操作系统上软件开发的所有层,它提供了任何平台上所见的组件技术、呈现技术和数据技术的最丰富的集成级别[12],整个体系结构已经被创建为易于在高度分布式Internet环境中的应用程序开发,就像进行传统的桌面系统开发一样。
.net有以下几个目标:
1)提供一个一致的面向对象的编程环境,而无论对象代码是在本地存储和执行,还是在本地执行但在Internet上发布,或是远程执行。
2)提供一个将软件部署和版本控制冲突最小化的代码执行环境。
3)提供一个保证代码(包括所有未知的或不完全受信任的第三方创建的代码)完全执行的代码执行环境。
4)提供一个可消除脚本环境或解释环境的性能问题的代码执行环境[13]。
5)使开发人员的经验在面对类型大不相同的应用程序(如基于Windows应用程序和基于Web应用程序)时保持一致。
6)按照工业标准生成所有通信,以确保基于.net框架的代码可与其它任何代码集成[14]。
.net框架由两个主要部分构成:
一是公共语言运行时(CLR),二是框架类库(FCL)。
.net框架实现了代码重用、代码规范化、资源管理、多语言开发、安全、部署和管理。
1.4论文研究内容
本文的研究内容主要有以下三点:
1)首先结合分布式体系结构的发展状况,对微软公司最新推出的分布式应用系统.net平台架构进行了研究,深入讨论了.net平台的总体结构、工作机理,阐述了构建一个基于Web分布式应用程序所涉及到的相关技术。
2)通过分析研究.net框架下的分布式应用程序模型,并对此模型加以改进,提出了一个新的体系结构模型。
该体系结构模型是由用户服务层、业务处理层、数据服务层和数据库层四个层次组成的。
用户服务层:
由基于Web的应用程序和基于Windows的应用程序组成,进行
3)结合医疗保险管理系统的开发,针对行业信息化业务复杂、数据量大的特点采用了.net平台上的分布式应用解决方案。
将改进的模型与保险业务相结合,设计实现了布式结构下的医疗保险管理系统。
最后,对此保险管理系统做出功能分析和评价。
第二章分布式技术和.NET框架
一个分布式计算系统由在作为一个系统运行的多个计算机上的多个软件组件构成。
分布式系统中的计算机由本地网络连接,或者可在地理上相隔遥远并由广域网连接。
分布式系统可包括许多可能的配置,如个人计算机、大型机、工作站等。
分布式计算的目的是使这种网络来充当单个计算机。
微软将其对于未来计算的设想命名为.ne(tdot-net)。
微软认为未来的计算将是多个应用程序通过Internet以一种分布式的方式运行的世界[15]。
在这一章,将介绍分布式和.net框架的一些相关技术。
2.1分布式体系结构
在集中式结构中,客户终端和主机之间传递数据的方式非常简单,一是用户从客户终端键盘键入的信息到主机,二是由主机返回到终端的字符[16]。
其结构优点是可以实现集中管理,安全性很好。
这种计算机的费用非常昂贵,并且应用程序和数据库都存放在主机中,没有办法真正划分应用程序的逻辑。
到20世纪80年代,个人计算机进入了商用舞台,同时计算机应用的范围和领域也日趋广泛。
个人计算机进入商业领域不久,局域网也问世了,同时也诞生了文件服务器技术。
在文件服务器系统结构中,应用程序在客户工作站上运行,而不是在服务器上运行。
如图2-2所示。
文件服务器只是提供了资源(数据)的集中管理和访问途径。
文件服务器的优点在于实现的费用非常低廉,而且配置非常灵活,在一个局域网中可以方便的增减客户端的工作站[17]。
但是,这种结构的缺点也非常明显,由于所有的应用处理都要在客户端完成,这就意味着客户端的个人计算机必须要有足够的能力,以便执行需要的任何程序,这可能经常需要客户端的计算机升级。
文件服务器的费用虽然低廉,但和大型机的“集中式”相比,它缺乏足够的计算和处理能力。
为了解决费用和性能的矛盾,客户/服务器结构就应运而生了。
图2-2文件服务器结构
客户/服务器结构是以网络环境为基础,将计算机应用有机地分布在多台计算机中的结构[18]。
其中服务器负责数据的存储管理及文件服务,而客户请求,由服务器把处理后的数据传送给客户机,因此在网络中传输的仅仅是客户所需要的那部分数据[19],而不是全部,这样就大大降低了网络数据的流量,使系统的性能有了较大的提高。
客户/服务器结构增加了数据的共享能力,服务器上存放着大量的数据(可称为数据库服务器),用户只需要在客户机上用标准的结构化查询语言SQL(StructuredQueryLanguage)访问服务器中的数据,便可很方便地得到所需的各种数据及信息。
如图2-3所示。
2-3客户/服务器结构
4)定位透明性
客户/服务器之间存在着一种多对多的主从关系。
即客户机提供服务器位置透明性服务。
所谓“透明性”是指某一种实际存在的事物具有看起来好像不存在的性质。
“定位透明性”是指用户不必知道服务器的位置,就可以请求服务器的服务。
5)基于消息的交换
客户机和服务器是一对耦合的系统,它们通过消息传递机制互相协作。
消息是服务请求与服务响应的媒介。
6)可扩展性
系统的扩充性好,可方便地在网络上增加客户机或服务器,以扩大系统服务的规模、增加新的服务项目与提高服务性能。
客户/服务器结构可以水平地或垂直地扩展[20]。
水平扩展是指添加或移去客户机对系统性能影响很小。
垂直扩展是指移植到更大的或者更快的服务器或多服务器上。
客户/服务器结构的核心是,当前端用户需要后台服务器的服务时仅仅发出请求,而服务器接受该请求后执行相应的功能,并把满足条件的那部分数据反馈给前台客户端。
客户/服务器结构是个开放的体系结构,数据库不仅要支持开放性而且还要开放系统本身,这种开放性包括用户界面、软硬件平台和网络协议。
利用开放性在客户机上提供应用程序接口(API)以及网络接口,使用户仍可按照他们所熟悉的、流行的方式开发客户机的应用。
客户/服务器的内部结构如图2-4所示。
图2-4客户/服务器内部结构
数据库服务器上的数据管理系统集中负责管理数据库服务器上的数据和资源,它向客户端提供一个开放的使用环境,客户端的用户通过数据库接口和SQL语言访问数据库。
客户/服务器结构的一个主要特点是,数据库服务器的平台和客户端无关。
也就是说,不管客户端采用的是什么样的硬件平台和软件环境,它只要能够通过网络协议和数据库接口程序连接到服务器就可以对数据库进行问。
2.1.2三层客户/服务器结构
前面讨论的客户/服务器结构均是基于两层结构,即一层是客户层,一层是服务器层。
两层客户/服务器结构实现了功能的分布,但还不均衡。
如果连接的客户机数目激增,服务器的性能将大大下降;每一次应用需求的变化,都需要对客户机和服务器的应用程序进行修改,给服务器的维护和升级造成极大的不便。
为了解决以上的问题,又出现了一种三层客户/服务器模型。
所谓三层,实际上就是在客户层和服务器层之间又添加了一个中间层。
这个中间层一般用于实现商业或企业规则等。
三层客户/服务器结构:
客户机、应用服务器、数据库服务器,如图2-5所示。
图2-5三层客户/服务器结构
三层结构中,服务器分为两个部分:
应用服务器和数据库服务器。
应用服务器包括从客户机划分出一部分应用和从专业服务器中划分出一部分工作。
在这种结构体系下,第一层的客户机主要提供用户的操作界面,并不做任何计算功能,也经常称之为浏览器;中间第二层包含了应用系统中完成业务处理的程序,负责接收和处理对数据库的查询和操作请求,这些程序是封装起来的、彼此独立的,称为中间件或商业规则组件;数据库服务器是第三层,用于存放和管理用户数据,支持对数据的各种操作。
在客户端,向由URL(通用资源定位器)所指定的Web服务器所提出服务申请,Web服务器对用户进行身份验证后,用HTTP协议把所需的文档资料传给用户,客户端接收文档资料,并显示在WWW浏览器上,具有CGI(公共网关接口)程序或别的中间软件的Web服务器接收客户请求,先执行CGI程序,与数据库连接,存取数据库的数据进行处理,然后将处理结果返回Web服务器,再由Web服务器传到客户端;数据库服务器接收来自Web服务器的数据访问请求,并返回处理结果。
2.2基于Web的分布式应用
Web服务是一种基于Web的分布式应用。
在Web服务出现之前,分布式应用程序需要使用分布式对象模型,例如微软的分布式组件对象模型(DCOM)、OMG的公用对象请求代理程序体系结构(COBAR)或SUN公司的远程方法调用(RMI)。
通过使用这种基本结构,在将服务器置于远程系统的同时,开发人员仍可使用本地模型那样的计算资源。
但这些分布式对象模型有一个共同的缺陷,即难以扩展到互联网上,它们要求服务的客户与服务本身之间必须紧密耦合,而Web服务却是松散耦合的。
它通过HTTP、SOAP以及发挥了核心作用的XML等在Web上广泛应用的标准协议来实现连接的统一。
2.2.1XMLWeb服务
图2-7Web服务的体系结构——面向服务的体系结构
Web服务体系结构是面向对象分析与设计(OOAD)的逻辑演化(logicalevolution),同时也是组件化的电子商务解决方案逻辑演化。
与面向对象系统一样,封装、消息传递、动态绑定、服务描叙和查询也是Web服务的基本概念。
此外,Web服务另一个基本概念就是:
一切都是服务。
这些服务发布一个API供网络中的其他服务使用,并且封装了实现细节。
面向服务的体系结构中有服务提供者、服务中介和服务请求者三种角色。
服务提供者发布己的服务,并且响应对其服务发出的调用请求;服务中介注册已经发布的服务提供者,对其分类,并提供搜索服务;服务请求者利用服务中介查找所需的服务,然后使用该服务。
面向服务的体系结构中的构件必须承担一种或多种角色。
在这些角色中,将用到发布操作、查找操作和绑定操作三种操作。
发布操作使服务提供者能向服务中介注册自己的功能及访问接口;查找操作使服务请求者能通过服务中介查找特定种类的服务;绑定操作使服务请求者能够具体使用服务提供者。
这三个操作都包含三种技术:
发布服务使用UDDI(统一描述、发现和集成)、查找服务使用UDDI和WSDL(Web服务描述语言)的组合、绑定服务使用WSDL和SOAP(简单对象访问协议)。
XMLWeb服务(XMLWebService)是下一代分布式系统的核心技术之一。
它是通过标准的Web协议提供的一种分布式软件服务,它使用Web服务描述语言(WSDL)文件进行说明,并按照统一描述、发现和集成(UDDI)规范进行注册。
Web服务优化了基于组件的开发和Web的结合。
Web服务包括三层次上的内容:
基本的通信格式、服务描述和服务的发现。
简单对象访问协议(SOAP)是XML的实施工具,它提供了一套公共规则集,该规则集说明了如何表示并扩展数据和命令。
在通信的最低级别,系统需要使用统一语言。
Web服务描述语言(WSDL)是一种XML语法,开发人员和开发工具可使用它来表述Web服务的具体功能。
双方应用程序在得到了如何表示数据类型和命令的规则后,需要对所接受的特定数据和命令进行有效地描述。
在最高层,还需指定一套如何定位服务描述的规则:
默认情况下,用户或工具能在什么地方找到服务的功能描述?
依据UDDI(统一描述、发现和集成)规则说明中提供的规则集,用户或开发工具可以自动找到服务的描述。
一旦实现了这三功能层,开发人员便可容易地找到Web服务,将它例示成一个对象后再集成进应用程序中,继而构建出一个具有丰富功能的基本结构。
这样,得到的应用程序便能与Web服务进行反向通信了。
2.3.NET平台
大约每十年,新的程序设计方法就会像浪潮一样来临。
19世纪80年代早期,新技术是可以运行在桌面的Unix系统以及AX&T开发的强大的新语言C。
19世纪90年代早期带来了Windows和C++。
每次发展都代表着程序设计方法的一次革命。
微软公司开发的.net和C#语言代表的正是下一次浪潮。
M是Microsoft基于XML的Web服务平台,其受益对象既包括公司,也包括最终用户。
对公司而言,它改变了设计软件和销售产品的方式,并使信息技术成为影响公司成败和引进新型商业模式的一个重要因素。
对最终用户而言,.net将带来无与伦比的计算体验,而且与以往相比,这种体验更富于个性化和集成化的特点。
XMLWeb服务是用XML构建的,用以进行数据交换,其目的在于帮助应用程序、服务和设备有效地协同工作。
通过XML共享数据使Web服务能够彼此独立,但同时又使它们能够以一种松散的方式连接成为一个协作小组,从而完成特定的任务。
2.3.1.NET框架
微软的.net不仅支持语言无关性,而且支持语言的集成性。
这意味着可以跨越不同语言继承类、捕捉异常并应用多态性。
.net框架通过所有.net组件都遵守的类型规范——公共类型系统(CTS)实现了这一点。
CTS支持各种通用的概念,包括类、接口、代表(它支持回调)、引用类型和值类型。
.net还引入了公共语言规范(CLS),提供了语言集成必需的一系列基本规则。
CLS规定了成为.net语言的最低要求。
符合CLS的编译器都可以生成彼此能互相操作的对象。
整个框架类库(FCL)都可以被CLS的任何语言使用。
.net框架位于操作系统的上层,由许多部分构成。
目前,.net框架包括:
1)四种正式语言:
C#、VB.net,受控(Managed)C++,J。
2)CLR,所有语言都共享的用于Windows和Web开发的面向对象平台。
3)大量相关的类库,总称为FCL。
.net框架体系结构如图2-8所示。
图2-8.net框架体系结构图
.net框架最重要的组件是CLR,它提供了程序的执行环境。
CLR中有一个虚拟机,在许多方面与Java虚拟机类似。
从高层看来,CLR负责激活对象,并对其进行安全检查,再将其在内存中布局,执行它们,最后进行无用内存回收。
CLR的上层是一组框架基类,再上层是数据与XML类,然后是用于Web服务、Web表单和Windows表单的类。
这些类总称为FCL,是有史以来最大的类库之一,它可为.net平台所封装的所有功能提供面向对象的API。
FCL有5000个以上的类,可帮助桌面、客户/服务器和其他Web服务及程序的快速开发。
FCL的最底层——框架基类集合与Java中的类集合很相似。
这些类支持基本的输入/输出、字符串操作、安全管理、网络通信、线程管理、文本操作、反射和集合等功能。
在这一层之上是对基类进行扩展,以支持数据管理和XML操作的另一层类。
其中的数据类支持对保存在后端数据库中的数据进行持久性管理。
这些类中包括用标准SQL接口进行持久性数据存储的SQL类。
还有称为ADO.net的一组类,可以操作持久性数据。
.net框架还支持许多用于操作XML数据并进行XML搜索和转换的类。
再往上是扩展了框架基类以及数据和XML类的一层类,主要面向创建使用三种不同技术的程序:
Web服务(WebServices)、Web表单(WebForms)和Windows表单(WindowsForms)。
WebServices包括许多类,支持轻量级分布式组件的开发,这种组件可以在防火墙和NAT软件环境中工作。
由于WebServices使用标准HTTP和SOAP作为底层通信协议,这些组件支持跨网络的即插即用。
WebForms和WindowsForms使我们可以将RAD技术应用到Web程序和Windows程序的开发中。
只需简简单单地把控件拖放到表单上,双击控件,再编写对相关事件响应的代码就行了。
2.3.2.NET中的数据访问
ADO.net是.net应用程序的数据访问模型。
它引入了一些重大变化和革新,专门用于结构散、本质非链接的Web应用程序。
ADO.net实际上是.net框架提供的一组类的名称。
ADO.net的XML子系统最终取代了ADO和OLEDBSDK。
ADO.net的重要特点是:
ADO.net引入了数据集(Dataset)的概念,这是一个驻于内存的数据缓冲区。
它提供了数据的关系型视图,替代了原有Recordset的对象,提高了程序的交互性和可扩展性,尤其适合于分布式的应用场合。
它对XML的支持是内置的,可以访问多种类型的数据。
不管数据来源于一个关系型的数据库,还是来源于一个XML文档,都可以用一个统一的编程模型来创建和使用它。
它能用于访问关系型数据库系统,如SQLServer2000,及很多其他已经配备了OLEDB数据提供方的数据源。
ADO.net可以用XML格式把数据集传递给任何相应的应用程序,且不必一直与数据库保持连接;同样的ADO.net中的访问技术可以用于本地数据、客户/服务器数据和互联网数据。
同时ADO.net又保持着与以前的ADO模型有关的一些主要概念,它已经被极大的完善,并从不同的信息来源提供途径去获得结构化的数据。
一个平台文本文件,从数据库管理系统获得的相关数据,或者是分级的XML数据。
然而,所有都按照一个相容的,标准化的设计模型来执行。
SQLServer7.0(及更新版本)以及可以通过OLEDB提供者进行访问的任何数据源,这些又称为被管理的提供者(ManagedProvider)。
.net框架的数据存取API提供了两种方式分别识别并处理两种类型的数据源:
SQLServer7.0(及更新版本)和可以通过OLEDB提供者进行访问的任何数据源。
SQL(System.Data.SQL)库可以直接连结到SQLServer的数据,而ADO(System.Data.ADO)库可用于其他通过OLE、DB提供者进行访问的任何数据源。
下面列出的是每个被管理的提供者都可用的ADO.net的核心组件。
Connections——连接和管理数据库事务。
Commands——向数据库发送的命令。
DataReaders——直接读取流数据。
DateSets和DateSetCommands——对驻留内存中的数据进行存储和操作。
核心的ADO.net功能基本上可以被概括为如下内容:
Connection对象在Web页面和数据库间建立连接。
Commands对象向数据库提供者发出命令,返回的结果以一种流的方式贯穿于这些连接中。
结果集可以用DataReaders快速的读取,也可以储存到驻留内存的DateSets对象中,然后通过DateSetCommands对象让用户在数据集中访问和操作记录。
开发者可以用过DateSet内置的方法在基础的数据源上去处理数据集。
2.4当前基于.NET框架的分布式模型
随着分布式技术的发展和.net框架的日益成熟,出现了几种典型的基于.net框架的分布式模型,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 NET 框架 分布式 医疗保险 管理 系统 设计 应用 毕业论文