是什么?

是一种远程调用技术,这种技术提供一些接口,这些接口实现让客户端和服务端进行通信和数据交换,并且让通信和交换与平台和开发语言无关。也可以说是提供了许多函数。客户端调用服务端的函数。

远程调用:客户端通过SOAP协议,传送函数参数数据,向服务端请求调用一个函数,函数在服务器端执行,返回一个结果,结果再通过协议传送到客户端,完成 一次远程调用。

跨语言:服务端提供的函数是C++编写,客户端使用的语言是Java,怎么有点像DLL呢?

使用的标准:

WSDL:Web Service Description Language Web服务描述语言,基本于XML的语言。描述函数的参数和返回值等函数信息的语言。客户端调用请求时,调用服务器哪个函数呢?传递的参数是什么呢?这些信息就是用XML语言格式来描述的。

WSDL文件:是服务器端提供服务使用的,这个文件是以XML格式写的,内容翻译成人能理解的语言就是,服务器端提供了哪些函数,这些函数在哪个服务中,这个服务又是在哪个IP,这些函数怎么调用,函数有哪些参数,函数的返回值。   文件保存在服务器上,通过URL能访问它。服务器把WSDL文件地址告诉客户端,在UDDI(服务注册中心)上注册就OK。

UDDI:提供了一种方法,这种方法能够让服务消费者得到服务提供者提供的接口使用说明。

SOAP: = Http + XML;基于HTTP协议。这个协议的作用就是  封装数据(XML)+发送数据(HTTP);

工作原理:

客户端请求调用服务端函数,以XML格式封装,通过HTTP发送到服务端,服务端得到数据后分析XML格式的数据,分析数据并知道调用哪个类的哪个方法,执行方法,把执行函数得到的结果再以XML格式封装,再以HTTP发送到客户端。总体来说,通过SOAP发送数据。

技术使用双方:服务提供者和服务消费者。服务提供者编写函数与类(也就是编写服务),让消费者调用;消费者调用函数和类。

搭建技术支持需要的工具:

Tomcat:前端与HTTP及网络挂钩,得到其他机器发来的的数据,把数据发送到服务容器(也就是处理数据的程序AXIS等)。

AXIS:把从Tomcat得到的数据处理一下,处理过程是,找配置文件并根据配置文件和数据来得到要调用哪个类的哪个函数,并执行函数,得到返回值,再把返回值传给Tomcat,传给Tomcat前数据要封装为SOAP消息。

在VS2010中创建Web Service并使用:

1、创建Web Service

2、发布Web Service服务

3、客户端使用Web Service提供的类,及其函数

第一步:创建Web Service

VS2010中新建空的asp.net网站,在“解决方案资源管理器---项目”上右键添加新项:

添加Web服务:

在asmx文件中编写类和方法,作为提供的服务内容。

第二步:布置服务,就像布置IIS站点一样

第三步:客户端使用Web Service,以asp.net网站为例,也可以由WinForm应用程序来引用服务

新建一个Web网站,在解决方案资源管理器----项目上右键添加服务引用:

如果如下:

客户端应用程序中出现代码:并且会在应用程序目录下生成文件夹和文件。

在应用程序的代码中引用空间、使用类用其中的方法

添加命名空间:using ServiceReference1; 这个命名空间是在引用Web服务时自己命名的。

使用类:WebServiceSoapClient wssc = new WebServiceSoapClient();不管服务器端提供的是什么类名,客户端总是用这个类WebServiceSoapClient ,难道是代理?一个中介的东西?用对象wssc来调用WebService提供的各种方法。

