WebService入門實例教程


什么是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入門實例就完成了。

 

結束語:菩提本無樹,明鏡亦非台。本來無一物,何處惹塵埃!

 

可愛博主:AlanLee

博客地址:http://www.cnblogs.com/AlanLee

本文出自博客園,歡迎大家加入博客園。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM