webservice之實現天氣預報


 

前通過傳智的視頻自學了webservice的基本使用,也了解到webservice就是一種跨編程語言跨操作系統平台的遠程調用技術。

對於這些理論知識在這里也不再做過多的解釋,本次主要就是記錄與分享使用cxf 框架完成遠程調用氣象局提供的接口,來實現天氣查詢的全過程。

1、項目搭建

  * 創建一個maven項目(方便引入包的依賴,不需要再去手動的添加包)

            

  * 配置pom.xml 中的依賴

  <build>
    <plugins>
      <!-- 設置jdk版本 -->
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.5.1</version>
        <configuration>
          <source>1.8</source>
          <target>1.8</target>
          <encoding>utf-8</encoding>
        </configuration>
      </plugin>
    </plugins>
  </build>
  <dependencies>
    <!-- 引入cxf框架的依賴 -->
    <dependency>
      <groupId>org.apache.cxf</groupId>
      <artifactId>cxf-rt-transports-http</artifactId>
      <version>3.2.6</version>
    </dependency>
    <!-- 引入junit測試包的依賴 -->
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.10</version>
    </dependency>
  </dependencies>

 

------------------------------------   分隔線  -----------------------------------------------

  * 引入依賴后需要更新一個maven項目(因為修改了jdk版本,需要更新后才會生效),操作如下:

    在maven項目上單擊右鍵  --> maven --> Update Project...  (選擇需要更新的maven項目即可)

 

 2、下載wsdl文件

  wsdl地址  http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl

  * 如果使用java的話需要將該文件下載下來,因為如果直接在控制台使用wsimport會拋出異常(已經過多次測試)

  * 操作步驟:

    * 將地址復制到瀏覽器中打開,會出現如下這個頁面

      

    * 同樣的在頁面中單擊右鍵,另存為,然后保存到桌面即可

      

    *  保存到桌面以后,我們需要將這個xml文件引入到我們的項目中來(直接復制進來就可以了

    * 注意:這一點非常重要,我們需要對文件中的內容進行修改,否則將無法解析

      首先打開xml文件,然后搜索   <s:element ref="s:schema" />   如果存在,那么就直接把他out

    

    

    * 做完后,關閉xml配置文件,找到你需要將將代碼解壓到的目錄(簡單說,就是例如我現在要將代碼解析到我的src/main/java),單擊右鍵選擇 properties,復制location地址

         

    

    * 然后到控制台中進入到我們復制的地址

    * 確定后,結果如下:

      

 

    * 解析完成后,再回到我們的項目中來,刷新項目就可以看到生成的代碼

    

3、 測試

    * 創建一個測試類,編寫如下代碼

    

    

    * 運行測試

      

 

 ----------------------------------------------------------   分隔線   -------------------------------------------------------

  整個簡單的案例到這里也就結束了,第一次寫博客,寫得不好,還望見諒,后續我也將持續的更新自己在學習中的一些案例。

 

    

 


免責聲明!

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



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