《基于xmlweb服务的银行转账系统的设计与实现大学毕设论文.doc》由会员分享,可在线阅读,更多相关《基于xmlweb服务的银行转账系统的设计与实现大学毕设论文.doc(61页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 毕业设计(论文)基于XML Web 服务的银行转帐系统的设计与实现系 别+专 业信息管理与信息系统班 级+姓 名+指导教师+2009 年 6 月 10 日基于XML Web 服务的银行转帐系统的设计与实现摘 要XML Web服务是可以在互联网上使用标准技术联网运行的商务进程,具有松耦合性和互操作性的软件组件。它能与任何平台上用任何语言编写的服务进行交互,使得应用软件的集成可以做到更快、更容易而且具有更高的可扩展性。XML Web 服务不但实现在异类系统之间以 XML 消息的形式进行数据交换和远程访问数据,而且能以松耦合的方式执行操作。使用XML Web服务技术不仅可以实现企业应用的松散集成,
2、而且还能够做到动态的集成,具有很好的灵活性。本文详细分析了XML Web服务技术体系,设计实现了一种基于XML Web服务的模拟银行转帐的系统,完成了异构数据库系统的集成。通过服务的定义、发布、发现、绑定、调用等机制实现一种松散耦合的应用集成框架,以及使用Java(XFire框架)和C#两种语言实现在异构数据库集成操作,充分体现了XML Web Service的与语言无关的特性。该银行转帐系统实现了银行客户端模块以及服务端模块,实现了XML Web服务过程。关键词:XML Web 服务,银行转帐系统,SOAP协议,系统集成,XFire框架The Design and Realization o
3、f Bank Transfer System Based on XML Web servicesAuthor: Wu ZhenboTutor:Yuan JingboAbstractXML Web services can use standard Internet technology to run business process network, with loose coupling and interoperability of software components. With any platform in any language for interactive services
4、, 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 data, but also implement these operations by loosely approach. The use of XML Web services technolog
5、y 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 technology system, designees and realizes a simulation system of bank transfers base on XML Web services
6、, integrate heterogeneous database system. Through the definition of services, publishing, discovery, binding, and other mechanisms, implements call a loosely coupled application integration framework. Using Java (XFire framework) and C # two languages to achieve integration of heterogeneous databas
7、es in operation, fully reflects the XML Web Service has nothing to do with language features. The bank transfer system realizes bank client-side modules and service modules, realizes the process of XML Web services.Key Words: XML Web Services,Bank Transfer System,SOAP protocol,System Integration,XFi
8、re framework目 录1 绪 论11.1 研究背景11.2 本文研究的内容31.3 论文的组织结构32 XML Web 服务及相关技术42.1 什么是XML Web 服务42.2 XML Web服务标准与协议52.2.1 目录和发现52.2.2 描述62.2.3 消息发送62.2.4 XML Web服务体系结构72.3 XML Web 服务示例82.3.1 信息服务82.3.2 集中化服务82.3.3 应用程序的扩展和集成82.4 WS-Security92.5 XML Web 服务的优点92.6 XML 技术及其主要优点112.7 .NET Framework122.8 XFire1
9、33 数据通信的底层协议143.1 银行转帐系统数据交换模型143.2 SOAP规范143.3SOAP 请求剖析153.4 SOAP 响应剖析174 系统设计184.1 系统概述184.2 系统设计总体184.2.1 A银行转帐系统总体设计184.2.2 技术分层设计194.3 数据库设计204.4 A银行服务端设计225 系统实现225.1 开发工具选择225.2 环境部署235.2.1 Java 环境部署235.2.2 JDK部署235.2.3 MyEclipse 6.0部署245.2.4 Apache Tomcat 6.0 在MyEclipse 中配置255.2.5 安装Visual S
10、tudio 2005265.3 数据访问层DAO的实现275.4 A银行客户端开发285.4.1 登录界面285.4.2 客户端主界面295.4.3 存款界面305.4.4 取款界面305.4.5 修改账户信息界面315.4.6 户主密码修改界面315.4.7 转帐界面325.5A银行 XML Web 服务实现335.5.1 XML Web 服务的实现过程335.5.2 在Visual Studio 2005 开发XML Web服务345.5.3 A银行转帐XML Web 服务的测试355.6 B银行的服务端开发36结 论42致 谢43参考文献44附 录461 绪 论随着计算机和网络技术的发展
11、,企业越来越重视信息的及时传送和内部、外部的直接交流, 信息资源已成为与材料和能源同等重要的战略资源1。通过企业信息化建设来提高生产、经营、管理、决策的效率和水平,从而提高企业的经济效益和企业竞争力。 在单一或基础应用系统已经逐渐成熟的领域,新的应用热点就是对应用系统的整合,使企业能够进一步挖掘信息,对内、对外提供多元化的服务2。在大多数公司中,几乎每个部门都在广泛采用自定义软件,这就产生了大量有用的数据和业务逻辑“孤岛”3。由于软件各自不同的开发环境以及技术不断发展的本质,在这些应用程序的基础上创建一个有效的分组是一项艰巨的任务。利用 XML Web 服务,就可以将每个现有应用程序的功能和数
12、据作为 XML Web 服务公开。 然后,就可以创建一个复合应用程序,该应用程序使用此 XML Web 服务集合实现构成应用程序之间的互操作性4。1.1 研究背景信息化是六十年代末日本最先提出的。这一概念的提出和付诸实践是基于当时日本学术界和产业界对经济发展阶段和日本社会问题的基本判断。主要包括两方面的内容: 一是对即将来临的信息社会这一概念的理解,认为发达国家经济己开始由以实物生产为核心的工业杜会向以知识的获取和出售为主要内容的信息社会( InformationBased Society )的转变,这一转变将对劳动者的生存状态产生深刻影响; 二是七十年代的石油危机使日本认识到作为资源稀缺国家
13、发展重工业经济面临的危险,寻求一种知识密集型的产业结构成为日本经济的重要选择,也成为这一时期日本实现重型产业结构转型的需要,为此,产生了信息化的概念。后来,美国国家信息基础设施( NII)以 及全球信息基础设施( GII) 计划的引入, 又将信息化研究的重点导向技术层面的探讨5 。随着全球经济一体化进程的加剧和中国WTO 的正式加入,企业的发展空间和市场到了拓展,同时,企业信息化也成为人们关注的焦点,因此,我国企业信息化建设现了一片蓬勃发展的场面,发展到现在,很多大型的企业己经先后配置了各种各样硬件设备及软件资源。 硬件设施有自己的更新换代周期,与之相配套的软件也要随计算机技术的发展及企业的规
14、模扩大而升级换代。但是,我们要清楚地看到,我国业的管理机制、 管理思想、管理方法与西方先进的市场经济管理有很大的差距, 信息化建设起步较晚, 在技术方面也落后于发达国家,因而影响我国信息化建设的进程6。上世纪七、八十年代,全球企业在信息系统建设方面进行了巨大的投资,为企业建立了众多的应用信息系统,以帮助企业进行内部与外部业务的处理和管理。 但由于信息化建设是逐步发展的,各种软硬件系统是分步开发实施的,另外,企业的传统结构是按照职能来组织各个部门,各个部门分别采用不同的应用信息系统,而这些业务子系统可能采用不同的体系架构和平台,自成一体,互不千涉,这就导致出了各种彼此分割、 各自分散、相互封闭的
15、信息资源系统,形成了一个个的“ 信息孤岛”,如何将它们联系起来,让不同的系统之间能方便地交互信息,因此,企业应用集成 ( EAI )便作为一个新的企业应用需求被提了出来。企业应用集成是建立在核心基础业务之上,对企业中完成不同业务功能的应用系统进行无缝地集成, 对各种业务流程实现管理并实时监控与分析,在不同的企业业务系统间,以及跨越企业边界的合作伙伴形成的商业网络之间,安全地对信息流实现智能管理, 把相关的外部信息与内部信息有机地联系起来,全方位满足企业各种业务功能的要求,在它们之间建立起可供数据交流和应用沟通的中枢系统。 信息集成涉及的内容非常广泛,主要体现在以下方面7: 企业内部信息系统与企
16、业间信息系统的集成,如ERP 与CRM和SCM及电子商务平台的集成; 不同品牌的系统之间的数据转换,如不同CAD系统之间的数据转换; 企业内部不同信息系统之间的集成,如PDM与ERF的集成,PDM与CAD 、PDM与CPP集成、CDA与CPP 的集成、CDA与CAM系统的集成等,ERP与MES的集成、ERP与项目管理系统的集成、ERP与OA的集成等; 信息系统内不同模块之间的 集成, 如ERP 系统中财务与物流模块、财务和生产管理模块的集成、 生产与质量模块的集成,尤其是不同厂商提供的相关模块之间的集成;信息化软件系统与硬件系统的集成,如ERP与条码系统、ERP与立体自动仓库的集成,MES系统
17、或ERP系统与工业自动化系统的集成。企业应用集成对于企业的价值表现在:提供对客户全方位的了解与认识、 建立与客户及合作伙伴之间紧密的联系、 加快产品与服务推向市场的速度、 缩短业务的导入与运转时间、减少不必要的管理与人力资源成本、 对突发的变化快速反应、 充分利用并扩展现有的I T投资。1.2 本文研究的内容本文以银行转帐中涉及多个异构数据通信为背景,实现一个类似银行转帐的模型,模拟两个不同银行之间由于使用的数据库进行数据通信,并且利用当前流行的Java和C#两种语言开发,以体现XML Web Service与平台和开发语言无关的特性。本文所写的模拟银行转帐与真实的银行转帐没有任何联系,是以模
18、拟银行转帐为例,说明如何使用XML Web Service对异构数据库、系统的集成。模拟A银行的是用SQL Server数据库,对外公开的XML Web 服务使用Microsoft的 .Net C#语言开发;模拟B银行的是使用MySQL 数据库,使用Sun 公司Java语言开发XML Web接口。然后开发一个客户端,将两个系统集成起来,实现模拟转帐的功能。1.3 论文的组织结构 第一章:绪论, 概要的介绍了国内、 外企业信息化建设过程及基本情况, 存在的问题,从而分析出企业应用集成在信息化建设中的重要性, 引出了本课题研究背景及论文的组织安排。第二章:介绍XML Web服务及相关的技术,重点介
19、绍XML Web 服务技术标准与协议,XML Web优点以及服务示例;以及与XML Web 相关的XML技术,开发XML Web服务的.NET Framework和XFire。第三章:描述本文实现银行转帐系统的数据交换模型,以及SOAP的规范和请求、响应剖析。第四章:描述了系统的概述,总体设计,技术分层设计,数据设计以及系统的XML Web服务端和客户端的设计。第五章:系统开发。描述了开发工具的选择和环境部署搭建,数据访问层DAO是如何实现的,银行转帐客户端和服务端的开发。结论: 对研究本系统的设计进行了总结,同时对后续工作进行了展望。2 XML Web 服务及相关技术2.1 什么是XML W
20、eb 服务XML Web是一类软件组件,它们通过网络实现其功能。XML Web 服务的外延定义还可以通过以下公认的特性进行说明8:基础的 Web Services 平台是 XML + HTTP。HTTP 协议是最常用的因特网协议,XML 提供了一种可用于不同的平台和编程语言之间的语言。常见的协议包括:图2.1 XML Web 服务协议体系(TCPIPTransmission Control Protocol/Internet Protocol,传输控制协议/Internet协议)、HTTP协议(Hypertext Transfer Protocol,超文本传输协议)以及XML(Extensib
21、le Markup Language,可扩展标志语言)等Internet标准,还包括以下为XML Web服务专门开发的新标准,如SOAP(Simple Object Access Protocol, 简单对象访问协议)、WSDL(Web Services Description Language,Web服务描述语言)以及UDDI(Universal Discovery, Description and Integration, 通用发现、描叙与集成)等等,如图2.1所示XML Web服务协议体系。XML Web服务通常不是一个完整的应用程序,而往往是一个功能型的组件或是大型解决方案9。同样,X
22、ML Web服务的目的往往是应用程序之间的交互。XML Web服务通过良好定义的接口(interface)来实现其多种功能。需要主要的是,这里的“接口”一词不能等同与网页和Windows应用程序中使用的用户接口(user interface),而是指使用WSDL等标准化接口描述语言定义的程序接口。 XML Web 服务平台是简单的可共同操作的消息收发框架。它仍然缺少许多诸如安全和路由等重要的特性。但是,一旦 SOAP 变得更加高级,这些事项就会得到解决10。XML Web服务的未来使命是使应用程序更加容易通信11。2.2 XML Web服务标准与协议尽管XML Web 服务目前采用的规范已经得
23、到了广泛的认可,但其中的一些标准现在仍然继续发展,以满足各行各业以及广大消费者的需求13。整个领域都处在不断发展更新中,各种新特性、新规范以及新版本协议不断荣。图2.2是XML Web服务所采用的技术的一个缩略图。图2.2 XML Web 服务采用的技术2.2.1 目录和发现使用XML Web服务,关键是要能准确的描述出它所具备的功能。发现技术的目的在于,使开发者能获取对XML Web服务的描述,这样就能将其作为一个组件来开发系统。UDDIUDDI(Universal Description,Discovery and Integration,通用描述、发现和集成)提供XML Web服务的注册
24、表。简而言之,UDDI提供了一个企业目录,用户可以根据企业名称、企业所经营的行业或是企业提供服务的地区在其中进行搜索。每项企业记录都包括该企业所提供的XML Web服务的目的和位置的详细信息14。目前为止,已经有3种可用的UDDI注册表,分别来自于IBM、SAP、Microsoft公司提供UDDI注册服务。地址是:DISCODISCO(discovery 的缩写)文件是Microsoft特有的一种格式,通过这一技术网站可公布其提供的XML Web服务。目前,DISCO文件的主要消费者是Visual Studio .Net。XML Web服务产品的其他提供者也已经开始逐渐采用这一技术。DISCO
25、的主要优点在与其简单性,它使得部门或小型企业也可利用简单XML Web服务发现机制,而无需要创建并维护完整的UDDI注册表。2.2.2 描述(通过UDDI或DISCO)发现某种XML Web服务之后,我们就需要了解该服务能提供哪些交互。消费者终端要使用XML Web服务,就必须事先知道如何与其进行交互。前面介绍的发现过程,其最终目的就在与获取服务的描述。WDSL(Web Services Description Language,Web服务描述语言)是对XML Web服务进行描述的标准方式。WSDL是一种对交互进行描述的XML格式,它包括了可以传送给服务的每条消息以及将要返回(如果要返回)的响
26、应类型的有关信息。WSDL文档是合同(告知消费者端XML Web服务的作用)的基础。WSDL文档实质上相当简单,但它通常都被用来描述复杂的交互,因此文档有可能相当长而且不容易看懂。2.2.3 消息发送在发现某种XML Web服务并获取现有的关于其交互的描述之后,就可以向服务发送消息以使用该服务了。在客户端与XML Web服务之间的消费发送通常采用SOAP(Simple Object Access Protocol,简单对象访问协议)进行。这些消息包括客户端请求XML Web服务执行任务的消息,以及服务返回的包含详细的响应。与Web服务采用的其他许多标准和协议一样,SOAP也是基于XML的。SO
27、AP并为绑定到某种特定的编程语言或操作系统上。也就是说,使用Java语言编写的客户端也能理解用C#或Visual Basic.NET编写的XML Web服务所发出的消息。由于每种平台都可以用于自身的一套数据类型,SOAP提供了一种为所有平台支持的中间表示方式。实际上,跨平台数据类型并不像人们所想象的那么复杂,从图2.3就可以看出来这一点。图2.3 SOAP数据转换模型XML Web服务发送SOAP消息时,它并不知道要接收消息的是何种客户端客户端可能是Microsoft .NET语言编写的,也可能是用Java等其他语言编写的。XML Web服务只需要具备将.NET类型转换为SOAP类型的功能;而
28、客户端则只需要知道如何将SOAP类型转换为在自身使用的语言中可以理解的类型(如Java数据类型)。这种转换就是SOAP跨平台数据类型得以存在的基础。每种平台或是编程语言都必须进行自身数据类型与对应的SOAP数据类型之间的转换。2.2.4 XML Web服务体系结构图2.4 XML Web服务体系结构从图2.4中可以清楚的看出 XML Web服务的一个最基本的架构15。XML Web服务最基本的组成部分为服务的提供者(Service Provider)和服务的请求者(Service Requester)。这样看起来很像 C/S 架构的软件,与之不同的是,XML Web 服务两端的应用是通过基于标
29、准的 XML 格式的协议进行通信的,这种最常用的协议就是 SOAP。服务的提供者应该首先通过 WSDL和 UDDI发布它所提供的服务到一个统一注册这些服务信息的存储库中去。这样,服务的请求者通过 WSDL 和 UDDI 发现到服务提供者提供的服务,然后通过应用的调用方法来使用这个服务。目录、发现和描述,是使得客户端可以找到WSDL文档中对XML Web服务的描述的前3个步骤。其中,发现过程是Microsoft产品专业的,使用其他工具创建的XML Web服务可以略去此步骤,直接将引用放入UDDI注册表中指向WSDL描述的位置。2.3 XML Web 服务示例2.3.1 信息服务 最常见的XML
30、Web 服务是用于对信息的编程访问,如访问股票价格、货币兑换比例、航班到达时刻表以及外语翻译等信息。实际上,这些信息可能本来就以网页或文档等电子形式提供给了用户,但用户不能使用编程的方式对这些形式的信息进行访问或操纵。而通过XML Web 服务,这些信息便有现有的接口提供给用户,以供用户使用标准协议和数据表示形式访问。任何设备或程序,无聊它们采用何种平台或编程语言实现,都可以通过网络与XML Web服务进行通信以访问这些信息。XML Web服务的发展空间是无限大,任何信息都可以通过XML Web 服务模型进行传送16。2.3.2 集中化服务除了为客户提供信息之外,XML Web 服务还能充当一
31、个方便的信息库,以跨越多种不同平台的应用程序共享和操纵同样的信息。基于Internet的日程表和文件存储等服务则是XML Web服务发挥这些附加功能的极好例子。通过这些服务,无论用户身在何方,使用何种平台,都可以访问信息,使用信息集中化功能,用户还可以授权给信用第三方,使其也可以访问用户的信息。 许多重要的简单服务不但能提供多方面的信息,而且能将用户信息进行集中并提供给访问者。这样应用程序和作为中介的XML Web服务就能充分的利用,通过编程方式访问大量数据时,可以不受数据所在位置与所用平台的局限,从而能利用现有的组件数据来创建功能强大的新服务。例如,假设所有交通公司都是有XML Web服务公
32、布其公共汽车、火车以及航班的时刻表供客户查询,那么应用程序或作为中介的XML Web服务就可以使用这些信息来设计任何两个地点之间的最佳路线。2.3.3 应用程序的扩展和集成XML Web服务可以与传统的系统集成,从而开发出新型的IT解决方案。进行XML Web服务通行所需要的技术相当简单,大多计算机平台都提供了这些技术。采用XML Web服务作为客户端和传统系统之间的抽象层有多个优点:许多新型客户端平台都能访问旧系统,而且XML Web服务在处理客户端请求时,还能对跨多个系统的活动进行协调。可以用一种综合方式来使用 XML Web services,以便集成似乎完全不同的一组现有应用程序。 在
33、大多数公司中,几乎每个部门都在广泛采用自定义软件,这就产生了大量有用的数据和业务逻辑“孤岛”。 由于软件各自不同的开发环境以及技术不断发展的本质,在这些应用程序的基础上创建一个有效的分组是一项艰巨的任务。利用 XML Web services,就可以将每个现有应用程序的功能和数据作为 XML Web services 公开。 然后,您可以创建一个复合应用程序,该应用程序使用此 XML Web services 集合实现构成应用程序之间的互操作性。2.4 WS-SecurityWS-Security (Web服务安全) 是一种提供在Web服务上应用安全的方法的网络传输协议。2004年4月19日,
34、OASIS组织发布了WS-Security标准的1.0版本。2006年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门
35、票(ticket)。WS-Security将安全特性放入一个SOAP消息的消息头中,在应用层处理。这样协议保证了端到端的安全。2.5 XML Web 服务的优点XML Web服务最大的优势体现在其集成上。如果企业要集成完成完全不同类型的应程序、系统和技术,其费用是相当惊人。而XML Web服务则是一种广泛认可的标准,它是最为理想的集成工具,提供了一种可以在完全不同类型的系统之间进行通信和交换信息的机制以及实时的互操作功能,而且还可以节省大量成本。( 1 ) 基于标准 基于标准,即是说所有的XML Web服务都是通过同样的方式实现使用相同协议,按照相同方式对数据编码。这样,客户或服务无论位于何种
36、平台,客户都可以方便的使用XML Web服务。( 2 ) 非商业性XML Web服务使用的标准是在开发式、基于社区的环境下开发出来的,而且吸收了技术提供者、大型企业和学术界的研究成果。这种合作式的开发方式,有效地避免了XML Web服务成为独家垄断的商品。同时,任何开发者也可以根据自己的想法改进或更新这些标准。所以说,XML Web服务技术是开放式的,也非商业化的。( 3 ) 简便性与许多其他的分布式计算解决方案相比,XML Web 服务所使用的体系结构和技术都相当简单。尽管XML Web服务领域中采用了数量众多的标准与协议,但实际上,由于操作系统和当前的开发工具(如Visual S、MyEc
37、lipse之类等)能抽象这些标准和协议,因此编程人员根本无需了解这些内容。( 4 ) 独立与语言和平台使用XML Web服务只需满足两个前提,即能使用TCP/IP 进行通信,并且能处理XML语言。XML Web服务并不要求使用某种特定的编程语言或是操作系统。即使是C(一种面向过程语言)语言编写、在手持设备上运行的程序,也能使用C#(一种面向对象语言)编写、在Windows 2003 Server上运行的XML Web服务。( 5 ) 功能抽象除了不同类型技术和编程语言之间抽象层之外,XML Web服务还能提供抽象。XML Web服务的功能无需直接映射到底层的功能实现。XML Web服务还可以提
38、供一个接口,将多个系统的底层功能聚合起来。例如。某种XML Web服务用于提供天气服务,但它可以同时从一个系统中获取温度信息,再从另一个系统中获取潮汛信息,从而具备提供多方面天气信息的功能。( 6 ) 可发现性XML Web服务模型的一个重要附加特性是其服务注册表。服务注册表执行一项重要而且定义良好的任务:提供一种机制,便于提供者公布其服务,同时提供客户查找服务。( 7 ) 提高开发效率对于所有基于组件的开发体系结构而言,利用已有的XML Web服务构建新的解决方案,不但可以提供效率,还能节省开发费用。XML Web服务将组件的重用提高到了一个新的水平多个用户可以同时使用相同的组件,而且可以跨
39、组织共享组件。此外,XML Web服务协议是基于文本的,因此程序员不但可以读取它们,而且可以更轻松的了解当前状况,从而能够更简单地解决问题。这是XML Web服务所具备的一大优势,其他依赖二进制协议的分别式计算协议都做不到这一点。2.6 XML 技术及其主要优点XML ( EXtensible Markup Language,可扩展标记语言 ) 是标准通用标记语言( Standard Generic Markup Language , SGML )的一个子集。其目的在于使得We上能以现有超文标记语言 ( HyperText Text Markup Language , HTML)的使用方式提供
40、、接收和处通用的SGML成为可能。XML的设计既考虑了实现的方便性,同时也顾及了与SGML 和HTML的互操作性。XML 的设计宗旨是传输数据,而非显示数据 ;XML 标签没有被预定义,您需要自行定义标签;XML 被设计为具有自我描述性,XML 是 W3C 的推荐标准。( 1 ) 良好可扩展性 XML允许各个不同的行业根据自己独特的需要制定自己的一套标记,同时,它并不要求所有浏览器都能处理这成千上万个标记,同样也不要求一个标记语言能够适合各个行业各个领域的应用,这种具体问题具体分析的方法更有助于标记语言的发展。( 2 ) 内容与形式分离XML中信息的显示方式己经从信息本身中抽取出来,放在了“样
41、式表”中。 这样做便于信息表现方式的修改,便于数据的搜索,也使得XML具有良好的自描述性,能够描述信息本身的含义甚至它们之间的关系。( 3 ) 遵循严格语法要求XNL不但要求标记配对、嵌套,而且还要求严格遵守DID或XML Schema的规定。这增加了文档的可读性和可维护性,也大大减轻了开发人员的负担。( 4 ) 便于异构系统之间信息传输不同企业、不同部门中往往存在着许多不同的系统,XML可以用作各种不同系统之间的交流媒介,是一种非常理想的数据交换语言。如图2.5是XML在商务应用数据传输示意图。图2.5 XML商务解决之道概览2.7 .NET Framework.NET Framework
42、是支持生成和运行下一代应用程序和 XML Web services 的内部 Windows 组件。.NET Framework 旨在实现下列目标: 提供一个一致的面向对象的编程环境,而无论对象代码是在本地存储和执行,还是在本地执行但在 Internet 上分布,或者是在远程执行的。提供一个将软件部署和版本控制冲突最小化的代码执行环境。提供一个可提高代码(包括由未知的或不完全受信任的第三方创建的代码)执行安全性的代码执行环境。提供一个可消除脚本环境或解释环境的性能问题的代码执行环境。使开发人员的经验在面对类型大不相同的应用程序(如基于 Windows 的应用程序和基于 Web 的应用程序)时保持
43、一致。按照工业标准生成所有通信,以确保基于 .NET Framework 的代码可与任何其他代码集成。.NET Framework 具有两个主要组件:公共语言运行库和 .NET Framework 类库。公共语言运行库是 .NET Framework 的基础。您可以将公共语言运行库看作一个在执行时管理代码的代理,它提供内存管理、线程管理和远程处理等核心服务,并且还强制实施严格的类型安全以及可提高安全性和可靠性的其他形式的代码准确性。这类似于Java的虚拟机。事实上,代码管理的概念是公共语言运行库的基本原则。以公共语言运行库为目标的代码称为托管代码,而不以公共语言运行库为目标的代码称为非托管代码
44、。.NET Framework 的另一个主要组件是类库,它是一个综合性的面向对象的可重用类型集合,您可以使用它开发多种应用程序,这些应用程序包括传统的命令行或图形用户界面 (GUI) 应用程序,也包括基于 ASP.NET 所提供的最新创新的应用程序(如 Web 窗体和 XML Web services)。2.8 XFire XFire是新一代的Java Web服务引擎,XFire使得在JavaEE应用中发布Web服务变得轻而易举。和其他Web服务引擎相比,XFire的配置非常简单,可以非常容易地和Spring集成,它使得Java开发人员终于可以获得和.Net开发人员一样的开发效率。XFire是
45、codeHaus组织提供的一个开源框架,它构建了POJO和SOA之间的桥梁,主要特性就是支持将POJO通过非常简单的方式发布成Web服务,这种处理方式不仅充分发挥了POJO的作用,简化了Java应用转化为Web服务的步骤和过程,也直接降低了SOA的实现难度,为企业转向SOA架构提供了一种简单可行的方式。XFire目前最新的版本是1.2.2,目前支持的特性主要包括:支持将Web服务绑定到POJO、XMLBeans、JAXB1.1、JAXB2.0和Castor;支持基于HTTP、JMS、XMPP等多种协议访问Web服务;支持多种Web服务业界重要标准如SOAP、WSDL、Web服务寻址(WS-Ad
46、dressing)、Web服务安全(WS-Security)等;支持JSR181,可以通过JDK5配置Web服务;高性能的SOAP实现、服务器端、客户端代码辅助生成;对Spring、Pico、Plexus等项目的支持等。XFire官方网站:http:/xfire.codehaus.org/3 数据通信的底层协议3.1 银行转帐系统数据交换模型基于XML Web服务实现的银行转帐系统能够进行在不同数据库之间进行数据通信是XML Web服务的天性。XML Web 服务最常用的通讯协议是SOAP,简单地说SOAP就是XML+HTTP。XML是一个与平台无关的数据表示语言,HTTP是互联网最常用的协议之一。如同3.1说明了不同数据库之间是如何实现数据交换的。C#语言能够访问操作各种数据库,C#将数据库中的数据对象转换为