axis2客户端调用免费的webservice服务的实例之一通过wsdl生成客户端程序并本地调用

1.Webservice的背景

面向组件

当面向对象的编程方式盛行后,曾一度解决了当时维护、开发中的许多问题,但是实际业务场景的复杂,以及企业间越来越密切的合作,让面向对象的方式变得很有局限性。比如,面向对象的方式无法实现跨语言,跨平台的互用。从而使得同样的东西要用不同的语言来实现,这直接导致了软件复用性的下降,有时候还不得不放弃某中语言的优势来实现功能。

意识到这个问题,有人发现无论什么语言,最终是要交给计算机运行,以机器语言的形式被计算机识别的,因此,可以考虑平台互动的部分,可以做成字节码的包,由于这种包的无关性(都能识别,不依赖特定语法),让跨语言,跨平台调用成为了可能。因为只要按照统一规范开发这种包,那么就能被支持的语言识别。这种包被称为组件,而这种开发方式则是面向组件的开发。

面向服务(soa)

随着网络的发展,面向组件的方式也渐渐不能满足需求。因为一个应用可能需要远程调用另一个,而且二者完全不能有依赖(很可能两个应用来自于不同的公司,有着无法逾越的鸿沟)。比如,某企业的erp系统首页,需要气象局的气象资料以显示天气,之前面向组件的方式完全无法使用。考虑到这种复杂且多变的应用,需要一种统一的并且能被各种系统识别的数据规范,来相互交流数据。这时软件工程研究人员发现,网络资源完全可以看作一个一个的服务,相互之间如果有定义良好的规范,并统一管理服务,那么这种复杂应用会变得异常简单,这就是soa的诞生背景。

Corba

Soa的概念刚提出来时,其实现是corba技术。他的出现,为网络,为企业间的协作方式带来巨大的改变。后来,人们渐渐感觉Corba接口依赖于底层网络协议,复杂且难于使用,于是慢慢被另一种更加简洁,表述规范且易于使用的实现所替代,这就是webservice。直到现在,webservice已经成为了了主流,而很少看到corba接口的身影了。当然,由于corba接近网络底层,在传输效率上比webservice高。

Webservice

作为目前主流的服务实现方式,webservice需要一种语义良好,定义规范且能被各种系统或环境识别的文件格式来描述服务,

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值