您的位置:首页 > 其它

webservice入门(1)

2016-01-10 22:14 225 查看
前段时间学习了webservice的用法,虽然只是一些简单的用法,但是如果久了还是会忘记的,所以将学到了记录下来。

一:schema和http协议。

   1.schema约束:

schema规范中:
1. 所有标签和属性都需要有schema文件来定义
2. 所有的schema文件都需要有一个id, 但在这里它叫namespace,
3. namespace的值由什么来指定?
由targetNamespace属性来指定, 它的值是一个url(很有可能不存在)
4. 如何引入一个Schema约束?
属性? : 用xmlns属性
属性值: 对应的schema文件的id(namespace值)
    eg:xmlns="http://www.w3.org/2001/XMLSchema"
5. 如果引入的schema不是w3c组织定义, 必须指定schema文件的位置
6. schema文件的位置由什么属性来指定?    
属性? : schemaLocation
属性值: namespace path
7. 如果引入了N个约束, 需要给n-1个取别名


  例子:book.xsd

<xml version="1.0" encoding="UTF-8">
<schema xmlns="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.hotusm.com/bookSchema"
elementFormDefault="qualified"
>
<element name="书架">
<complexType>
<sequence maxOccurs="unbounded">
<element name="书">
<complexType>
<sequence>
<element name="书名" type="string"/>
<element name="作者" type="string"/>
<element name="售价" type="string"/>
</sequence>
</complexType>
</element>
</sequence>
</complexType>
</element>
</schema>


book.xml:

<xml version="1.0" encoding="UTF-8">
<书架 xmlns="http://www.hotusm.com/bookSchema"
xmlns:dd="http://www.w3.org/2001/XMLSchema-instance"
dd:schemaLocation="http://www.hotusm.com/bookSchema book.xsd"
>
<书>
<书名>JAVA 开发</书名>
<作者>hotusm</作者>
<售价>20</售价>
</书>
</书架>


  2.http协议:

1. 请求的组成:
   请求行(请求方式 path http1.1)

  请求头

  请求体: 只有post请求有

2. 响应的组成
响应状态行:

  响应头

  响应体 : 浏览器解析显示的数据

二:ws的一些基础知识:

1.webservice相当于HTTP+?+?
? : xml
? : schema
2.wsdl是什么?
webservice定义语言, 对应.wsdl文档, 一个webservice会对应一个唯一的wsdl文档, 定义了客户端与服务端发送请求和响应的数据格式和过程
3.如何发布一个webservice?
定义SEI   @webservice @webMethod
定义SEI的实现
发布:  Endpoint.publish(url, SEIImplObject)
4.如何请求一个webservice?
1.根据wsdl文档生成客户端代码  jdk/cxf
根据生成的代码调用webService


三:webservice中的几个重要术语

  3.1: WSDL:web service definition language

直译 : WebService定义语言

1. 对应一种类型的文件.wsdl
2. 定义了web service的服务器端与客户端应用交互传递请求和响应数据的格式和方式
3. 一个web service对应一个唯一的wsdl文档


  3.2SOAP:simple object access protocal
  

直译: 简单对象访问协议

1.是一种简单的、基于HTTP和XML的协议, 用于在WEB上交换结构化的数据
2.soap消息:请求消息和响应消息
http+xml片断


  3.3SEI:WebService EndPoint Interface(终端)

直译: web service的终端接口,

1. 就是WebService服务器端用来处理请求的接口


  3.4CXF:Celtix + XFire

一个apache的用于开发webservice服务器端和客户端的框架


上面就是最基本的ws的一些术语和使用到的另外一些技术了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: