1.創建接口和實現類? (模擬實現查詢天氣)
?
接口:
package com.learning.weather;/*** * weather 接口 :實現模擬wsdl*/ public interface WeatherInterface {/*** 查詢天氣* @param name* @return*/public String queryWeather(String name); }
?
實現類:
package com.learning.weather;import javax.jws.WebService;@WebService public class WeatherInterfaceImpl implements WeatherInterface {@Overridepublic String queryWeather(String name) {System.out.println("查詢天氣"+ name);return "nihao ";} }
?
main方法測試,開啟服務:
package com.learning.weather;import javax.xml.ws.Endpoint;public class TestMain {public static void main(String[] args) {String address="Http://127.0.0.1:1234/weather";Object implementor=new WeatherInterfaceImpl();Endpoint.publish(address, implementor);}}
?
訪問 Http://127.0.0.1:1234/weather,點擊wsdl
?
出現以下頁面
?
?在src目錄下 執行wsimport命令? :? wsimport -p com.learning.client -s? .? http://127.0.0.1:1234/weather?wsdl
src下刷新出現新的包com.learning.client
寫客戶端程序
package com.learning.client;public class TestMain {public static void main(String[] args) {//1.創建服務視圖WeatherInterfaceImplService weatherInterfaceImplService =new WeatherInterfaceImplService();//2.得到實現類WeatherInterfaceImpl weatherInterfaceImpl = weatherInterfaceImplService.getPort(WeatherInterfaceImpl.class);//發送數據String weather = weatherInterfaceImpl.queryWeather("湖北");System.out.println(weather);} }
運行測試即可
?