web service 学习的更多相关文章

  1. Web Service学习笔记:动态调用WebService

    原文:Web Service学习笔记:动态调用WebService 多数时候我们通过 "添加 Web 引用..." 创建客户端代理类的方式调用WebService,但在某些情况下我 ...

  2. Web Service学习笔记(webservice、soap、wsdl、jws详细分析)

    Web Service概述 Web Service的定义 W3C组织对其的定义如下,它是一个软件系统,为了支持跨网络的机器间相互操作交互而设计.Web Service服务通常被定义为一组模块化的API ...

  3. Web Service学习文旦下载

    Web Service的学习暂且告一段落,因为毕竟只是对它作简要了解,至于其原理什么并不打算涉及. 在这里我提供下我之前文档的整理版本: http://kuai.xunlei.com/d/YlzvAG ...

  4. Web Service学习笔记

    Web Service概述 Web Service的定义 W3C组织对其的定义如下,它是一个软件系统,为了支持跨网络的机器间相互操作交互而设计.Web Service服务通常被定义为一组模块化的API ...

  5. Web Service学习笔记(webservice、soap、wsdl、jws详细分析) (转)

    Web Service概述 Web Service的定义 W3C组织对其的定义如下,它是一个软件系统,为了支持跨网络的机器间相互操作交互而设计.Web Service服务通常被定义为一组模块化的API ...

  6. Java Restful Web Service 学习指南

    Restful是一种架构style,目前常说的有restful web service, resultful http.现在热搜榜的微服务,大多数会采用Restful方式. JAX-RS 作为一个Re ...

  7. Web Service学习小结(概念性回忆)-希望你们会喜欢

    Web Service的出现带来了很多系统工程直接相互的调用.无疑让代码的隐藏得到了好的封装. Web  Service 它的主要的组成要素: SOAP:(Simple Object Access P ...

  8. Web Service学习之八:Soap消息详解

    一.区别概念 WSDL是网络服务描述语言,是XML文档:它包含一系列描述某个web service的定义或者说是规则.尤其是定义了传输Sope消息的结构 Soap:简单对象访问协议,是交换数据的一种协 ...

  9. Web Service学习之六:CXF解决无法处理的数据类型

    CXF不能够处理像Map复杂的数据类型,需要单独转换处理. 总体思路:创建一个转换器和一个对应的可以处理的数据结构类型,将不能处理的类型转换成可以处理的类型: 步骤: 一.创建一个可以处理的类型 举例 ...

随机推荐

  1. ASCII 计算机码

      回车 代码:CR ASCII码:\ r ,十六进制,0x0d,回车的作用只是移动光标至该行的起始位置: 换行 代码:LF ASCII码:\ n ,十六进制,0x0a,换行至下一行行首起始位置:

  2. 【java开发】方法重写和方法重载概述

    类的继承   父类-子类 关键字 extends 新建一个父类 public class Person {     private String name;          private int ...

  3. 报表移动端app如何实现页面自适应?

    1. 描述 PC上制作好的报表,在手机端查看的时候,报表软件默认的自适应效果不尽人如意.例如,报表比较大,到手机上被缩的非常小,字都看不清等等.为此FineReport增加了选项可以手动控制报表在移动 ...

  4. BZOJ 2243: [SDOI2011]染色 [树链剖分]

    2243: [SDOI2011]染色 Time Limit: 20 Sec  Memory Limit: 512 MBSubmit: 6651  Solved: 2432[Submit][Status ...

  5. 自动装配[@Autowired]的歧义性

    在使用@Autowired自动装配时,如果一个接口有多个实现类,那么自动装配就会出现错误,因为Spring无法判断到底要装配哪个实现类实例(bean). 1.可以使用@Qualifier(" ...

  6. node基础09:第2个node web服务器

    1.同时输出文字与图片 在前几个小课程中,我会学会了 从服务器中读取文字字符,并且向浏览器中输出 从服务器中读取图片文件,并且向浏览器中输出 这节课中,我学会了同时向浏览器输出文字,图片.对此,我感到 ...

  7. Excel到底最多可以有多少行

    平时我们使用的Excel到底最多可以有多少行? 答案:1048576,如图在红框中输入此数字即可看见.

  8. Zencart视频教程 Zencart模板制作教程视频 Zencart仿站教程资料

    Zen Cart是国外一个免费的.界面友好,开放式源码的购物车软件,是目前外贸行业使用最为广泛的网站程序.本仿站技术需要你有一定的html和css基础,易学易懂,一步一步地教你操作和使用Zen Car ...

  9. css的命名规则

    本文转载自谈笑涧<css的命名规则> 操作系统版本:Windows 7 浏览器版本:IE6,IE7,IE8,Firefox 3.6.2,Safari 4.0.4,Chrome 5.0.35 ...

  10. IE9下css hack写法

    ie9一出css hack也该更新,以前一直没关注,今天在内部参考群mxclion分享了IE9的css hack,拿出来也分享一下: select { background-color:red\0; ...