看了网上好多关于webservice的例子,基本上对初学者来讲都是模棱两可云里雾里,如今,我将网上关于webservice的讲解提炼出来,经过一个最简单使用而且方便的例子,告诉你们什么是webservice。html
简单来讲,webservice就是远程调用技术,也叫XML Web Service WebService是一种能够接收从Internet或者Intranet上的其它系统中传递过来的请求,轻量级的独立的通信技术。是:经过SOAP在Web上提供的软件服务,使用WSDL文件进行说明,并经过UDDI进行注册。
XML:(Extensible Markup Language)扩展型可标记语言。面向短时间的临时数据处理、面向万维网络,是Soap的基础。
Soap:(Simple Object Access Protocol)简单对象存取协议。是XML Web Service 的通讯协议。当用户经过UDDI找到你的WSDL描述文档后,他经过能够SOAP调用你创建的Web服务中的一个或多个操做。SOAP是XML文档形式的调用方法的规范,它能够支持不一样的底层接口,像HTTP(S)或者SMTP。
WSDL:(Web Services Description Language) WSDL 文件是一个 XML 文档,用于说明一组 SOAP 消息以及如何交换这些消息。大多数状况下由软件自动生成和使用。 web
如何发布一个webservice:浏览器
1. 建立一个web项目服务器
为了简单明了,我一共建立了三个类,一个接口,一个接口实现类,一个发布类(main方法)。具体以下:网络
这是WebService接口,其中定义了一个sayHello(String name)的方法eclipse
记住必定要在类上加上@WebService注解post
@WebMethod注解声明了这个方法是要发布出去的方法测试
这个类是WebService接口的实现类,写明了sayHello(String name)方法的方法体。spa
最后咱们在服务器端运行WebServicePublish类中的main方法 ”控制台打印出发布webservice成功!“在浏览器中输入咱们在WebServicePublish类中定义的address?wsdl(注意必定要加wsdl),浏览器显示以下,那么咱们这个WebService就发布成功了。3d
下面,咱们来看一下客户端怎么调用(这也是版本最多最杂的一步,大多数人前面都很明白,可是到了这里就直接懵逼了)
首先咱们先建立一个client11客户端的项目,而后咱们经过Win+R组合键调出cmd,在cmd中输入wsimport -s 咱们这个项目的src路径 -keep 咱们发布的webservice地址 例如:
而后去eclipse中刷新咱们的项目,就会发现系统自动帮咱们生成了许多类。
固然WSclient是我在系统生成以后本身写的一个客户端的测试类
咱们就来重点看一下这个测试类是怎么写的:
运行事后控制台输出以下:
能够看到’hahahaha‘是服务器中写的,因此到此咱们这个简单又实用的webservice服务器客户端就算完成了。