4、Web Service-Jaxws(Eclipse版本)实现查看天气和手机归属地
1、前提概要
免费的官网:http://www.webxml.com.cn/zh_cn/web_services.aspx
官网提供了各种免费的webservice
我们使用的是:http://ws.webxml.com.cn/WebServices/WeatherWS.asmx?wsdl
使用上述的网址进行天气的查询
使用http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx?wsdl
作为手机归属地查询的wsdl
2、实现天气的查询代码
1、新建工程

2、访问http://ws.webxml.com.cn/WebServices/WeatherWS.asmx?wsdl将文件进行保存

3、使用命令进行编译

此时会编译出错,因为此时使用的是java端获取.net的web service
具体可参考博文:https://wensiqun.iteye.com/blog/1083340
做出如下的修改:
第一步:将xml文件下载下来
第二步:修改xml文件,将文件中所有出现<s:element ref="s:schema"/><s:any/>的地方全部使用 <s:any minOccurs="2" maxOccurs="2"/>替换掉。
第三步:使用wsimport解析本地文件即可。
修改之后的wsdl文件再次进行编译

4、刷新工程

5、填写测试段的代码
此时的情况是怎么知道调用的类或者说其接口
查看wsdl文件:

Ctrl + shift + t 搜索 WeatherWs(工厂类)

所以起始类:WeatherWS.java
写测试类:
package cn.com.client; import java.util.List; import cn.com.webxml.ArrayOfString;
import cn.com.webxml.WeatherWS;
import cn.com.webxml.WeatherWSSoap; public class client {
public static void main(String[] args) {
WeatherWS weatherWS = new WeatherWS();
//返回的是代理的对象
WeatherWSSoap weatherWSSoap = weatherWS.getWeatherWSSoap(); ArrayOfString weather = weatherWSSoap.getWeather("合肥", null);
List<String> list = weather.getString();
for(String l : list){
System.out.println(l + "...结束啦....");
}
}
}
结果:
安徽 合肥...结束啦....
合肥...结束啦....
...结束啦....
// ::...结束啦....
今日天气实况:气温:℃;风向/风力:东南风 1级;湿度:%...结束啦....
紫外线强度:弱。空气质量:良。...结束啦....
紫外线指数:弱,辐射较弱,涂擦SPF12-、PA+护肤品。
健臻·血糖指数:较易波动,血糖较易波动,注意监测。
穿衣指数:较舒适,建议穿薄外套或牛仔裤等服装。
洗车指数:不宜,有雨,雨水和泥水会弄脏爱车。
空气污染指数:良,气象条件有利于空气污染物扩散。
...结束啦....
3月20日 雷阵雨转多云...结束啦....
℃/℃...结束啦....
西风3-4级转西北风小于3级...结束啦....
.gif...结束啦....
.gif...结束啦....
3月21日 雷阵雨...结束啦....
℃/℃...结束啦....
北风3-4级转东北风小于3级...结束啦....
.gif...结束啦....
.gif...结束啦....
3月22日 多云...结束啦....
℃/℃...结束啦....
东北风小于3级...结束啦....
.gif...结束啦....
.gif...结束啦....
3月23日 多云...结束啦....
℃/℃...结束啦....
东北风转东南风小于3级...结束啦....
.gif...结束啦....
.gif...结束啦....
3月24日 多云...结束啦....
℃/℃...结束啦....
东南风转西南风小于3级...结束啦....
.gif...结束啦....
.gif...结束啦....
3、测试手机归属地的查询测试
1、新建工程

2、新建wsdl文件
将http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx?wsdl文件拷贝

3、使用cmd进行编译

4、刷新工程的目录:

5、测试代码
查找工厂类

Ctrtl +shift + t 搜索MobileCodeWS

测试类:
package com.test;
import cn.com.webxml.MobileCodeWS;
import cn.com.webxml.MobileCodeWSSoap;
public class client { public static void main(String[] args) { MobileCodeWS mobileCodeWS = new MobileCodeWS();
MobileCodeWSSoap mobileCodeWSSoap= mobileCodeWS.getMobileCodeWSSoap();
String area = mobileCodeWSSoap.getMobileCodeInfo("", null);
System.out.println(area);
} }

