webservice

WebService实现天气预报

泪湿孤枕 提交于 2019-12-07 17:20:41
WebXml.com.cn 天气预报 Web 服务,数据来源于中国气象局 http://www.cma.gov.cn/ ,数据每2.5小时左右自动更新一次,准确可靠。包括 340 多个中国主要城市和 60 多个国外主要城市三日内的天气预报数据。 服务地址 http://www.webxml.com.cn/WebServices/WeatherWebService.asmx getSupportCity 查询本天气预报Web Services支持的国内外城市或地区信息 输入参数:byProvinceName = 指定的洲或国内的省份,若为ALL或空则表示返回全部城市;返回数据:一个一维字符串数组 String(),结构为:城市名称(城市代码)。 getSupportDataSet 获得本天气预报Web Services支持的洲、国内外省份和城市信息 输入参数:无;返回:DataSet 。DataSet.Tables(0) 为支持的洲和国内省份数据,DataSet.Tables(1) 为支持的国内外城市或地区数据。DataSet.Tables(0).Rows(i).Item("ID") 主键对应 DataSet.Tables(1).Rows(i).Item("ZoneID") 外键。 Tables(0):ID = ID主键,Zone = 支持的洲、省份;Tables(1):ID 主键

用xfire调用.net的webservice

北战南征 提交于 2019-12-07 12:52:46
我用的是maven,需要添加以下内容 <dependency> <groupId>org.apache.cxf</groupId> <artifactId>cxf-rt-wsdl</artifactId> <version>3.1.6</version> </dependency> <dependency> <groupId>org.codehaus.xfire</groupId> <artifactId>xfire-core</artifactId> <version>1.2.6</version> </dependency> <dependency> <groupId>org.apache.ws.xmlschema</groupId> <artifactId>xmlschema-core</artifactId> <version>2.2.1</version> </dependency> <dependency> <groupId>org.codehaus.xfire</groupId> <artifactId>xfire-aegis</artifactId> <version>1.2.6</version> </dependency> 直接上代码 import org.apache.axis.client.Call; import org.apache.axis

了解restful webservice概念

。_饼干妹妹 提交于 2019-12-07 10:09:24
了解REST REST 描述了一个架构样式的互联系统(如 Web 应用程序)。REST 约束条件作为一个整体应用时,将生成一个简单、可扩展、有效、安全、可靠的架构。由于它简便、轻量级以及通过 HTTP 直接传输数据的特性,Restful WebService成为基于 SOAP 服务(可能会遇到性能问题)的一个最有前途的替代方案。用于 web 服务和动态 Web 应用程序的多层架构可以实现可重用性、简单性、可扩展性和组件可响应性的清晰分离。Ajax 和 Restful WebService本质上是互为补充的。开发人员可以轻松使用 Ajax 和 RESTful Web 服务一起创建丰富的界面。 目前主流 Web 2.0 服务提供者(包括 Yahoo、Google 和 Facebook)都对 REST 的采用,放弃基于 SOAP 和 WSDL 的接口。 Rest Webservice遵循四个基本设计原则: 显式地使用 HTTP 方法。 无状态。 公开目录结构式的 URI。 传输 XML、JavaScript Object Notation (JSON),或同时传输这两者。 通过基于 REST 的 API 公开系统资源是一种灵活的方法,可以为不同种类的应用程序提供以标准方式格式化的数据。 可以帮助满足集成需求,并帮助将基于 REST 的基本服务集扩展或构建为更大的集合。 欢迎转载!

使用axis1.4发布WebService简单示例

余生颓废 提交于 2019-12-06 19:45:38
一、安装axis1.4项目 1-下载axis-bin-1_4.zip并解压到E:\tools\axis-1_4 2-复制E:\tools\axis-1_4\webapps\axis目录到tomcat的webapps目录中 3-启动tomcat后在浏览器中输入 http://127.0.0.1:8080/axis 后看到如下图信息则说明安装成功 二、发布WebService 1-编写如下java代码 package songjy.com.cn; public class HelloAxis { public String hello(String name){ return "您好," + name; } } 将编译后的class文件复制到axis\WEB-INF\classes目录中 2-在axis\WEB-INF编写deploy.wsdd文件,如下: <deployment xmlns="http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java"> <service name="Hello" provider="java:RPC"> <parameter name="className" value="songjy.com.cn.HelloAxis" /

restful webservice SOAP webservice

删除回忆录丶 提交于 2019-12-06 18:12:22
为了说明这个问题,必须的纠正一下我们对HTTP的 认识 。 首先回顾一下OSI七层模型 OSI(Open System Interconnection,开放系统互连)七层模型 7 应用层 6 表示层 5 会话层 4 传输层 3 网络层 2 数据链路层 1 物理层 HTTP并不是一种传输层的“传输协议”(第四层),而是一种应用层的“转移协议”(最高层)。 SOAP类型的WebService就是最好的例子,SOAP消息完全就是将Http协议作为消息承载, 以至于对于Http协议中的各种参数(例如编码,错误码等)都置之不顾。 其实,它有着非常丰富的语义,Http协议所抽象的get,post,put,delete就好比数据库中最基本的增删改查,而互联网上的各种资源就好比数据库中的记录。 restful webservice Rest(Representional state transfer) WEB的在世界范围类的普及和成功,人们从技术角度对它的总结,既--分布式架构,注意强调的是架构风格-architectural style. 是一种全新的Web开发思维方式, 一种基于Http协议来资源操作的思想,是基于URI来设计系统的架构。 那么它的特点主要由以下五点 1.面向资源(resource) 2.每个资源都对应唯一的URI uniform resource identifier 3

