大家好,又见面了,我是你们的朋友全栈君。
WebService就是Web服务的意思,对应的应用层协议为SOAP(相当于HTTP协议),可理解为远程调用技术。
特点:
客户端发送的请求主体内容(请求报文)的格式为XML格式
接口返回的响应主体内容(响应报文)的格式为XML格式
就是WebService接口对应的WSDL文件,该文件通过xml格式说明如何调用,可以看作WebService的接口文档(使用说明书)。比如:
Soap就是通信协议,该协议是基于XML的数据结构和超文本传输协议(HTTP)的。
这里的Java程序实际上就是一个WebService客户端而已。
下载地址为:http://ws.webxml.com.cn/WebServices/WeatherWS.asmx?wsdl
注意:下载好后,该文件需要更改的。如何修改请参考如下文档:
http://blog.csdn.net/binbinxyz/article/details/8906717
附截图:
jar包真的比较多。可以参考如下文档:
http://sxlkk.iteye.com/blog/1944831
附截图:
这里的测试代码比较简单,没有调JUnit框架的验证方法和hamcrest框架的匹配方法。
代码如下:
package day02;
import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;
import org.junit.Test;
import cn.com.webxml.ArrayOfString;
import cn.com.webxml.WeatherWSSoap;
public class WeatherTest2 {
@Test
publicvoid test(){
//
JaxWsProxyFactoryBean bean = newJaxWsProxyFactoryBean();
//
bean.setAddress("http://ws.webxml.com.cn/WebServices/WeatherWS.asmx?wsdl");
//
bean.setServiceClass(WeatherWSSoap.class);
//
WeatherWSSoap service = (WeatherWSSoap)bean.create();
ArrayOfString s = service.getWeather("上海", "918139fc750c4dc58932179efc8d378b");
//
System.out.println(s.getString());
}
}
附截图:
此处省略N个字。
附截图:
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/160430.html原文链接:https://javaforall.cn