此时的两个简单的小测试已经结束了!
4、Web Service-Jaxws(Eclipse版本)实现查看天气和手机归属地的更多相关文章
- 3、Web Service-Jaxws(Eclipse版本)
1.概述 开发手段: 使用jdk开发(1.6及以上的版本) 使用CXF框架开发 组成: -服务器端 -客户端 2.使用JDK开发 1).服务器端 -@WebService(SEI和SEI的实现类) - ...
- 初识Web 服务(即Web Service)
一.什么是Web服务 简单来说就是在Internet上提供的这种服务,我们称这种服务为Web服务. 二.Web服务的主要目标? 是支持跨平台的可互操作性. 三.Web服务的优势 四.Web服务提供了一 ...
- vivo web service:亿万级规模web服务引擎架构
本文首发于 vivo互联网技术 微信公众号 链接:https://mp.weixin.qq.com/s/ovOS0l9U5svlUMfZoYFU9Q vivo web service是开发团队围绕奇点 ...
- C#利用Web Service实现短信发送(转)
通过编程方式实现短信息的发送对很多人来说是一件比较烦杂的事情,目前一般的解决方法是通过计算机和手机的连线,通过可对手机编程的语言编写相关的手机短信息程序来实现,而这种方法对于一般人来说是很难达到的,因 ...
- Android笔记之 Web Service 基础
一.Web Service是什么? 就是网络服务.依据W3C的定义,WebServices(Web服务)是一个用于支持网络间不同机器互操作的软件系统,它是一种自包括.自描写叙述和模块化的应用程序,它能 ...
- 使用wsimport和JAX-WS调用Web Service接口
本文简单举例说明如何使用wsimport工具和JAX-WS API调用Web Service接口.此方法的优点:使用JDK自带的工具和API接口,无需依赖第三方库. JDK版本:1.8.0_141开发 ...
- Apache CXF实现Web Service(1)——不借助重量级Web容器和Spring实现一个纯的JAX-WS web service
废话少说,先在Eclipse中新建一个Java Project (可以不是WTP的Dynamic Web Project) 选择Java Project 再看pom.xml 我们使用cxf 3.1.4 ...
- MyEclipse JAX-WS Web Service
在Myeclipse8.5下开发Web service程序,目前系统支持的开发框架有3个,JAX-WS,REST(JAX-RS),XFire.其中系统建议不要使用XFire 的框架,可能是要被淘汰了( ...
- Eclipse+Axis使用WSDL文件生成Web Service服务端/客户端
JDK版本:1.5.0_22 Eclipse版本:Helios Service Release 2(3.6.2) WSDL文件的创建过程见http://blog.csdn.net/a19881029/ ...
随机推荐
- [javaSE] GUI(鼠标事件)
调用Button对象的addMouseListener方法,参数:MouseListener对象,这个类是个接口,需要实现以下方法 mouseClicked mousePressed mouseRel ...
- 解决:springmvc maven 项目搭建完后没有src目录,而且maven导入很慢
前言:在搭建springmvc maven项目中遇到的问题做总结,比如搭建后没有src,同时这里也解决了搭建后maven导入很慢的问题. 问题: 1.发现创建出来的maven项目没有src文件 ,而且 ...
- 线程(Thread)和异常
线程Thread 实现多线程有两种方式: 1.继承Thread类(本质也是实现Runnable接口的一个实例) Thread类源码 public class Thread implements Run ...
- Python Djan 路由对应的名称
路由关系命名 对URL路由关系进行命名,以后可以根据此名称生成自己想要的URL 1. url(r'fdsafdsaeeeee',views.index, name='hello') #给这个url后面 ...
- Sublime Text3之安裝Emmet及使用技巧
首先准备工作: 如果你的Sublime Text3没有Package Control组件先看一下这里,如果以安装请忽略: 1.按Ctrl+`调出sublime text的console 2.粘贴以下代 ...
- Python之面向对象继承复习
总结:self是谁就从谁开始寻找
- WinForm实现Rabbitmq官网6个案例-Publishe/Subscribe
代码: namespace RabbitMQDemo { public partial class PublishSubscribe : Form { private string exchangeN ...
- OSMC Vs. OpenELEC Vs. LibreELEC – Kodi Operating System Comparison
Kodi's two slim-and-trim kid brothers LibreELEC and OpenELEC were once great solutions for getting t ...
- 当EditText编辑时 hint 在 6.0 手机上显示不出来
当EditText编辑时 hint 在 6.0 手机上显示不出来.... 就要增加一句话去重新设置颜色值 Android:textColorHint = "#707070"
- mac ASP.NET5
不写1行代码,在Mac上体验ASP.NET 5的最简单方法 昨天微软发布了ASP.NET 5 beta2(详见ASP.NET 5 Beta2 发布),对ASP.NET 5的好奇心又被激发了. 今天 ...