Java調(diào)用WebService接口作測試
1.選擇一個WebService接口作測試
假設(shè) WebService url 為 http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx(查詢手機(jī)歸屬地)
通過網(wǎng)頁看到接口有兩個,也可看到參數(shù)以及返回值

該接口來源于 http://www.webxml.com.cn/zh_cn/web_services.aspx (WebService接口大全)

選擇該手機(jī)號查詢歸屬地,是由于簡單,其他接口都復(fù)雜一點,老是出現(xiàn)解析組件 's:schema' 時出錯,需要練習(xí)的朋友可自行百度,好像是替換一下字符串就行。
2.解析WSDL為Java類
cd到 java安裝路徑中的bin下,目的是為了使用wsimport.exe

使用命令解析(一定要加上?WSDL)
wsimport -p com.webservice -keep -verbose http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx?WSDL
-keep:是否生成java源文件
-d:指定.class文件的輸出目錄
-s:指定.java文件的輸出目錄
-p:定義生成類的包名,不定義的話有默認(rèn)包名
-verbose:在控制臺顯示輸出信息
-b:指定jaxws/jaxb綁定文件或額外的schemas
-extension:使用擴(kuò)展來支持SOAP1.2
解析后會在指定的位置(com.webservice)生成一堆java和class文件
2.拷貝java文件到項目

3.像調(diào)用Java類一樣調(diào)用即可
個人理解new的對象為標(biāo)有接口的類似同名類
package com.test;
import com.webservice.ArrayOfString;
import com.webservice.MobileCodeWS;
import com.webservice.MobileCodeWSSoap;
public class Test {
public Test() {
// TODO Auto-generated constructor stub
}
public static void main(String[] args) {
// TODO Auto-generated method stub
MobileCodeWS mobileCodeWS = new MobileCodeWS();
MobileCodeWSSoap mobileCodeWSSoap = mobileCodeWS.getMobileCodeWSSoap();
ArrayOfString arrayOfString = mobileCodeWSSoap.getDatabaseInfo();
System.out.println(arrayOfString);
String string = mobileCodeWSSoap.getMobileCodeInfo("151XXXXXXXX", "");
System.out.println(string);
}
}

運(yùn)行

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
mybatis使用雙層<foreach>循環(huán)嵌套方式
在Mybatis中使用雙層循環(huán)嵌套插入數(shù)據(jù)可以有效減少數(shù)據(jù)庫IO操作,提高性能,通過在mapper.xml中定義雙層集合來實現(xiàn),外層集合為實體類中的集合字段,內(nèi)層集合為集合字段中的另一個集合,通過這種方式,可以在業(yè)務(wù)代碼中減少循環(huán)插入的次數(shù)2024-09-09
Java實現(xiàn)大文件的分片上傳與下載(springboot+vue3)
這篇文章主要為大家詳細(xì)介紹了java基于springboot+vue3如何大文件的分片上傳與下載,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2023-06-06
詳解Java并發(fā)編程基礎(chǔ)之volatile
volatile作為Java多線程中輕量級的同步措施,保證了多線程環(huán)境中“共享變量”的可見性。這里的可見性簡單而言可以理解為當(dāng)一個線程修改了一個共享變量的時候,另外的線程能夠讀到這個修改的值。本文將詳解介紹Java并發(fā)編程基礎(chǔ)之volatile2021-06-06

