原文地址:爱军的博客——WebService简介

一、为什么需要Web Service

笔记:

WebService 可以实现 跨(硬件、服务器、开发工具、平台、应用程序、程序语言……)共享数据和应用,多么强大!

当你困扰于以下难题,WebService可以完美解决!

  • 有没有一种办法可以实现跨应用程序和跨平台进行通信呢?
  • 换句话说,就是有什么办法可以实现应用程序 A 可以和应用程序 B 进行通信呢?
  • 换句话说,如何实现用不同的程序语言和不同厂商的软件开发工具开发的软件,那些已开发和部署的软件,能够实现分布式计算的目的?
  • 或者说是,用 Java 写的应用程序和用 . Net 开发的应用程序之间进行通信呢?
  • 或者说是,Windows Server 2008 服务器如何和UNIX 或者是 Linux 服务器进行连接呢?

WebServices 特点优势?

  • 可以通过 Web 服务来公开一些接口给其他人(程序)使用。
  • 可以将多个 WebServices 组合成为更为强大的 WebServices使用。

二、Web Service 体系结构

在 Web 服务的体系结构中,涉及到三个角色,一个是 Web 服务提供者,一个是 Web 服务中介者,还有一个就是 Web 服务请求者,同时还涉及到三类动作,即发布,查找,绑定

  • Web 服务提供者:可以发布 Web 服务,并且对使用自身服务的请求进行响应,Web 服务的拥有者,它会等待其他的服务或者是应用程序访问自己。
  • Web 服务请求者:也就是 Web 服务功能的使用者,它通过服务注册中心也就是 Web 服务中介者查找到所需要的服务,再利用 SOAP 消息向 Web 服务提供者发送请求以获得服务。
  • Web 服务中介者:也称为服务代理,用来注册已经发布的 Web 服务提供者,并对其进行分类,同时提供搜索服务,简单来说的话,Web 服务中介者的作用就是把一个 Web 服务请求者和合适的 Web 服务提供者联系在一起, 充当一个管理者的角色,一般是通过 UDDI 来实现。
  • 发布:通过发布操作,可以使 Web 服务提供者向 Web 服务中介者注册自己的功能以及访问的接口。
  • 发现(查找):使得 Web 服务请求者可以通过 Web 服务中介者来查找到特点的种类的 Web 服务。
  • 绑定:这里就是实现让服务请求者能够使用服务提供者提供的服务了。

WebServices 三种基本元素之 SOAPWSDLUDDI

笔记:

SOAP

SOAP 其指导理念是“唯一一个没有发明任何新技术的技术”,通过 XML 来实现消息描述,然后再通过 HTTP 实现消息传输。

WSDL

Web服务描述语言,描述了 Web 服务的三个基本属性:

(1)服务所提供的操作

(2)如何访问服务

(3)服务位于何处(通过 URL 来确定就 OK 了)

UDDI

是一种目录服务,企业可以通过 UDDI 来注册和搜索 Web 服务。存放的是关于 Web 服务的信息。

UDDI 通过 SOAP 进行通讯。

三、开发 Web Service

(1)开发阶段:

实现一个 Web 服务,使这个 Web 服务能响应和接收 SOAP 消息,

(这个呢,其实可以通过 Visual Studio 来帮助实现),

定义好逻辑模块(这个 Web 服务总要干点事情吧),

然后再撰写 WSDL 文件(这个呢,开发工具会自动生成的,不需要人工撰写了)

(2)部署阶段:

指定 Web 服务的传输协议,将 Web 服务注册到相应服务描述部署文件(这些也是可以由工具来自动完成的)

(3)发布阶段:

将 Web 服务的接口和调用的地址公开给客户端调用,

常用的发布方式为基于 Web 提供的 WSDL 的链接,当然 UDDI 也是一个选择。

