webService基础入门

 

  1. webService入门

Web service是一个平台独立的,低耦合的,自包含的、基于可编程的web的应用程序,可使用开放的XML标准通用标记语言下的一个子集)标准描述、发布、发现、协调和配置这些应用程序,用于开发分布式的互操作应用程序[1] 

 

 

Webservice跨平台跨语言;

Java 客户端 -----》 .net服务端

http://www.webxml.com.cn/zh_cn/index.aspx :提供功能服务

 

  1. 找到服务的wsdl地址
  2. 通过jdk提供命令wsimport命令生成java调用代码

  1. 将生成代码(删除.class文件)拷贝到本地项目中,测试代码:

  1. soap协议:简单对象访问协议

规范wbeservice请求,响应数据格式:都是xml格式

 

Request:

POST /WebServices/MobileCodeWS.asmx HTTP/1.1

Host: ws.webxml.com.cn

Content-Type: text/xml; charset=utf-8

Content-Length: length

SOAPAction: "http://WebXml.com.cn/getMobileCodeInfo"

 

<?xml version="1.0" encoding="utf-8"?>

<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">

<soap:Body>

<getMobileCodeInfo xmlns="http://WebXml.com.cn/">

<mobileCode>string</mobileCode>

<userID>string</userID>

</getMobileCodeInfo>

</soap:Body>

</soap:Envelope>

Response:

 

HTTP/1.1 200 OK

Content-Type: text/xml; charset=utf-8

Content-Length: length

 

<?xml version="1.0" encoding="utf-8"?>

<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">

<soap:Body>

<getMobileCodeInfoResponse xmlns="http://WebXml.com.cn/">

<getMobileCodeInfoResult>string</getMobileCodeInfoResult>

</getMobileCodeInfoResponse>

</soap:Body>

</soap:Envelope>

SOAP 1.2

  1. wsdl webservice描述语言

俗称"web服务使用说明书"

 

网络服务描述/定义语言:每一个webservice服务都有自己wsdl

wsdl是标准xml文件,wsdl(xml文件)包含服务名称,服务中包含方法名方法参数(参数类型),方法返回类型

 

通过jdk提供命令wsimport,解析wsdl(本质就是xml文件),生成客户端java调用代码(生成代码方法名称,方法参数,方法返回类型)。

 

WSDL地址:服务地址+?WSDL

  1. wsimport命令

 

 

  1. WebService入门基于jdk1.7发布服务(了解)

    1. 基于jdk基于1.7调用网络上服务

http://www.webxml.com.cn/zh_cn/index.aspx :提供功能服务

 

  1. 找到服务的wsdl地址

 

  1. 通过jdk提供命令wsimport命令生成java调用代码

  1. 将生成代码拷贝到本地,测试代码:

  1. wsimpot命令

  1. soap简单对象访问协议

规范wbeservice请求数据,响应数据格式:xml -- 跨语言调用

 

Request:

POST /WebServices/MobileCodeWS.asmx HTTP/1.1

Host: ws.webxml.com.cn

Content-Type: text/xml; charset=utf-8

Content-Length: length

SOAPAction: "http://WebXml.com.cn/getMobileCodeInfo"

 

<?xml version="1.0" encoding="utf-8"?>

<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">

<soap:Body>

<getMobileCodeInfo xmlns="http://WebXml.com.cn/">

<mobileCode>string</mobileCode>

<userID>string</userID>

</getMobileCodeInfo>

</soap:Body>

</soap:Envelope>

Response:

 

HTTP/1.1 200 OK

Content-Type: text/xml; charset=utf-8

Content-Length: length

 

<?xml version="1.0" encoding="utf-8"?>

<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">

<soap:Body>

<getMobileCodeInfoResponse xmlns="http://WebXml.com.cn/">

<getMobileCodeInfoResult>string</getMobileCodeInfoResult>

</getMobileCodeInfoResponse>

</soap:Body>

</soap:Envelope>

SOAP 1.2

  1. wsdl

webservice 描述语言。

俗称:web服务使用说明书

 

网络服务描述语言:每一个webservice服务都有自己wsdl

Wsdl是标准xml文件,包含服务名称,包含方法,方法参数,方法返回类型

 

通过命令wsimport,解析wsdl,生成java调用代码。

 

  1. jdk1.7服务端发布webservice服务(了解)

  1. 创建类,创建若干方法
  2. 在类上使用注解@WebService

  1. 发布服务

  1. wsdl地址: 服务地址+?wsdl

  1. 客户端调用

    1. wsimport生成java调用代码

获取服务的wsdl地址: 服务地址+?wsdl

 

wsimport – d <生成class文件目录> -s<生成java文件目录> -p <生成代码包路径> wsdl地址

 

解析wsdl(xml),生成本地代码

 

  1. 通过命令解析wsdl生成代码

  1. 将生成的java文件拷贝项目中
  2. 测试代码

posted @ 2018-03-18 09:11  两行仨bug  阅读(521)  评论(0编辑  收藏  举报