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/ ...
随机推荐
- golang命令和VSCode配置
Go是一门全新的静态类型开发语言,具有自动垃圾回收.丰富的内置类型.函数多返回值.错误处理.匿名函数.并发编程.反射等特性 golang常用命令: go env #查看go的环境 echo %GORO ...
- 对自写的Asp.Net分页控件的应用方式(异步无刷新分页)
前台代码 <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" co ...
- 在jsp里调用out.flush()和response.flushBuffer()有什么区别
out.flush(); out是PrintWriter的实例 public void flush() Flush the stream. response.flushBuffer(): ...
- HBase入门教程
# 背景 最近看到公司一个项目用到hbase, 之前也一直想看下hbase.个人理解Hbase作为一个nosql数据库,逻辑模型感觉跟关系型数据库有点类似.一个table,有row即行,列.不过列是一 ...
- UVA1584(环状序列)
对于序列的最小值,可以定义一个比较的方法,然后用一般找最小值的方法遍历一遍即可 #include <iostream> #include <string> #include & ...
- Spring入门(三)— AOP注解、jdbc模板、事务
一.AOP注解开发 导入jar包 aop联盟包. aspectJ实现包 . spring-aop-xxx.jar . spring-aspect-xxx.jar 导入约束 aop约束 托管扩展类和被扩 ...
- C# 简单的loading提示控件
自己画一个转圈圈的控件 using System; using System.Collections.Generic; using System.ComponentModel; using Syste ...
- [转]Shared——回调函数是什么
本文内容转自知乎 作者:no.body 链接:https://www.zhihu.com/question/19801131/answer/27459821 回调函数(callback)是什么? 什么 ...
- python安装后无法用cmd命令pip 装包
出现问题: 原因:没有添加环境变量. 解决方法:将python安装目录下的Script目录添加进环境变量,其中有pip.exe,在cmd中输入pip install命令时要运行pip.exe. win ...
- Maven学习总结(一):基本概念
一.Maven的基本概念 Maven(翻译为"专家","内行")是跨平台的项目管理工具.主要服务于基于Java平台的项目构建,依赖管理和项目信息管理. 1.1. ...