05_天气查询_JAX-WS方式_客户端
【客户端特点】
支持面向对象开发。
客户端功能调用webService,首先得知道WebService的地址。
一般情况下,只要知道了wsdl的地址,就可以知道WebService的地址。
我们上一篇博客设计的服务端的本地天气查询服务的地址:http://127.0.0.1:12345/weather?wsdl
【查看WSDL】
WebService发布成功,通过WSDL查看WebService发布的正确性。
1.在浏览器地址栏输入http://127.0.0.1:12345/weather?wsdl
2.WSDL不是WebService,只是获取一个用于描述WebService的说明文件。
3.wsdl-WebServiceDescriptionLanguage是以XML文件形式来描述WebService的"说明书",有了WSDL这个"说明书",我们才可以知道如何使用或者调用对应的服务。
【阅读WSDL的流程】
1.找到<service> ------> 2.找到<binding> -----> 3.找到portType(即服务端点)
【Wsimport介绍】
wsimport是JDK自带的WebService客户端工具,可以根据wsdl文档生成客户端调用代码(Java代码)。当然,无论服务器端的WebService用什么语言写的,都可以生成调用WebService的客户端代码,服务端通过客户端代码调用WebService服务。
【Wsimport常用参数】
wsimport.exe位于 JAVA_HOME\bin目录下
常用参数:
-d <目录> 将生成 .class 文件
-s <目录> 将生成 .java文件
-p <生成的新包名> 将生成的类放在指定的包下
【通过Wsimport生成客户端注意事项】
1.可以通过 java -version查看自己的JDK版本,要注意jdk1.6.0_13以后的版本支持javaws2.1
2.要提前在eclipse中建立一个空的java工程,用来存放通过Wsimport生成的客户端代码。
3.要通过cmd的目录命令进入该java该工程的src目录。
4.生成完成后,刷新eclipse该工程,src下会出现生成好的客户端代码,只要将这些代码拷入到对应的客户端工程即可使用。
【使用wsimport生成WebService的客户端调用代码】
1.首先新建一个WsimportProject,并查看工程的路径

2.然后进入该工程的src目录下

3.使用“ wsimport -s . http://127.0.0.1:12345/weather?wsdl ” 命令来生成客户端代码(注意 "."的前后有空格)。
注意:运行该命令成功的前提之一是 此时WebService服务是运行中的!!
下图是运行成功的情况

4.刷新Eclipse对应的工程,可以看到生成了对应的客户端调用代码

5.将该代码拷贝至我们的客户端工程中,建好的工程截图如下:

6.客户端的WeatherClient.java代码,其中调用了生成的客户端中的类

【运行结果】
(前提是服务端已经开启!!!)
1.查看客户端

2.查看服务端

【方式二:使用JDK的service类调用WebService】

