初步WebService学习

  • 概念

          什么是web服务的?从字面上理解就是基于网络的服务。它使用的Web(HTTP)方式,接收和响应外部系统的某种请求。从而实现远程调用  WebService的的英文的一种跨编程语言跨状语从句:操作系统平台个人文库的远程调用技术 

解释

1. 使用的Web(HTTP)方式,是指对HTTP的一些协议和网络服务平台的元素。如  SOAP(简易对象访问协议),UDDI(通用描述,发现和整合),WSDL(网络服务描述语言)之后会一一介绍。

2.  跨编程语言和跨操作平台,就是说服务端程序采用的的java的编写,客户端程序则可以采用其他编程语言编写

3.远程调用技术,就是一台计算机一个上的一个程序可以调用到另一个台计算机b上的一个对象的方法,譬如,银联提供给商场的POS刷卡系统,商场的POS机转账调用的转账方法的代码其实是跑在银行服务器上。还有天气预报,股票信息等等。

概念总结:

      从表面上看,WebService的的的就是一个应用程序向外界暴露出一个能通过网络进行调用的API,也就是说能用编程的方法通过网络来调用这个应用程序。从深层次看,网络服务的是建立可互操作的分布式应用程序的新平台,是一个平台,是一套标准,它定义了应用程序如何在网络上实现互操作性,只要我们可以通过网络服务标准对这些服务进行查询和访问。 





  • WebService的的平台技术
  1. XML + XSD
  2. 肥皂
  3. WSDL
PS:那之前所说的UDDI又是啥呢后文慢慢道来?

>>>>> XML + XSD:

       WebService采用HTTP协议传输数据,采用XML格式封装数据,即XML服务对象的参数是什么,除了易于建立和易于分析外,XML主要的优点在于它既是平台无关的,又是厂商无关的。
      XML解决了数据表示的问题,但它没有定义一套标准的数据类型,更没有说怎么去扩展这套数据类型。例如,整形数到底代表什么?16位,32位,64位?这些细节对实现互操作性很重要.XML Schema(XSD)就是专门解决这个问题的一套标准。它定义了一套标准的数据类型,并给出了一种语言来扩展这套数据类型.WebService平台就是用XSD来作为其数据类型系统的。当你用某种语言(如VB.NET或C#)来构造一个网络服务时,为了符合的WebService的标准,所有你使用的数据类型都必须被转换为XSD类型。用的工具可能已经自动帮你完成了这个转换,但你很可能会根据你的需要修改一下转换过程

解释:

 1.什么是XML?
            XML指可扩展标记语言Ë X tensible中号arkup  大号anguage), XML被设计用来传输和存储数据,通过此种标记,计算机之间可以处理包含各种信息的文章等 XML被设计用来传输和存储数据,HTML被设计用来显示数据。
   2.什么是XML Schema(XSD)?
    XSD使用描述一组规则──一个XML文件必须遵守这些规则,才能根据该模式的合法(有效),相当于是XML文件必须遵守的一个语法与结构规则。
附:


此图来源于w3school的XML教程____(此为一个XML的文件示意图)


   eclipce中新建的一个XML Schema文件



>>>>> SOAP

      web服务的通过HTTP协议发送请求和接收结果时,发送的请求内容和结果内容都采用XML格式封装,并增加了一些特定的HTTP消息头,以说明HTTP消息的内容格式,这些特定的HTTP消息头和XML内容格式就是SOAP协议.soap扩展扩展提供了标准的RPS方法来调用Web服务。

   SOAP协议= HTTP协议+ XML数据格式

      SOAP协议定义了SOAP消息的格式,SOAP协议是基于HTTP协议的,SOAP也是基于XML和XSD的,XML是SOAP的数据编码方式。打个比喻:HTTP就是普通公路,XML就是中间的绿色隔离带和两边的防护栏,SOAP就是普通公路经过加隔离带和防护栏改造过的高速公路

维基百科:

     SOAP 简单对象访问协议,简单对象访问协议)是交换数据的一种协议规范,使用计算机网络的Web服务(Web服务)中,交换带结构信息.soap扩展为了简化网页服务器(网络服务器)从XML 数据库中提取数据时,节省去格式化页面时间,以及不同应用程序之间按照HTTP 通信协议,遵从XML 格式执行资料互换,使其抽象于语言实现,平台和硬件。


>>>>> WSDL:

        好比我们去商店买东西,首先要知道商店里有什么东西可买,然后再来购买,商家的做法就是张贴广告海报  .WebService也一样,WebService的的客户端要调用一个web服务的服务,首先要有知道这个服务的地址在哪,以及这个服务里有什么方法可以调用,所以,WebService的的的务器端首先要通过一个WSDL文件来说明自己家里有啥服务可以对外调用,服务是什么(服务中有哪些方法,方法接受的参数是什么,返回值是什么),服务的网络地址用哪个URL地址表示,服务通过什么方式来调用。  

      WSDL(Web Services Description Language)就是这样一个基于XML的语言,用于描述Web Service及其函数,参数和返回值。它是WebService客户端和服务器端都能理解的标准格式。因为是基于XML的,所以WSDL既是机器可读的,又是人可读的,这将是一个很大的好处。最新一些开发的工具既能根据你的网络服务生成的WSDL文档,又能导入WSDL文档,生成调用相应的的WebService的代理类代码。

      WSDL文件保存在网络服务器上,通过一个URL地址就可以访问到它。客户端要调用一个WebService的的的服务之前,要知道该服务的WSDL文件的地址。


>>>>> UDDI

      UDDI 是统一描述,发现和集成(通用描述,发现和集成)的缩写。它是一个基于XML 的跨平台的描述规范,使可以内世界范围企业的在互联网上发布自己所提供的服务。



本文章基于维基百科与WebService工作学习心得”文章(https://blog.csdn.net/xgc0215/article/details/52182641)


猜你喜欢

转载自blog.csdn.net/domslavy/article/details/80355632