小天带你了解WebService
一、什么是WebService
基于Web的服务,服务器端整出一些资源让客户端应用访问(获取数据)
一个跨语言(很厉害),跨平台的规范(抽象)
多个跨平台、跨语言的应用见通信整合的方案(实际)
例子:各个门户网站显示天气的时候,其实它们什么也没有做,只是简单的调用了一下气象中心服务器上的代码而已,在自己的数据库上并没有这种类型的数据。 气象中心就是通过(WebService来将数据分享出来的 以xml方式存储的数据) 门户网站用url来获取数据,并用不同的样式(css)来呈现出来而已。
优势:跨平台、跨语言 Linux?Windows?JSP?.net? php? whatever?
远程调用。
二、如何实现?
在需要被调用的服务器上(气象中心)写一个(WebService Server 调用数据的程序),在调用的服务器上(门户网站)写一个(WebService Client 显示数据的程序 客户端代码)代码。
三、什么时候使用webService?
1、同一家公司的新旧应用之间。
2、不同公司的应用之间
例如:天猫和各种物流软件的数据流通。
3、一些提供数据的内容聚合应用:天气预报、股票行情。
四、WebService的几个重要的术语
4.1.WSDL:web service definition language
直译:WebService定义语言
1、对应一种类型的文件.wsdl
2、定义了web service的服务器端与客户端应用交互传递请求和响应数据的格式和方式
3、一个web service对应一个唯一的wsdl文档
4.2. SOAP:simple object access protocal
直译:简单对象访问协议
1、是一种简单的、基于HTTP和XML的协议,用于在WEB上交换结构化的数据
2、soap消息:请求消息和响应消息
3、http+xml片段
4.3.SEI: WebService EndPoint Interface
直译:WebService的终端接口
1、就是WebService服务器端用来处理请求的接口。
4.4.CXF:Celtix + XFire
一个apache的用来webService服务器端和客户端的框架。
五、开发webService
5.1.概述
使用CXF框架开发(工作中)
组成:
服务器端 客户端
开发服务器端:
WebService编码:
@WebService(SEI和SEI的实现类)
@WebMethod(SEI中的所有方法)
发布Web Service:
EndPoint(终端,发布webservice)
开发客户端:
使用eclipse提供的web service浏览器访问
自动生成WebService客户端代码的方法
1、使用JDK1.6中的wsimport.exe产生客户端代码
wsimport -keep 路径
浙公网安备 33010602011771号