您的位置:首页 > 其它

WebService入门实例教程

2017-11-07 10:01 197 查看
什么是WebService

通过使用WebService,您的应用程序可以向全世界发布信息,或提供某项功能,它是基于Web的服务,通过Web进行发布、查找和使用。

WebService脚本平台需支持XML+HTTP。

HTTP协议是最常用的因特网协议。

XML提供了一种可用于不同的平台和编程语言之间的语言。

为什么要使用WebService

最重要的事情是协同工作。

1.跨平台调用(WebService不局限于操作系统,你可以在Windows上调用linux上的WebService服务,反之亦然,其他系统同理);

2.跨语言调用(WebService不局限于编程语言,你可以在Java语言中调用C#语言提供的WebService服务,反之亦然,其他语言同理);

3.可远程调用(通过使用WebService,您的应用程序可以向全世界发布信息,或提供某项功能,只要有Internet)。

使用JDK开发WebService

一.WebService服务端开发

1.创建服务端项目,项目可以是Java Web项目,也可以是普通的Java项目,例如:



2.在源代码目录src下面的包中新建一个java类用来提供WebService服务,我这里创建了一个Function类,通过javax.jws.WebService注解提供服务,通过javax.xml.ws.Endpoint类的publish方法来发布服务并提供发布的地址以及发布的服务类,代码如下:



1 package com.jspweb.ws;
2
3 import javax.jws.WebService;
4 import javax.xml.ws.Endpoint;
5
6 /**
7  * WebService服务端案例
8  * @author AlanLee
9  * @version 2017/06/02
10  * 使用@WebService注解标注实现类
11  */
12 @WebService
13 public class Function {
14     public String transWords(String words){
15         String res = "";
16         for(char ch : words.toCharArray()){
17             res += ch+",";
18         }
19         return res;
20     }
21
22     public static void main(String[] args) {
23         // 使用Endpoint(终端)类发布webservice
24         Endpoint.publish("http://localhost:8089/service/function", new Function());
25         System.out.println("Publish Success");
26     }
27 }




3.启动main方法运行这个类,打印出结果Publish Success,表示服务发布成功:



4.打开浏览器,访问我们发布的地址,大家可以看到这样的效果:



5.点击WSDL后面的连接地址便可以打开WSDL配置,访问结果如下:



WSDL 是基于 XML 的用于描述 Web Services 以及如何访问 Web Services 的语言。

二、WebService客户端开发

1.创建客户端项目,项目可以是Java Web项目,也可以是普通的Java项目,例如:



2.使用eclipse工具生成客户端代码,跟着图一步步操作:

①选中项目点击鼠标右键new>Other…:



②在Wizards框中输入web,选择Web Service Client,点击next按钮:



③输入WSDL服务描述文件的访问地址,点击next:



④点击Finish按钮,eclipse会自动帮我们在src目录下生成WebService客户端所需的代码:



⑤:生成的代码如下:



2.编写客户端测试类代码,我在同级目录下面写了一个测试类,并运行它的main方法,得到结果如下:



这样一个简单的WebService入门实例就完成了。

结束语:菩提本无树,明镜亦非台。本来无一物,何处惹尘埃!

源博客地址:http://www.cnblogs.com/AlanLee/archive/2017/06/02/6933073.html

本文出自博客园,欢迎大家加入博客园。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: