一、什么是Web服务

Web服务是一种可以用来解决跨网络应用集成问题的开发模式,目的是保证不同平台的应用服务可以互操作

二、Web服务的三个核心

Soap:

SOAP(Simple Object Access Protocol,简单对象访问协议)是一个基于xml的协议,用于在分步的应用程序都可以识别。另外,SOAP本身没有定义任何程序语言,这使得SOAP能够以消息的形式传递到各种远程系统中。

SOAP所使用的传输协议,可以是HTTP,SMTP,POP3,JMS。

SOAP包括了4部分:

01.“SOAP封装(Envelope)”:

定义一个描述信息描述的内容是什么,是谁发送的,谁应当处理他,以及如何处理他们的框架。

02.“SOAP编码规则”:

用于表示应用程序需要使用的数据类型的实例。

03.“SOAP RPC":

表示远程过程中调用和应答的协定。

04.“SOPA绑定”:

使用底层协议交换信息。

WSDL:

WSDL(Web Service Description Language,web服务描述语言)是一个XML文档,他以一种和具体语言无关的抽象方式定义了给定web服务收发者的有关操作和消息。

UDDI:

UDDI(Universal Description Discovery and Integration,统一描述发现和集成协议)是一个规范,定义了与web服务相关的信息的发布,发现和管理。

三、JAX-WS

JSX—WS(Java API for XML Web Service)。他是用来简化使用java构造web服务和web服务客户端的工作的技术。


四、Web服务在项目中的使用

1.获取电话号码归属地查询

首先访问:

http://www.webxml.com.cn/zh_cn/web_services.aspx

①新建一个MyEclipse项目(WebService)

http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx?wsdl

上面就可以查询到手机号归属地,下面我就带你进入编程环境中,如何获取到手机号码归属地

首先:上面的路径不能丢,有用滴,你先看看你的C盘根目录下有没有一个cn文件夹,若是有,你把它给删了,接着不用我告诉你怎么出现下图的吧,

package cn.com.test;

import cn.com.webxml.MobileCodeWS;
import cn.com.webxml.MobileCodeWSSoap;
//http://www.webxml.com.cn/zh_cn/web_services.aspx
//http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx?wsdl
public class MyTest {
public static void main(String[] args) {
MobileCodeWS ws=new MobileCodeWS();
MobileCodeWSSoap soap=ws.getMobileCodeWSSoap();
String address=soap.getMobileCodeInfo("1352269","");
System.out.println(address);
} }

测试类

上面第一个案例已经写完了,接着我们创建一个属于自己的webserver.把上面的C盘下的cn文件给删了,我们要写一个自己的,所以cn文件我们自己生成,,及其使用。

另外在建两个项目一个是服务类,一个是客户端,(这样规避了一个问题,要是写在同一项目中,程序只能运行一次,便会报错,)

 package cn.happy.service;

 import javax.jws.WebService;
import javax.xml.ws.Endpoint; //局域网 任何人 访问access
@WebService
public class HelloService {
public void say(String name){
System.out.println("Hello"+name); }
//这是服务端:
public static void main(String [] arg){
Endpoint.publish("http://localhost:50000/hello", new HelloService());
System.out.println("server is listening.....");
} }

Helloservice类

粘贴上面的java文件,创建另个项目。如图所示:

输出helloWXK ,说明创建成功了。要是运行第二次报错,把客服端给停了,在开启就行了,解决办法:小电脑旁边有一个倒小三角,点击切换停止服务,在部署一下服务,报错就解决了

 package cn.happy.test;

 import cn.happy.service.HelloService;
import cn.happy.service.HelloServiceService; public class WSTest { /**
* @param args
*/
public static void main(String[] args) {
HelloServiceService service=new HelloServiceService();
HelloService port=service.getHelloServicePort();
port.say("WXK"); } }

WSTest

注意,cn文件中生产的java文件,你开始用的localhost,就用localhost,用的IP就是ip,不要混用,不然报错。

②:查询地区的天气情况;

第一步省略,选择如上图一的2500多个城市天气预报 WEB服务  (本案例是查询北京的天气情况)

温馨提示:每天查询天气的次数有限。

再回到MyEclipse中.(刚刚备用的路径该起到作用了哦)

关于天气获取,项目由于今天用完次数,下次公布。本文自己总结,如有不当之处,望指出,谢谢