学习 WebService 第一步:体系结构、三元素SOAP/WSDL/UDDI的更多相关文章

  1. 学习Java第一步:安装Intellij IDEA和JDK

    注:其实真正学习一门新语言的第一步并不是安装开发工具,我是C#转JAVA,有一点编程经验了,所以可以直接跳过前面几步,直接上IDE. 1.下载IntelliJ IDEA [官网] http://www ...

  2. webservice SOAP WSDL UDDI简介

    WebServices简介 先给出一个概念 SOA ,即Service Oriented Architecture ,中文一般理解为面向服务的架构, 既然说是一种架构的话,所以一般认为 SOA 是包含 ...

  3. WebService三大基本元素 SOAP WSDL UDDI

    转自:https://blog.csdn.net/hhooong/article/details/51763128 1.SOAP 即 Simple Object AccessProtocol 也就是简 ...

  4. html5学习之第一步:认识标签,了解布局

    图1. Acme United的网页的规划 Header区的例子包含了页面标题和副标题,< header>标签被用来创建页面的Header区的内容.除了网页本身之外,< header ...

  5. 学习opengl第一步

    有两个地址一个是学习opengl基础知识的网站, 一个是博客园大牛分享的特别好的文章. 记录一下希望向坚持做俯卧撑一样坚持下去. 学习网站:http://learnopengl-cn.readthed ...

  6. Spring 开发第一步(三)Spring与JDBC

    <spring in action 3rd>中的前面4章讲解的是Spring的核心,也就是DI/IOC和AOP .从第5章开始是Spring在企业开发中的各个方面的应用.其实作为笔者从事的 ...

  7. WebService SOAP WSDL UDDI 使用php的curl、PHP5的SoapClient实现同步

    一.基本名词 WebService: WebService是一种跨编程语言和跨操作系统平台的远程调用技术.不同系统,不同语言的数据交换方法都是不同的,这就导致在不同系统,不同语言之间传递数据很麻烦,基 ...

  8. Qt 学习第一步 做计划和确定目标

    接下来開始一步步深入学习Qt. 学习的第一步是整理资料,也就是找书和sample. 逛了一些论坛,推荐以下3本书 1> C++ GUI programming with Qt 4(2nd Edi ...

  9. Vue踩坑第一步,安装Vue最新版本

    学习vue第一步肯定是安装vue-cli,那么肯定想去搜下如何安装vue-cli呢? 网上搜到的结果大都是: npm i vue-cli -g 输入vue -V发现: 输入node -v发现: 自己明 ...

随机推荐

  1. idea存留

    1.导师匿名评价系统 类似看准网 2.在线降重软件 基于翻译api,或者后期写算法 在线查重导流 公众号: e搜罗

  2. 使用EventLog组件向本机现有日志中添加条目

    实现效果: 知识运用: EventLog组件的MachineName属性 //获取或设置在其上读取或写入事件的计算机名称 public string MachineName  {get;set; } ...

  3. 爬虫3_python2

    # coding=utf-8 import urllib params=urllib.urlencode({'t':1,'eggs':2,'bacon':0})#现在大多数网站都是动态网页,需要你动态 ...

  4. (转发)InputAccessoryView的使用方法

    转自:http://blog.sina.com.cn/s/blog_45e2b66c01015we9.html UITextFields and UITextViews have an inputAc ...

  5. 忘记root密码怎么办-单用户模式修改root密码

    忘记root密码怎么办-单用户模式修改root密码================================= 1,开机3秒内按下向下的方向键,目的是为了不让它进入系统,而是停留在开机界面. 2 ...

  6. php读取不到https的域名

    因测试环境php遇到无法正常读取到https的域名,但是域名配置了ssl证书,故做如下排查. php测试代码如下 $config['base_url'] = ''; #开启调试模式 #echo &qu ...

  7. GoF23种设计模式之结构型模式之外观模式

    一.概述         为子系统中的一组接口提供一个一致的界面,外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用. 二.适用性 1.当你要为一个复杂子系统提供一个简单接口的时候.子系统 ...

  8. Tomcat上传文件报错:returned a response status of 403 Forbidden

    出现这样的错误是没有权限对服务器进行写操作.需要在这个项目所在的tomcat中配置可写操作即可: 在tomcat的web.xml添加下面代码: <init-param><param- ...

  9. 第十四届华中科技大学程序设计竞赛决赛同步赛 Beautiful Land

    It’s universally acknowledged that there’re innumerable trees in the campus of HUST.Now HUST got a b ...

  10. selenium2元素定位Xpath和cssSelector

    Selenium2中元素有以下几种定位方法, 常用的有Id,xpath, cssSelector XPATH介绍: XPATH是一种选择器 XPATH在firefox中用firepath验证 XP ...