WebService的基本介绍
Posted 大西瓜猫
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WebService的基本介绍相关的知识,希望对你有一定的参考价值。
一.WebService的基本介绍
1.WebService是什么?
WebService ---> Web Service web的服务
2.思考问题:
WebService是web的一个服务 那么为什么我们还要学习前面的SpringMVC对外提供接口呢?
WebService实际上是一个提供给外部调用的web服务
3.这一组的web服务到底有什么特点呢?
(1). Web Service技术,能使得运行在不同机器上的不同应用无需借助附加的,第三方软件或硬件,就可以
相互交换数据或者集成。
(2). WebService是跨平台的(任何语言都是可以调用的)
(3). .net编写的WebService 我们的JAVA也是可以调用的
4.WebService是用干什么的?
1>:对外提供WebService服务(比如说我们可以将我们的服务提供给第三方来进行调用)
2>:我们可以使用别人提供的WebService服务
IP地址查询 天气预报 证券信息 手机号归属地查询 中英文翻译....
5.我们在开发中多数都是用别人提供的WEB服务 也有自己提供web服务的时候
网络上提供的免费的WebService服务
http://www.webxml.com.cn/zh_cn/index.aspx
二.WebService的JDK下的开发
要使用JDK来开发我们的WebService服务的话 那么我们的JDK至少在1.6以上 否则是没有办法玩的
第一个HelloWord程序
我们要对外提供web服务,而且在我们测试的时候还需要编写我们的客户端代码
1.服务端
1>:建立一个JAVA工程
2>:编写WEB服务的接口(interface)
3>:该当前的接口添加@WebService注解
4>:申明接口中的方法并指定@WebMethod的注解
5>:编写接口的实现类 并提供@WebService和@WebMethod的注解
6>:发布我们的WebService的服务
思考:服务发布成功之后 ,我怎么知道这个服务是否发布成功呢?
2.测试服务是否发布成功
(1):在我们的Myeclipse上面找到launch soap webservice exployer
2>:在右顶端找到wsdl page
3>:在下面的框输入我们发布的webservice的地址?wsdl 并点击go
4>:找到我们要测试的方法点击
5>:找到add添加调用方法所需要的参数
6>:go---->如果结果和预期是正确的话那么说明我们的WebService服务是可以用的
(2):使用我们的浏览器直接来测试
1>:在我们的浏览器上直接输入我们发布的地址?wsdl
2>:如果在浏览器上出现一大堆的xml文档,那么说明我们的webService发布成功
3.客户端
1>:建立一个JAVA工程
2>:首先打开命令提示符进入控制台,再进入到我们客户端的工程的src目录下
使用cd /d 文件路径
3>:在控制台上输入 wsimport -keep WebService服务的发布路径?wsdl ,就会自动的在src下面 生成webservice的代码
4>:编写测试文件
1>:创建一个测试类Test
找你浏览器一大堆XML文档中的最后一个Service就是你需要创建的对象 直接new
2>:获取实际操作方法的类
通过上面的对象.get...port
3>:调用实际的方法
4.通过WebService获取天气预报并改错
1>:找到免费的天气服务(上面有网址)
2>:在浏览器上输入天气预报的服务地址?wsdl
3>:在本地创建一个WeatherWS.wsdl的文件 将浏览器的内容拷贝进来
4>:改错(http://blog.csdn.net/u011186019/article/details/41622245)
<s:element ref="s:schema" /><s:any /> 替换成 <s:any minOccurs="2" maxOccurs="2"/>
5>:在控制台输入:wsimport -keep 路径(本地的wsdl文件的路径)
6>:创建类
//找到我们要new的这个类
WeatherWS weatherWS = new WeatherWS();
//获取实际操作数据的对象
WeatherWSSoap weatherWSSoap = weatherWS.getWeatherWSSoap();
//调用方法 获取返回值
ArrayOfString weather = weatherWSSoap.getWeather("成都",null);
//获取回来的天气预报是
System.out.println(weather.getString());
以上是关于WebService的基本介绍的主要内容,如果未能解决你的问题,请参考以下文章
FineReport中以jws方式调用WebService数据源方案