一、WebService是什么
WebService是一种跨语言跨平台的远程调用技术。所谓跨语言跨平台就是说服务端采用java编写,客户端程序则可以采用其他编程语言编写,反之亦然。跨平台则是指windows客户端可以调用Linux服务端,反之亦然。
二、相关技术
1、XML:可扩展编译语言,可以用来传递数据时soap的基础
2、soap:简单对象访问协议,WebService通过HTTP协议发送请求和接收结果时,发送的请求内容和结果内容都采用XML格式封装,并增加了一些特定的HTTP消息头和XML内容格式就是SOAP协议。它是WebService的通讯协议。
SOAP协议=HTTP协议 + XML数据格式
3、WSDL:WSDL文件是一个XML文档,用于说明一组SOAP消息以及如何交换这些消息。大多数情况下由软件自动生成和使用。WSDL文件保存在Web服务器上,通过一个url地址就可以访问到它,客户端要调用一个WEBService服务之前,要知道该服务的WSDL文件的地址。
WebService可以通过两种方式来暴露它的WSDL文件地址:
①注册到UUDI服务器,以便被人查找。②直接告诉客户端调用方。
4、Web服务体系结构:基于Web服务提供者、Web服务请求者、Web服务中介者。
三、发布WebService服务
JDK1.6中JAX-WS规范定义了如何发布一个WebService服务。与Web服务相关的类,都在java.jws.*包中。
@WebService,此注解用来某个类发布成一个WebService。
1、编写WebService的实体类
import javax.xml.bind.annotation.XmlRootElement;
import java.io.Serializable;
/**
* WebService规范JAX-Ws
*
* 该类为Web Service中的参数、返回值类型,故需要使用jaxb注解告诉cxf如何
* 在xml和Object之间处理
* 因为,SOAP消息包装的是一段XML代码,无论是服务端,还是客户端
* 在接收到SOAP消息