浅谈WebService的调用

时间秒杀一切 提交于 2019-12-06 13:47:10
0.前言 前段时间,公司和电信有个合作,产品对接电信的某个平台,使用了 WebService 接口的调用,实现了业务受理以及单点登录。终于使用到了 WebService , 楼主 还是比较兴奋的,目前功能已经上线,下面进行使用总结。 WebService涉及到内容还是比较多的,涉及到发布和调用,有不少知识点,本文只是最简单的调用。 1.WebService简介 WebService是基于soap协议(简单对象访问协议全写为Simple Object Access Protocol)的,所有的webService请求、应答都是建立在soap协议的基础上的,而soap传输数据的载体是xml。 WSDL (Web Services Description Language)是WebService的描述语言,它定义了Web Service做什么,怎么做和查询的信息。在验证一个WebService是否好用的时候,我们通常会选则在浏览器中输入对应的 WSDL 地址(比如 天气预报 )。如果显示出一个xml文件,这是好用的,反之就是不可用的。 可以这样理解,通过 WebService,我们可以把我们的程序发布成wsdl接口。在其它平台,通过 WSDL 生成当前平台可调用的代理类,通过调用生成的接口和方法,实现应用之间的相互调用。 参考: WebService使用的一些总结 2

利用Apache AXIS 1 发布WebService

自闭症网瘾萝莉.ら 提交于 2019-12-06 03:15:29
最近在论坛遇到很多朋友问AXIS发布webService的问题,这个问题已经回答了很多次了,现在特别发布一文章,说明 AXIS 1 的基本用法。 //很庆幸,CSDN的发文编辑器已经改版本,不那么难编辑了。 首先,AXIS 是apache的作品。 1.到apache去下载相关的包,包括axis.jar、axis-ant.jar、commons-discovery-0.2.jar等。将jar包放到WEB-INF/lib下面 2.在WEB.XML中按如下配置,直接copy进去就可以 [html] view plain copy < servlet > < servlet-name > AxisServlet </ servlet-name > < servlet-class > org.apache.axis.transport.http.AxisServlet </ servlet-class > </ servlet > < servlet > < servlet-name > AdminServlet </ servlet-name > < servlet-class > org.apache.axis.transport.http.AdminServlet </ servlet-class > < load-on-startup > 100 </ load-on-startup

使用idea和wsdl生成java代码

核能气质少年 提交于 2019-12-05 19:32:30
创建一个简单的java helloworld项目 选择next: 选择java helloworld project next 填写project name finish 2. 创建好项目后 选择项目 右键->webservice->Generate 生成代码配置,填写wsdl路径,包路径,webservice平台(这里我选择的是jax-ws jdk自带的webservice实现方式,不用再下载jar包) 这里我使用的wsdl,是一个天气预报的webservice: http://www.webservicex.com/globalweather.asmx?WSDL 选择finish 等待片刻就可看见生成的代码了: 3. 测试代码 在Main Class中填写如下代码 import weather.GlobalWeather; import weather.GlobalWeatherSoap; public class Main { public static void main(String[] args) { GlobalWeather service = new GlobalWeather(); GlobalWeatherSoap port = service.getGlobalWeatherSoap(); String body = port.getWeather(

RMI、Hessian、Burlap、Httpinvoker、WebService的比较

╄→гoц情女王★ 提交于 2019-12-05 08:23:52
一、综述 本文比较了RMI、Hessian、Burlap、Httpinvoker、WebService5这种通讯协议的在不同的数据结构和不同数据量时的传输性能。 RMI是java语言本身提供的远程通讯协议,稳定高效,是EJB的基础。但它只能用于JAVA程序之间的通讯。 Hessian和Burlap是caucho公司提供的开源协议,基于HTTP传输,服务端不用开防火墙端口。协议的规范公开,可以用于任意语言。 Httpinvoker是SpringFramework提供的远程通讯协议,只能用于JAVA程序间的通讯,且服务端和客户端必须使用SpringFramework。 Web service是连接异构系统或异构语言的首选协议,它使用SOAP形式通讯,可以用于任何语言,目前的许多开发工具对其的支持也很好。 测试结果显示,几种协议的通讯效率依次为: RMI > Httpinvoker >= Hessian >> Burlap>> web service RMI不愧是JAVA的首选远程调用协议,非常高效稳定,特别是在大数据量的情况下,与其他通讯协议的差距尤为明显。 HttpInvoker使用java的序列化技术传输对象,与RMI在本质上是一致的。从效率上看,两者也相差无几,HttpInvoker与RMI的传输时间基本持平。 Hessian在传输少量对象时,比RMI还要快速高效

使用JDK自带的WebService

∥☆過路亽.° 提交于 2019-12-04 21:59:36
WebService是个好东西,话不多说,干净利落 服务器端 来看下服务器端的结构: 先定义一个接口,用于暴露: package com.abc.webservice; /** * 对外暴露的接口。 */ public interface IWebService { public String hello(String who); } 再定义这个接口的实现类: package com.abc.webservice.impl; import javax.jws.WebService; import com.abc.webservice.IWebService; /** * wsdl:portType: MyService * wsdl:service: MyWebService */ @WebService(name="MyService", serviceName="MyWebService", targetNamespace="http://www.abc.com") public class WebServiceImpl implements IWebService { @Override public String hello(String who) { return "Hello " + who + "!"; } } 注意这里的name,它表示 The name of