webService簡單開發步驟

  1. ----------------------------服務端---------cxf框架------------------------------------------------java

  2. 導入jar包web

  3. 寫一個webservice接口服務器

    @WebService
    public interface WebService01 {框架

    }url

    3.寫一個實現類 (endpointInterface爲webservice接口的全名--包名+類名spa

                                serviceName="服務名稱".net

    @WebService(endpointInterface="cn.gdpe.webservice.WebService01",
       serviceName="test01")
    public class WebServiceImpl implements WebService01 {代理

    }對象

    4.向外界暴漏這個服務繼承

public class PublistWeb {
 public static void main(String[] args){
  //定義服務訪問url  紫色部分必須能夠訪問   紅色部分無所謂  可是我以爲須要符合命名規範

  String url="http://127.0.0.1:8080/testWS";
  //建立webservice組件
  WebService01 ws=new WebServiceImpl();
  //暴漏服務
  Endpoint.publish(url, ws);
  System.out.println("發佈服務成功");
 }
}

 cxf框架支持的參數類型

        1. 8大基本類型,包裝類,String

        2.javaBean時複合類型

        3.List\set\map類型(須要jdk 1.8支持)

不支持類型:非javabean式複合類型 map類型(jdk 1.8如下版本不支持map類型)

---------------------------------------客戶端----------------------------------------------

第一種方法:

        wsdl2java   http://127.0.0.1:8080/testWS加上 ?wsdl 固定格式  (服務器發佈時的url。就是Enpoint.publish方法的參數)

        ?wsdl爲必須的格式

        

public class WsClient {

 /**
  * @param args
  */
 public static void main(String[] args) {
  //建立webservice服務組件工廠
  Test01 client=new Test01();//此類必須繼承Service   通常是webservice組件實現類 註解WebService中的屬性爲serviceName的值

  //返回的是服務器組件代理對象
  WebService01 WSImpl = client.getWebServiceImplPort();
  //調用服務組件方法  返回結果
  String result=WSImpl.login();
  System.out.println(result);
 }

}

 

第二種方法: 經過java自帶的wsimport命令

         wsimport   http://127.0.0.1:8080/testWS加上 ?wsdl 固定格式  (服務器發佈時的url。就是Enpoint.publish方法的參數)

        ?wsdl爲必須的格式

                與第一種客戶端代碼差很少 根據狀況更改部分代碼

相關文章
相關標籤/搜索