05_天气查询_JAX-WS方式_客户端的更多相关文章
- 03_天气查询_socket方式模拟_多线程方式
[简述] 要重视Socket开发,企业后台服务特长使用Socket. 1.服务端要有可持续运行能力,保证线程一致在运行 2.并发处理能力,使用多线程 [工程截图] [WeatherRunner.jav ...
- 02_天气查询_socket方式模拟_单线程
[远程请求的B/S模式(客户端/服务器)] TCP: 是一种传输层协议,一种面向连接的协议.经过三次握手客户端和服务器端连接一个连接(通道).提供可靠的数据传输,该协议一般服务质量要求比较高的情况,T ...
- Android解析中国天气接口JSon数据,应用于天气查询!
android解析Json数据是比较常见的一种操作.也是客户端和服务器进行数据交互的桥梁.下面就来看一看在android中解析JSon数据的方法吧. 首先要想获得Json数据,就必须访问相关的网络接口 ...
- 小工具:天气查询 Vs自定义设置 DevGridControl中GridView排序问题 小工具:火车票查询 小工具:邮件发送 小工具:截图&简单图像处理
小工具:天气查询 开发一个天气查询的工具主要由两步构成,一是数据的获取,二是数据的展示. 一.数据获取 数据获取又可以分为使用其它公司提供的API和手动抓取其它网站数据. 1. 某公司提供的AP ...
- 天气查询SDK
简介: 这是一个用于查询天气的SDK,在很多时候,尤其是对接多而小功能公众账号的时候,天气查询比较使用,此SDK就是这样的用途,使用的是中国天气网的API,已经集成了网上最靠谱的方式来实现,包括里面的 ...
- 转载 WebService 的CXF框架 WS方式Spring开发
WebService 的CXF框架 WS方式Spring开发 1.建项目,导包. 1 <project xmlns="http://maven.apache.org/POM/4.0 ...
- 个人永久性免费-Excel催化剂功能第96波-地图数据挖宝之全国天气查询(区域最细可到区县,最长预报4天)
天气预报的信息,是很普通的大家习以为常的信息,但如果不进行采集,在日常数据分析过程中,就少了非常重要的一个分析维度,如果人手采集整理,工作量巨大.此篇给广大数据分析工作者再次减负,只需简单一键,即可批 ...
- 【Postman】举例实战——天气查询
准备工作: 1.下载postman(搜索官网下载即可) 2.接口文档(以聚合上去免费API:天气查询接口) 打开postman: 1.输入url 2.请求方式 3.请求参数 4.在postman中运行 ...
- 用 Python 编写一个天气查询应用
效果预览: 一.获取天气信息 使用python获取天气有两种方式. 1)是通过爬虫的方式获取天气预报网站的HTML页面,然后使用xpath或者bs4解析HTML界面的内容. 2)另一种方式是根据天气预 ...
随机推荐
- Hadoop学习记录(3)|HDFS API 操作|RPC调用
HDFS的API操作 URL方式访问 package hdfs; import java.io.IOException; import java.io.InputStream; import java ...
- HW5.25
public class Solution { public static void main(String[] args) { System.out.println(convertMillis(55 ...
- POJ1873 - Balance(01背包)
题目大意 现有一个天平,它有C个挂钩和G个砝码,问有多少种方法可以使得天平平衡(砝码必须用完) 题解 其实就是让背包容量为0的方法有多少种方法,但是这样的话背包容量会出现负数,所以可以平移一下,背包容 ...
- hdoj 1231 最大连续子序列
最大连续子序列 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Sub ...
- nyoj 168 房间安排(区间覆盖)
房间安排 时间限制:3000 ms | 内存限制:65535 KB 难度:2 描述 2010年上海世界博览会(Expo2010),是第41届世界博览会.于2010年5月1日至10月31日期间, ...
- CSS 选择器及其优先级
CSS 的选择器有很多类型,我们将常用的这些列表如下: 一.CSS 选择器的类别 1. 基本选择器 基本选择器 解释 备注 * 通用选择器,匹配所有元素 CSS2 E 元素选择器,匹配类型为 E 的所 ...
- Centos下安装FTP并进行虚拟用户访问方式配置
1. 安装认证所需包 [root@localhost]#yum install pam* [root@localhost]#yum install db4* 首先安装PAM(用于用户认证)和DB4(用 ...
- centos6.5安装tomcat8.0.15
首先需要在http://tomcat.apache.org/download-80.cgi下载最新安装包 安装tomcat 将apache-tomcat-8.0.15.tar.gz文件上传到/usr/ ...
- ListBox获取行字符串
ListBox获取行字符串 关键点 获取ListBox第1行的字符串 获取ListBox第2行的字符串 获取ListBox第n行的字符串 CListBox::GetText int GetText( ...
- Bluetooth in Android 4.2 and 4.3(三):Enable Bluetooth
以下是基于Android 4.2代码,对Bluetooth BR/EDR Enable process的分析.BluetoothAdapter类代表的是local device Bluetooth a ...