webService获取电话号归属地和获取天气情况步骤,及创建属于自己的webservice的更多相关文章

  1. 调用手机在线API获取手机号码归属地信息

    手机在线(www.showji.com)始创于2001年,发展至今已拥有国内最准确.号段容量最大的手机号码归属地数据库系统, 目前号段容量将近33万条,每月保持两次以上规模数据更新,合作伙伴包括:百度 ...

  2. Python(phone)模块获取手机号归属地、区号、运营商等

    Python(phone)模块获取手机号归属地.区号.运营商等 一.我使用的是python3,可以自行搜索下载 二.安装phone模块, pip install phone 三.测试代码如下: fro ...

  3. python3.4学习笔记(二十三) Python调用淘宝IP库获取IP归属地返回省市运营商实例代码

    python3.4学习笔记(二十三) Python调用淘宝IP库获取IP归属地返回省市运营商实例代码 淘宝IP地址库 http://ip.taobao.com/目前提供的服务包括:1. 根据用户提供的 ...

  4. 根据银行卡号码获取银行卡归属行以及logo图标

    根据银行卡号码获取银行卡归属地信息接口地址,get请求 https://ccdcapi.alipay.com/validateAndCacheCardInfo.json?_input_charset= ...

  5. python 使用API调用和风天气获取天气情况并保存

    第一步.注册注册免费API和阅读技术文档: 注册地址:https://console.heweather.com 注册完成后,激活登录后,新建应用 .新建key KEY名称 密钥ID 密钥 类型下载城 ...

  6. python获取当前天气情况

    利用 Python 从互联网公开服务中获取天气预报信息.天气信息来源网站:http://www.webxml.com.cn/WebServices/WeatherWebService.asmx实现以下 ...

  7. 使用java获取手机号归属地等信息httpClient实现

    java获取手机号归属地 一般想获取手机号归属地等信息个人是无法获取的,但是可以通过调用第三方接口获取,具体百度搜索很多这里例子提供一个淘宝的接口 ,该功能已经发布到网站作为一个在线小工具,拿走不谢: ...

  8. 百度地图api根据定位获取附近商家(只获取屏幕内)

    根据中心点坐标计算出屏幕2个点(一个最低经纬度,一个最高经纬度),判断这两个点中间的所有坐标的商家..考虑屏幕分辨率之类 移动地图中心点变动,如何异步刷新,判断商家是否已经存在..等... 百度地图a ...

  9. jquery获取高度错误(可以获取到宽度,但获取不到高度),及解决办法

    <div class="foo"> <div style="display: none;"> 3333333 </div> ...

随机推荐

  1. easyui弹出层在最顶层显示跳出iframe框架通用javascript代码

    有时候我们用easyui在后台框架中弹框的时候,总是显示在框架页面里面而不是整个系统框架的上面,看着有些不太乐意. dialog = function (opts) { var query = par ...

  2. div层调整zindex属性无效原因分析及解决方法

    在做的过程中,发现了一个很简单却又很多人应该碰到的问题,设置Z-INDEX属性无效.在CSS中,只能通过代码改变层级,这个属性就是z- index,要让z-index起作用有个小小前提,就是元素的po ...

  3. express实现前后端通信上传图片,存储数据库(mysql)傻瓜教程(三)完结篇

    终于完成了所有自己想要的功能(鼓励下自己),虽然还是很简陋,但是还是挺有满足感的,哈哈. 附上前两篇的链接: 第一篇 第二篇 进入正题,在第二篇里面已经完成了连接数据库,并且实现了对数据库的增删改查, ...

  4. 实现UITextView的placeholder

    我们知道在iOS开发时,控件UITextField有个placeholder属性,UITextField和UITextView使用方法基本类似,有两个小区别:1.UITextField单行输入,而UI ...

  5. 玩转大麦盒子airplay

    长城宽待送了大麦盒子,一直没怎么用,既然是安卓的系统,那估计可以安装很多的软件吧,今天演练了一下. 大麦盒子 规格和介绍 http://baike.so.com/doc/7487612.html 有G ...

  6. React Native常用组件Image使用

    前言 学习本系列内容需要具备一定 HTML 开发基础,没有基础的朋友可以先转至 HTML快速入门(一) 学习 本人接触 React Native 时间并不是特别长,所以对其中的内容和性质了解可能会有所 ...

  7. Android自定义控件5--轮播图广告ViewPager基本实现

    本文地址:http://www.cnblogs.com/wuyudong/p/5918021.html,转载请注明源地址. 本文开始实现轮播图广告系列,这篇文章首先实现让图片滑动起来(ViewPage ...

  8. iOS-钥匙串中证书全部失效(证书的签发者无效)的解决办法

    今天用Xcode打包IPA文件给同事,结果提示import时,提示证书missing,找了半天没发现问题,后来打开钥匙串,发现证书全失效了!!!根证书失效了!吓死宝宝了 解决方法 首选此方法: 1.打 ...

  9. CSS3-01 简介

    概述 HTML 文档由包含 HTML 标签的 HTML 元素组成,HTML 标签被用于定义文档的内容.HTML 文档内容没有额外的样式,以纯文本流的方式渲染到浏览器页面.需要借助层叠样式表(CSS)来 ...

  10. this的作用--转载

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...