彻底理解webservice SOAP WSDL

WebServices简介

先给出一个概念 SOA ,即Service Oriented Architecture ,中文一般理解为面向服务的架构,

既然说是一种架构的话,所以一般认为 SOA 是包含了运行环境,编程模型,

架构风格和相关方法论等在内的一整套新的分布式软件系统构造方法和环境,

涵盖服务的整个生命周期。而在 SOA 的架构风格中,服务是最核心的抽象手段。

SOA 中的服务是构建在一些列基于开放标准的基础之上的,

Web 服务定义了如何在异构系统之间实现通信的标准化方法,

从而就使得 Web 服务可以跨越运行平台和实现语言,

同时也使得 Web 服务成为了实现 SOA 中服务的主要技术。

至于SOA 的话,太高深的技术,这里不予讨论(嘿嘿),本篇博文只介绍 WebServices 这项技术。

引子

有没有一种办法可以实现跨应用程序进行通信和跨平台进行通信呢?

换句话说,就是有什么办法可以实现我的应用程序 A 可以和应用程序 B 进行通信呢?

或者说是,我用 Java 写的应用程序和用 . Net 开发的应用程序之间进行通信呢?

很多时候,上面提到的这些,我们是必须要使用的,比如,一个跨应用程序吧,

拿腾讯 QQ 来说吧,我估计每一个人都用过腾讯 QQ 上面的天气预报工具吧 ! ! !

上面的这个天气预报功能是如何实现的呢?

有一种办法,那就是腾讯公司放个卫星上天,并且在公司中成立一个气象部门,天天关注于天气,

然后每时每刻更新腾讯 QQ 上的这个天气预报信息,

确实,这种办法确实行得通,不过,要真这样做的话,估计马化腾也该被踢出去了(哪有这么蠢啊?),

那么上面这个是如何实现的呢?别急,且听我慢慢道来~~~

然后,我们再来看看跨平台这个东东又是什么呢?

这里主要是拿 . Net 平台和Java 平台来说明例子,

假若,有两个公司,每个公司呢都有自己的一个项目,一个公司呢使用 . Net 开发,一个呢,使用 Java 开发,

恩,本来呢,这两个是相互独立的,进水不犯河水,但是有一天,突然,这两个公司给合并了,

合并后的老总发现,如果把两个项目结合起来将会大大的赚一笔,为此,如何做?

因为要把两个项目结合在一起,那么这两个项目之间总应该通通信吧 !!!

可这两个项目又是基于不同的平台,怎么通信呢?麻烦了吧 !!!

而后再看一种情况,就是比如一个公司使用的服务器是 Windows Server 2008,

那么它如何和 IT 供应商的UNIX 或者是 Linux 服务器进行连接呢?也很复杂吧 !!!

WebServices特点介绍

WebServices 提供一个建立分布式应用的平台,使得运行在不同操作系统和不同设备上的软件,或者是用不同的程序语言和不同厂商的软件开发工具开发的软件,所有可能的已开发和部署的软件,能够利用这一平台实现分布式计算的目的。WebServices的思想是:使得应用程序也具有 Web 分布式编程模型的松散耦合性。

WebServices的特点:

(1),WebServices 是自包含的。即在客户端不需要附加任何软件,只要客户机支持 HTTP 和XML 就 OK 了。

(2),WebServices 是自我描述的。在客户端和服务端都不需要知道除了请求和响应消息的格式和内容外的任何事。

(3),WebServices 是跨平台和跨语言的。客户端和服务端均可以在不同的平台和语言环境中实现,同时,不必为了支持 WebServices 而更改现有的代码。

(4),WebServices 是基于开放和标准的。XML 和 HTTP 是WebServices 的主要技术基础,而 XML 和HTTP 早就成了业内标准了。

(5),WebServices 是动态的

(6),WebServices 是可以组合的。也就是通过一个 WebService 访问另外一个 WebService 来达到组合的目的。通过组合 WebServices 便可以将简单的 WebServices 聚合成为实现更多复杂功能的复杂的服务。

(7),WebServices 是松散耦合的。它完全解耦了客户端和服务端。

(8),WebServices 提供编程访问的能力。换句话说,就是可以通过编写程序来访问Web 服务。

(9),WebServices 是基于经过考验的成熟技术上构建的。比如 XML 和 HTTP。

(10),WebServices 提供打包现有应用程序的能力

(11),WebServices 通过网络进行发布,查找和使用

上面这些特点呢,现在不清楚的话,也不用紧,等下还会有详细的说明的 !!!

WebServices到底是什么?

如果简单的说的话,WebServices就是一组函数库,不过这和我们平时概念中的函数库却又有所不同,我们平时所使用的函数库要么是自己写的

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值