1、什么是 Web Service
1)基于Web的服务:服务端整出一些资源让客户端(获取数据)
2)一个跨语言、跨平台的规范(抽象)
3)多个跨语言、跨平台的应用间通信整合的方案(实际)
以各个网站显示天气预报功能为例:
气象中心的管理系统将收集天气信息,并将数据暴露出来(通过WebService Server),而各打站点的应用就去调用它们得到天气信息,并以不同的方式去展示(WebService Client).
网站提供了天气预报的服务,但其实它们什么也没做,只是简单的调用了一下气象中心服务器上的一段代码而已。
以天猫商城和中通物流为例:天猫商城调用中通物流显示物流的信息,天猫商场不用再专门写管理物流信息相关的程序,只需要写WebService Client 调用中通物流暴露的WebService Server接口即可得到物流相关的数据。如下图所示。
2、Web Service 中的几个重要的术语
2.1 WSDL:Web Service Definition language (WebService 定义语言)
1)对应一种类型的文件
2)定义了web service 的服务器端与客户端应用交互传递请求和响应数据的格式和方式
3)一个web service对应一个唯一的wsdl文档
2.2 SOAP:Simple Object Access Protocal(简单对象访问协议)
1)是一种简单的、基于HTTP和XML的协议,用于在WEB上交换结构化的数据
2)soap 消息:请求消息和响应消息
3)http+xml片断
2.3 SEI:WebService Endpoint Interface(WebServiec 终端接口)
1)就是WebService 终端用来处理请求的接口
2.4 CXF:Celtix+XFire
一个apache的用户开发webservice服务端和客户端的框架
3、根据服务端发布的接口自动生成服务端代码
a、服务端发布的接口
b、创建客户端工程
打开cmd命令行黑窗口,进入客户端工程所在的项目目录,运行 wsimport -keep http://localhost:8989/day01_ws/hellows?wsdl