`
smallsmile
  • 浏览: 133904 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

webservice总结

 
阅读更多

webservice总结

这几天研究了一下webservice技术,大概在这里总结一下。

一、什么是webservice?

      Web Service是一个平台独立的,松耦合的,自包含的、基于可编程的web的应用程序,可使用开放的XML标准来描述、发布、发现、协调和配置这些应用程序,用于开发分布式的互操作的应用程序。[百度cp的]

      简单来说,WebService就是一个在互联网上基于web提供的开放接口,它通过一系列协议、声明文件向用户描述本WebService提供哪些服务,需要哪些参数、及发送接收的格式等。如:一个天气的Webservice它会告诉用户,它提供了天气查询的服务,需要你提供它的就是城市的名称及时间等信息。

二、WebService几个名词

 1.SOAP

SOAP即简单对象访问协议(Simple Object Access Protocol),它是用于交换XML编码信息的轻量级协议。它有三个主要方面:XML-envelope为描述信息内容和如何处理内容定义了框架,将程序对象编码成为XML对象的规则,执行运程过程调用(RPC)的约定。SOAP可以运行在任何其他传输协议上。例如,你可以使用 SMTP,即因特网电子邮件协议来传递SOAP消息,这可是很有诱惑力的。在传输层之间的头是不同的,但XML有效负载保持相同。
Web Service 希望实现不同的系统之间能够用“软件-软件对话”的方式相互调用,打破了软件应用、网站和各种设备之间的格格不入的状态,实现“基于Web无缝集成”的目标。
2.WSDL[对提供服务的描述就是通过它实现的]
Web Service描述语言WSDL 就是用机器能阅读的方式提供的一个正式描述文档而基于XML的语言,用于描述Web Service及其函数、参数和返回值。因为是基于XML的,所以WSDL既是机器可阅读的,又是人可阅读的。
3UDDI
UDDI 的目的是为电子商务建立标准;UDDI是一套基于Web的、分布式的、为Web Service提供的、信息注册中心的实现标准规范,同时也包含一组使企业能将自身提供的Web Service注册,以使别的企业能够发现的访问协议的实现标准。

三、用Eclipse创建一个webservice客户端

      以创建一个获取天气服务的客户端

      1.创建一个空的java工程

      2.在工程下点击new->others->web service->web service client

      3.输入相应的服务url,如http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl

      4.点下一步,完成将会看到自动生成的类文件

      5.接下来可以像普通的类一样调用上步生成的类的相应方法:

         新建一个Test类

package cn.com.WebXml;

import java.rmi.RemoteException;

public class Test {
   public static void main(String[] args){
	   WeatherWebServiceSoapProxy ws=new WeatherWebServiceSoapProxy();
	   try {
		String[] allcite= ws.getSupportCity("河南");
		for(int i=0;i<allcite.length;i++){
			System.out.println(allcite[i]);
		}
	} catch (RemoteException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}
   }
}

   输出为:

  

写道
郑州 (57083)
开封 (57091)
洛阳 (57073)
平顶山 (57171)
焦作 (53982)
鹤壁 (53990)
新乡 (53986)
安阳 (53898)
濮阳 (54900)
许昌 (57089)
漯河 (57186)
三门峡 (57051)
南阳 (57178)
商丘 (58005)
信阳 (57297)
周口 (57195)
驻马店 (57290)

 

四、在Eclipse+Tomcat环境创建并发布自己的WebService

      1. 下载axis2-1.5.6解压 

      2. 在eclipse->windows->preferences里找到webservice下axis2 将runtime位置设为上一步解压目录。

      3. 重启eclipse 新建动态网站工程webservice。

          在src下新建类FristWeb

 

public class FristWeb {
   public String sayHello(String name){
	   return "hello, "+name;
   }
}

     4.点击FristWeb右键,选择new->others->webservice->web service

 

     5.选择运行环境为tomcat+axis2  点finish即发布完成。此时,工程webcontent下自动生成相应代码。现在访问[url]localhost:8080/webservice/services/FristWeb即可获得本服务,将第三步中url改为localhost:8080/webservice/services/FristWeb即可。

五、将webservice发布到服务器上

      至此,webservice工程相当于一个普通网站了,发布它与发部普通网站一样,将其打成war包,传至服务器tomcat webapps目录下,重启tomcat即可。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics