




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、摘要XML Web服务是可以在互联网上使用标准技术联网运行的商务进程,具有松耦合性和互操作性的软件组件。它能与任何平台上用任何语言编写的服务进行交互,使得应用软件的集成可以做到更快、更容易而且具有更高的可扩展性。 XMLWeb 服务不但实现在异类系统之间以 XML 消息的形式进行数据交换和远程访问数据,而且能以松耦合的方式执行操作。使用 XMLWeb服务技术不仅可以实现企业应用的松散集成,而且还能够做到动态的集成,具有很好的灵活性。本文详细分析了XML Web服务技术体系,设计实现了一种基于XML Web服务的模拟银行转帐的系统, 完成了异构数据库系统的集成。 通过服务的定义、 发布、发现、绑
2、定、调用等机制实现一种松散耦合的应用集成框架, 以及使用 Java(XFire 框架)和 C#两种语言实现在异构数据库集成操作,充分体现了 XML Web Service 的与语言无关的特性。该银行转帐系统实现了银行客户端模块以及服务端模块,实现了 XML Web服务过程。关键词: XML Web服务,银行转帐系统, SOAP协议,系统集成, XFire 框架AbstractXML Web services can use standard Internet technology to run business process network, with loose coupling and
3、interoperability of software components. With any platform in any language for interactive services, application integration can be done faster and easier and has higher scalability. XML Web Service achieves in heterogeneous information systems in the form of XML data exchange and remote access to d
4、ata, but also implement these operations by loosely approach. The use of XML Web services technology can be achieved not only loose the enterprise application integration, but also can be integrated and dynamic with good flexibility.In this paper, with detailed analysis of the XML Web services techn
5、ology system, designees and realizes a simulation system of bank transfers base on XML Web services, integrate heterogeneous database system. Through the definition of services, publishing, discovery, binding, and other mechanisms, implements call a loosely coupled application integration framework.
6、 Using Java (XFire framework) and C # two languages to achieve integration of heterogeneous databases in operation, fully reflects the XML Web Service has nothing to do with language featuresThe. bank transfer system realizes bank client-side modules and service modules, realizes the process of XML
7、Web services.Key Words: XML Web Services, BankTransfer System, SOAP protocol , SystemIntegration,XFire framework目录摘要 .11绪论.- 1 -1.1研究背景 .- 1 -1.2本文研究的内容 .- 3 -1.3论文的组织结构 .- 3 -2XML Web 服务及相关技术 .- 4 -2.1什么是 XML Web 服务 .- 4 -2.2XML Web 服务标准与协议 .- 5 -2.2.1目录和发现 .- 5 -2.2.2描述 .- 6 -2.2.3消息发送 .- 6 -2.2.4
8、XML Web 服务体系结构 .- 7 -2.3XML Web 服务示例 .- 7 -2.3.1信息服务 .- 7 -2.3.2集中化服务 .- 8 -2.3.3应用程序的扩展和集成 .- 8 -2.4WS-Security .- 9 -2.5XML Web 服务的优点 .- 9 -2.6XML 技术及其主要优点 .- 10 -2.7.NET Framework .- 12 -2.8XFire .133数据通信的底层协议 .错 误!未定义书签。3.1银行转帐系统数据交换模型 .- 13 -3.2SOAP 规范 .- 14 -3.3SOAP 请求剖析 .- 14 -3.4SOAP 响应剖析 .-
9、 16 -4系统设计.- 17 -4.1系统概述 .- 17 -4.2系统设计总体 .- 18 -4.2.1A 银行转帐系统总体设计 .- 18 -4.2.2技术分层设计 .- 18 -4.3数据库设计 .- 19 -4.4A 银行服务端设计 .- 21 -5系统实现.错 误!未定义书签。5.1开发工具选择 .- 22 -5.2环境部署 .- 22 -5.2.1Java 环境部署 .- 22 -5.2.2JDK 部署 .- 22 -5.2.3MyEclipse 6.0 部署 .- 23 -5.2.4Apache Tomcat 6.0 在 MyEclipse 中配置 .- 24 -5.2.5安装
10、 Visual Studio 2005.- 25 -5.3数据访问层 DAO 的实现 .- 26 -5.4A 银行客户端开发 .- 27 -5.4.1登录界面 .- 27 -5.4.2客户端主界面 .- 28 -5.4.3存款界面 .- 29 -5.4.4取款界面 .- 29 -5.4.5修改账户信息界面 .- 30 -5.4.6户主密码修改界面 .- 31 -5.4.7转帐界面 .- 31 -5.5 A 银行 XML Web 服务实现 .- 32 -5.5.1XML Web 服务的实现过程 .- 32 -5.5.2在 Visual Studio 2005 开发 XML Web 服务 .- 3
11、3 -5.5.3A 银行转帐 XML Web 服务的测试 .- 34 -5.6 B 银行的服务端开发 .- 35 -结论 .- 40 -致谢 .- 41 -参考文献 .- 41 -附录 .- 43 -1绪论随着计算机和网络技术的发展,企业越来越重视信息的及时传送和内部、外部的直接交流, 信息资源已成为与材料和能源同等重要的战略资源1 。通过企业信息化建设来提高生产、经营、管理、决策的效率和水平,从而提高企业的经济效益和企业竞争力。在单一或基础应用系统已经逐渐成熟的领域,新的应用热点就是对应用系统的整合,使企业能够进一步挖掘信息,对内、对外提供多元化的服务2 。在大多数公司中,几乎每个部门都在广
12、泛采用自定义软件,这就产生了大量有用的数据和业务逻辑“孤岛”3 。由于软件各自不同的开发环境以及技术不断发展的本质,在这些应用程序的基础上创建一个有效的分组是一项艰巨的任务。利用 XML Web 服务,就可以将每个现有应用程序的功能和数据作为XML Web 服务公开。 然后,就可以创建一个复合应用程序,该应用程序使用此XML Web 服务集合实现构成应用程序之间的互操作性4 。1.1研究背景信息化是六十年代末日本最先提出的。这一概念的提出和付诸实践是基于当时日本学术界和产业界对经济发展阶段和日本社会问题的基本判断。主要包括两方面的内容:一是对即将来临的信息社会这一概念的理解,认为发达国家经济己
13、开始由以实物生产为核心的工业杜会向以知识的获取和出售为主要内容的信息社会( Information BasedSociety) 的转变,这一转变将对劳动者的生存状态产生深刻影响;二是七十年代的石油危机使日本认识到作为资源稀缺国家发展重工业经济面临的危险,寻求一种知识密集型的产业结构成为日本经济的重要选择,也成为这一时期日本实现重型产业结构转型的需要,为此,产生了信息化的概念。后来,美国国家信息基础设施( NII)以 及全球信息基础设施( GII)计划的引入,又将信息化研究的重点导向技术层面的探讨5。随着全球经济一体化进程的加剧和中国WTO的正式加入,企业的发展空间和市场到了拓展,同时,企业信息
14、化也成为人们关注的焦点,因此,我国企业信息化建设现了一片蓬勃发展的场面,发展到现在,很多大型的企业己经先后配置了各种各样硬件设备及软件资源。硬件设施有自己的更新换代周期,与之相配套的软件也要随计算机技术的发展及企业的规模扩大而升级换代。但是,我们要清楚地看到, 我国业的管理机制、管理思想、管理方法与西方先进的市场经济管理有很大的差距,信息化建设起步较晚, 在 6上世纪七、八十年代,全球企业在信息系统建设方面进行了巨大的投资,为企业建立了众多的应用信息系统,以帮助企业进行内部与外部业务的处理和管理。但由于信息化建设是逐步发展的,各种软硬件系统是分步开发实施的,另外,企业的传统结构是按照职能来组织
15、各个部门,各个部门分别采用不同的应用信息系统,而这些业务子系统可能采用不同的体系架构和平台,自成一体,互不千涉,这就导致出了各种彼此分割、各自分散、相互封闭的信息资源系统,形成了一个个的“信息孤岛”,如何将它们联系起来,让不同的系统之间能方便地交互信息,因此,企业应用集成 ( EAI ) 便作为一个新的企业应用需求被提了出来。企业应用集成是建立在核心基础业务之上,对企业中完成不同业务功能的应用系统进行无缝地集成, 对各种业务流程实现管理并实时监控与分析,在不同的企业业务系统间,以及跨越企业边界的合作伙伴形成的商业网络之间,安全地对信息流实现智能管理, 把相关的外部信息与内部信息有机地联系起来,
16、全方位满足企业各种业务功能的要求,在它们之间建立起可供数据交流和应用沟通的中枢系统。信息集成涉及的内容非常广泛,主要体现在以下方面7 :企业内部信息系统与企业间信息系统的集成,如 ERP 与 CRM和 SCM及电子商务平台的集成;不同品牌的系统之间的数据转换,如不同CAD系统之间的数据转换;企业内部不同信息系统之间的集成, 如 PDM与 ERF的集成,PDM与 CAD、PDM与 CPP 集成、 CDA与 CPP 的集成、 CDA与 CAM系统的集成等, ERP与 MES的集成、 ERP与项目管理系统的集成、 ERP与 OA的集成等 ;信息系统内不同模块之间的集成, 如 ERP 系统中财务与物流
17、模块、 财务和生产管理模块的集成、 生产与质量模块的集成,尤其是不同厂商提供的相关模块之间的集成 ; 信息化软件系统与硬件系统的集成,如 ERP与条码系统、 ERP与立体自动仓库的集成, MES系统或 ERP系统与工业自动化系统的集成。企业应用集成对于企业的价值表现在:提供对客户全方位的了解与认识、建立与客户及合作伙伴之间紧密的联系、加快产品与服务推向市场的速度、缩短业务的导入与运转时间、减少不必要的管理与人力资源成本、对突发的变化快速反应、充分利用并扩展现有的 I T 投资。1.2本文研究的内容本文以银行转帐中涉及多个异构数据通信为背景,实现一个类似银行转帐的模型,模拟两个不同银行之间由于使
18、用的数据库进行数据通信,并且利用当前流行的Java 和C#两种语言开发,以体现XML Web Service与平台和开发语言无关的特性。本文所写的模拟银行转帐与真实的银行转帐没有任何联系,是以模拟银行转帐为例,说明如何使用XML Web Service 对异构数据库、系统的集成。模拟 A 银行的是用 SQL Server 数据库,对外公开的XML Web服务使用 Microsoft的 .Net C# 语言开发;模拟 B 银行的是使用 MySQL数据库,使用 Sun 公司 Java 语言开发 XMLWeb接口。然后开发一个客户端, 将两个系统集成起来, 实现模拟转帐的功能。1.3论文的组织结构第
19、一章:绪论,概要的介绍了国内、外企业信息化建设过程及基本情况,存在的问题,从而分析出企业应用集成在信息化建设中的重要性,引出了本课题研究背景及论文的组织安排。第二章:介绍 XMLWeb服务及相关的技术, 重点介绍 XMLWeb 服务技术标准与协议,XMLWeb优点以及服务示例; 以及与 XMLWeb 相关的 XML技术,开发 XMLWeb服务的 .NET Framework 和 XFire 。第三章:描述本文实现银行转帐系统的数据交换模型,以及SOAP的规范和请求、响应剖析。第四章:描述了系统的概述,总体设计,技术分层设计,数据设计以及系统的XMLWeb服务端和客户端的设计。第五章:系统开发。
20、描述了开发工具的选择和环境部署搭建,数据访问层DAO是如何实现的,银行转帐客户端和服务端的开发。结论 :对研究本系统的设计进行了总结,同时对后续工作进行了展望。2 XML Web 服务及相关技术2.1什么是 XML Web服务XML Web是一类软件组件,它们通过网络实现其功能。 XML Web服务的外延定义还可以通过以下公认的特性进行说明 8 :基础的 Web Services 平台是 XML + HTTP。HTTP 协议是最常用的因特网协议, XML 提供了一种可用于不同的平台和编程语言之间的语言。常见的协议包括:图 2-1 XML Web 服务协议体系(TCP IPTransmissio
21、n ControlProtocol/Internet Protocol,传输控制协议/Internet协议)、HTTP协议( Hypertext Transfer Protocol,超文本传输协议)以及 XML( Extensible Markup Language,可扩展标志语言)等 Internet 标准,还包括以下为XML Web服务专门开发的新标准,如SOAP(Simple Object Access Protocol, 简单对象访问协议)、WSDL(Web Services Description Language, Web服务描述语言)以及UDDI(Universal Discov
22、ery, Description and Integration,通用发现、描叙与集成 ) 等等,如图2.1 所示XML Web服务协议体系。XML Web服务通常不是一个完整的应用程序,而往往是一个功能型的组件或是大型解决方案 9 。同样, XML Web服务的目的往往是应用程序之间的交互。XMLWeb服务通过良好定义的接口 (interface)来实现其多种功能。 需要主要的是,这里的“接口”一词不能等同与网页和Windows 应用程序中使用的用户接口(userinterface),而是指使用WSDL等标准化接口描述语言定义的程序接口。XML Web 服务平台是简单的可共同操作的消息收发框
23、架。它仍然缺少许多诸如安全和路由等重要的特性。但是,一旦 SOAP 变得更加高级,这些事项就会得到解决10 。XML Web服务的未来使命是使应用程序更加容易通信11 。2.2 XML Web 服务标准与协议尽管 XMLWeb 服务目前采用的规范已经得到了广泛的认可,但其中的一些标准现在仍然继续发展,以满足各行各业以及广大消费者的需求13 。整个领域都处在不断发展更新中,各种新特性、新规范以及新版本协议不断荣。图 2.2 是 XMLWeb服务所采用的技术的一个缩略图。图 2-2 XML Web 服务采用的技术2.2.1目录和发现使用 XML Web服务,关键是要能准确的描述出它所具备的功能。发
24、现技术的目的在于,使开发者能获取对 XML Web服务的描述,这样就能将其作为一个组件来开发系统。UDDIUDDI(Universal Description,Discovery and Integration,通用描述、发现和集成)提供 XMLWeb服务的注册表。简而言之,UDDI提供了一个企业目录,用户可以根据企业名称、企业所经营的行业或是企业提供服务的地区在其中进行搜索。每项企业记录都包括该企业所提供的XML Web服务的目的和位置的详细信息14 。目前为止,已经有3 种可用的 UDDI注册表,分别来自于IBM、SAP、 Microsoft司 提 供UDDI 注 册 服 务 。 地 址
25、是 : /services/uddihttp:/uddi/./、。公、DISCODISCO( discovery的缩写)文件是Microsoft特有的一种格式,通过这一技术网站可公布其提供的XMLWeb服务。目前,DISCO文件的主要消费者是Visual Studio .Net 。XML Web服务产品的其他提供者也已经开始逐渐采用这一技术。DISCO的主要优点在与其简单性,它使得部门或小型企业也可利用简单XML Web服务发现机制,而无需要创建并维护完整的UDDI注册表。2.2.2描述(通过 UD
26、DI或 DISCO)发现某种 XMLWeb服务之后,我们就需要了解该服务能提供哪些交互。消费者终端要使用XMLWeb服务,就必须事先知道如何与其进行交互。前面介绍的发现过程,其最终目的就在与获取服务的描述。WDSL(Web Services Description Language,Web 服务描述语言)是对XML Web服务进行描述的标准方式。 WSDL是一种对交互进行描述的 XML格式,它包括了可以传送给服务的每条消息以及将要返回 (如果要返回) 的响应类型的有关信息。 WSDL文档是合同(告知消费者端 XMLWeb服务的作用)的基础。 WSDL文档实质上相当简单,但它通常都被用来描述复杂
27、的交互,因此文档有可能相当长而且不容易看懂。2.2.3消息发送在发现某种 XML Web服务并获取现有的关于其交互的描述之后,就可以向服务发送消息以使用该服务了。在客户端与XML Web服务之间的消费发送通常采用SOAP(Simple Object AccessProtocol ,简单对象访问协议)进行。这些消息包括客户端请求XMLWeb服务执行任务的消息,以及服务返回的包含详细的响应。 与 Web服务采用的其他许多标准和协议一样,SOAP也是基于 XML的。SOAP并为绑定到某种特定的编程语言或操作系统上。也就是说,使用Java 语言编写的客户端也能理解用C#或 Visual Basic.N
28、ET编写的 XML Web服务所发出的消息。由于每种平台都可以用于自身的一套数据类型,SOAP提供了一种为所有平台支持的中间表示方式。实际上,跨平台数据类型并不像人们所想象的那么复杂,从图2.3 就可以看出来这一点。图 2-3 SOAP 数据转换模型XMLWeb服务发送 SOAP消息时,它并不知道要接收消息的是何种客户端客户端可能是 Microsoft .NET 语言编写的,也可能是用 Java 等其他语言编写的。 XML Web服务只需要具备将 .NET 类型转换为 SOAP类型的功能;而客户端则只需要知道如何将 SOAP类型转换为在自身使用的语言中可以理解的类型(如Java 数据类型)。这
29、种转换就是SOAP跨平台数据类型得以存在的基础。 每种平台或是编程语言都必须进行自身数据类型与对应的 SOAP数据类型之间的转换。2.2.4 XML Web 服务体系结构图 2-4 XML Web 服务体系结构从图2.4中可以清楚的看出XML Web服务的一个最基本的架构15 。 XML Web服务最基本的组成部分为服务的提供者(Service Provider)和服务的请求者(ServiceRequester )。这样看起来很像 C/S 架构的软件,与之不同的是, XML Web服务两端的应用是通过基于标准的 XML 格式的协议进行通信的,这种最常用的协议就是 SOAP。服务的提供者应该首先
30、通过 WSDL和 UDDI 发布它所提供的服务到一个统一注册这些服务信息的存储库中去。这样,服务的请求者通过WSDL 和 UDDI 发现到服务提供者提供的服务,然后通过应用的调用方法来使用这个服务。目录、发现和描述,是使得客户端可以找到WSDL文档中对 XML Web服务的描述的前 3 个步骤。其中,发现过程是Microsoft产品专业的,使用其他工具创建的XML Web服务可以略去此步骤,直接将引用放入UDDI注册表中指向WSDL描述的位置。2.3XML Web服务示例2.3.1信息服务最常见的 XMLWeb 服务是用于对信息的编程访问, 如访问股票价格、货币兑换比例、航班到达时刻表以及外语
31、翻译等信息。实际上,这些信息可能本来就以网页或文档等电子形式提供给了用户,但用户不能使用编程的方式对这些形式的信息进行访问或操纵。而通过 XMLWeb 服务,这些信息便有现有的接口提供给用户,以供用户使用标准协议和数据表示形式访问。任何设备或程序,无聊它们采用何种平台或编程语言实现,都可以通过网络与 XMLWeb服务进行通信以访问这些信息。 XMLWeb服务的发展空间是无限大,任何信息都可以通过 XML Web服务模型进行传送 16 。2.3.2集中化服务除了为客户提供信息之外,XMLWeb 服务还能充当一个方便的信息库,以跨越多种不同平台的应用程序共享和操纵同样的信息。基于 Internet
32、 的日程表和文件存储等服务则是 XMLWeb服务发挥这些附加功能的极好例子。 通过这些服务, 无论用户身在何方,使用何种平台, 都可以访问信息, 使用信息集中化功能, 用户还可以授权给信用第三方,使其也可以访问用户的信息。许多重要的简单服务不但能提供多方面的信息, 而且能将用户信息进行集中并提供给访问者。这样应用程序和作为中介的 XMLWeb服务就能充分的利用,通过编程方式访问大量数据时,可以不受数据所在位置与所用平台的局限,从而能利用现有的组件数据来创建功能强大的新服务。例如,假设所有交通公司都是有XMLWeb服务公布其公共汽车、火车以及航班的时刻表供客户查询,那么应用程序或作为中介的 XM
33、LWeb服务就可以使用这些信息来设计任何两个地点之间的最佳路线。2.3.3应用程序的扩展和集成XMLWeb服务可以与传统的系统集成, 从而开发出新型的IT 解决方案。进行 XMLWeb服务通行所需要的技术相当简单,大多计算机平台都提供了这些技术。采用XMLWeb服务作为客户端和传统系统之间的抽象层有多个优点:许多新型客户端平台都能访问旧系统,而且 XML Web服务在处理客户端请求时,还能对跨多个系统的活动进行协调。可以用一种综合方式来使用XML Web services ,以便集成似乎完全不同的一组现有应用程序。在大多数公司中,几乎每个部门都在广泛采用自定义软件,这就产生了大量有用的数据和业
34、务逻辑“孤岛”。由于软件各自不同的开发环境以及技术不断发展的本质,在这些应用程序的基础上创建一个有效的分组是一项艰巨的任务。利用XML Web services,就可以将每个现有应用程序的功能和数据作为XML Webservices公开。然后,您可以创建一个复合应用程序,该应用程序使用此XML Webservices集合实现构成应用程序之间的互操作性。2.4WS-SecurityWS-Security (Web服务安全 ) 是一种提供在 Web服务上应用安全的方法的网络传输协议。 2004 年 4 月 19 日, OASIS组织发布了 WS-Security 标准的 1.0 版本。 2006
35、年 2月 17 日,发布了 1.1 版本。WS-Security 是最初 IBM,微软, VeriSign 和 Forum Systems 开发的,现在协议由 Oasis-Open 下的一个委员会开发,官方名称为 WSS。协议包含了关于如何在Web服务消息上保证完整性和机密性的规约。WSS协议包括SAML(安全断言标记语言)、Kerberos 和认证证书格式(如X.509)的使用的详细信息。WS-Security 描述了如何将签名和加密头加入 SOAP消息。除此以外,还描述了如何在消息中加入安全令牌,包括二进制安全令牌,如 X.509 认证证书和 Kerberos 门票(ticket)。WS-
36、Security 将安全特性放入一个SOAP消息的消息头中, 在应用层处理。这样协议保证了端到端的安全。2.5 XML Web 服务的优点XML Web服务最大的优势体现在其集成上。如果企业要集成完成完全不同类型的应程序、系统和技术,其费用是相当惊人。而XMLWeb服务则是一种广泛认可的标准,它是最为理想的集成工具, 提供了一种可以在完全不同类型的系统之间进行通信和交换信息的机制以及实时的互操作功能,而且还可以节省大量成本。( 1 )基于标准基于标准,即是说所有的 XMLWeb服务都是通过同样的方式实现使用相同协议,按照相同方式对数据编码。这样,客户或服务无论位于何种平台,客户都可以方便的使用 XML
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 护士企业编制面试题库【网校专用】附答案详解
- 2025年生态修复工程生物多样性保护政策法规解读报告
- 2025年工业互联网平台增强现实交互技术在工业设备故障诊断与处理中的应用报告
- 2025至2030年中国毛球修剪器行业市场全景评估及投资规划建议报告
- 押题宝典高校教师资格证之《高等教育法规》试题及答案详解(有一套)
- 2025版企业知识产权采购合同参考范本
- 2025年涂料行业知识产权保护与许可合同模板
- 2025标识标牌户外广告发布与维护服务合同
- 2025存量房交易资金监管与划拨服务合同
- 2025年地面光伏电站施工劳务分包及安全生产协议
- 2025年湖南湘西自治州州直事业单位招聘考试笔试试卷附答案
- 幼儿园安全责任书及后勤管理制度
- 《小学开学第一课》课件
- 2025-2031年中国有源相控阵雷达行业市场发展形势及投资潜力研判报告
- 消防车辆事故课件
- 2026届四川省宜宾市普通高中高一化学第一学期期末统考试题含解析
- 《2型糖尿病中医防治指南(2024版)》解读课件
- 剑阁县普安镇污水处理厂扩容建设项目环评报告
- 商务楼宇管理办法
- 肺炎护理试题填空及答案
- 社用手机管理办法
评论
0/150
提交评论