webservice 就是一个应用程序,它提供一种通过web 方式访问的api.
解决两个系统或者(应用程序)之间的远程调用.....
调用是跨语言,跨平台...
webservice 最基本的组成部分就是客户端,服务端...
xml (webservice的客户端与服务端进行交互的时候传递的数据格式)
webservice description language(web 服务描述语言.. api,告诉你怎么使用我的web服务)xml,简称wsdl
soap(简单对象访问协议) webservice 的客户端与服务端进行交互的时候走的协议
(soap 分两个版本(soap 1.1 与soap1.2)),现在的版本是soap1.1,因为java jdk 只支持soap1.1版本的协议发布..
***** soap 协议=在http 的基础之上传送xml 格式的数据..
能通过注解对很多属性名称进行修改
webService加载可能比较慢,为了不影响页面的显示,可以采用慢加载模式。。
也就是页面其他数据加载完了再通过ajax去请求数据来加载。。
命令:wsdl2java
wsdl2java 是cxf 框架给我们提供的命令,这个命令的作用与wsimport 类似...
生成的文件夹里面只有java文件,没有多余的class文件
拦截器:
cxf 框架中提供了拦截器的机制,我们可以通过拦截器获取到客户端与服务端进行交互的时候的数据格式
多种调用webService的方式
第一种方式调用:通过wsimport
第二种方式调用:通过java jdk 自带的一个类URLConnect(可以发送一个http 请求,模拟soap协议)
第三种方式调用:通过客户端编程的方式调用 webservice 我们需要通过java jdk 自带的类 Service ,用的少
第四种调用方式:通过ajax 去调用webservice
xmlhttpRequest 对象时浏览器自带的一个对象,可以通过此对象发送一个http 请求,传送xml 格式的数据到服务端(模拟soap 协议...)
第五种调用方式:wsd12java命令来调用(这个命令cxf框架提供的,所以必须配置环境变量)
第六种调用方式:通过spring的配置文件来调用(解析spring的配置文件,同时也需要依赖一个接口)
第七种调用方式:JAXWsPrxoyFactoryBean(这个类是cxf框架提供的类),需要依赖一个接口,他是 ClientProxyFactoryBean的子类
第八种调用方式:通过jquery的方式去调用webservice
第九种调用方式:ClinetProxyFactoryBean(这个类是cxf框架提供的类),需要依赖一个接口
webservice 分析:
通过webservice 的客户端与服务端的几种调用方式,通过tcp ip/monitor 监控webservice 请求的过程
拦截请求的数据,对数据进行分析...
webservice 的客户端与服务端进行交互的时候,
第一种调用:
第一次通过get 请求 wsdl 的服务说明书
第二次通过post 的方式 请求 webservice 服务...
第二种调用:
直接url获取并且已经知道xml格式了,也就是说不通过第一次get来请求wsdl服务说明书,只通过第二次的post方式
第三种调用:
流程和第一种是一样的
理解wsdl 服务的说明书:
wsimport是根据wsdl服务说明文档来生成的
可以改动wsdl说明文档,这样wsimport生成的代码会相应发生改变。改动后要重新发布服务
webService发布方式
通过jdk自带的Endpoint类发布服务
通过cxf不带接口发布服务
通过cxf带接口发布服务
通过spring的配置文件的方式发布webservice