1. 定义:webService是一个远程调用技术 远程:相对于本地,不是当前应用服务的。调用:数据交互。
1.1. 业务需求的问题
1.自己想要,但没有
2.自己有数据,别人想要
1.4 我们的需求
1.5 可以通过接口的技术来获取数据。
接口的概念:
我们需要什么样的呢?
2. 第一个Webservice应用
2.1. 业务需求
我们在本地编写客户端,来调用网络上现成的服务端的ws,获取手机号归属地的信息。
我们用:http://www.webxml.com.cn/
好 让我们来做个例子
2.2. 编写客户端调用远程的手机号归属地信息
创建一个java工程
ws_day1_firstclient
2,。根据Webservice的wsdl地址生成客户端代码
wsdl就是个xml,我们看不懂,让程序看,让程序生成java代码就可以了。
打开cmd窗口,输入命令:
会自动生成java文件,将class删掉。
如果生成的代码提示错误:
原因:jdk的原因。
jdk6和jdk7对ws的客户端的代码支持的不太一样。
解决方案:
1)如果工程一定要用1。6,则需要手动修改生成的代码,将方法的参数删掉一个:
2)就将工程的jdk版本变成1。7
3.编写客户端调用程序
客户端代码:
运行结果:
3. Webservice概述
W3C组织对其的定义如下,它是一个软件系统,为了支持跨网络的机器间相互操作交互而设计。Web Service服务通常被定义为一组模块化的API,它们可以通过网络进行调用,来执行远程系统的请求服务。 |
简单的说:WebService即Web服务,它是一种跨编程语言和跨操作系统平台的远程调用技术。
l Web服务:基于HTTP和XML的技术,HTTP是互联网上应用最为广泛的一种网络协议,而XML是跨平台的基础。
l 跨编程语言和跨操作平台:就是说服务端程序采用java编写,客户端程序则可以采用其他编程语言编写,反之亦然!跨操作系统平台则是指服务端程序和客户端程序可以在不同的操作系统上运行。
l 远程调用:就是一台计算机a上的一个程序可以调用到另外一台计算机b上的一个对象的方法,譬如,银联提供给商场的pos刷卡系统,商场的POS机转账调用的转账方法的代码其实是跑在银行服务器上。再比如,amazon,天气预报系统,淘宝网,校内网,百度等把自己的系统服务以webservice服务的形式暴露出来,让第三方网站和程序可以调用这些服务功能,这样扩展了自己系统的市场占有率
WebService的三要素是:
l SOAP (Simple Object Access Protocol):简易对象访问协议,soap用来描述传递信息的格式。
l WSDL (WebServices Description Language):Web服务描述语言,用来描述如何访问具体的接口。
l UDDI (Universal Description Discovery and Integration):通用描述、发现及整合,用来管理、分发、查询webService。
4. Jax-WS的快速入门