天天看點

webservice之通過wsdl檔案生成用戶端

通過前面我們了解的内容,我們來簡單的編寫一個webservice的執行個體

環境:eclipse+jdk1.6

那麼,我們如何用java釋出一個webservice服務呢?

1)用jdk1.6以後的版本釋出;

(2)與Web服務相關的類,都位于Javax.jws.*包中

        @WebService——此注解用在類上指定将此類釋出成一個WebService;

        EndPoint——此類為端點服務類,其中publish()方法用于将一個已經添加了@WebService注解對象綁定到一個位址的端口上,用于釋出。

例子:

1.釋出webservice服務

項目結構(javaproject):

webservice之通過wsdl檔案生成用戶端

HelloSir.java:

webservice之通過wsdl檔案生成用戶端

好了上面的代碼基本上就編寫完成了,原諒我直接放圖檔,因為我在第一次寫這個例子的時候中間出現過幾次錯誤,我怕不标清楚會打噴嚏

點選運作後,我們就可以檢視我們生成的wsdl檔案了

webservice之通過wsdl檔案生成用戶端

好了,生成的wsdl檔案,如果有看不懂的,可以根據前面的内容來對照着看一下!這樣有便于記憶和了解!

既然服務已經釋出了,wsdl檔案也有了,我們就根據wsdl檔案來生成用戶端來調用一下我們釋出的服務

我們根據jdk自帶的wsimport指令來生成用戶端的代碼

wsimport.exe指令參數熟知:

    -d:生成class檔案。預設參數。

    -s:生成Java檔案

    -p:自定義包結構

webservice之通過wsdl檔案生成用戶端

用這個指令後生成的代碼如下:

webservice之通過wsdl檔案生成用戶端

将他們黏貼複制到我們先建的工程下(javaproject)下:

webservice之通過wsdl檔案生成用戶端

然後編寫我們的調用代碼MyClient:

package www.yq.com;
/** 
 * @Project     WebServiceClient 
 * @File        MyClient.java 
 * @Package     www.yq.com 
 * @Date        2016年1月14日 上午11:02:14 
 * @Author      
 * @email       
 */
public class MyClient {
	public static void main(String[] args) {
		HelloSirService hss = new HelloSirService();
		HelloSir hs = hss.getHelloSirPort();
		String result = hs.sayHello("大波");
		System.out.println(result);
	}

}                

這完了以後基本就大功告成了,當然你在用用戶端調用釋出的服務時,服務不能停止,如果停止會報連接配接錯誤!

當然jdk編譯的代碼也會出現錯了,你根據代碼提示删除就好,不影響運作!

最後我們來看一下運作結果:

webservice之通過wsdl檔案生成用戶端

總結:

當然在工作中我們不是這麼簡單的編寫,我覺得還應該去看一下普遍是怎麼用的,怎麼寫的!

版權聲明:本文為CSDN部落客「weixin_33713503」的原創文章,遵循CC 4.0 BY-SA版權協定,轉載請附上原文出處連結及本聲明。

原文連結:https://blog.csdn.net/weixin_33713503/article/details/92333594