1. 程式人生 > >MyEclipse開發教程:REST Web Service(二)

MyEclipse開發教程:REST Web Service(二)

MyEclipse 線上訂購年終抄底促銷!火爆開搶>>

MyEclipse最新版下載

使用MyEclipse開發RESTWeb服務來放大您的Web應用程式。在本教程示例中,您將建立一個簡單的Web服務來維護客戶列表。你將學會:

  • 用於開發REST Web服務的過程
  • 部署到MyEclipse Tomcat伺服器
  • 使用REST Web服務資源管理器進行測試

沒有MyEclipse? 立即下載

2.建立新的REST Web服務

有了專案,就可以建立Web服務了。您將建立管理客戶實體所需的類和資源方法的類。

2.1建立客戶實體

這個簡單的Customer類包含id、name和地址欄位,並且表示使用Web服務管理的Customer實體。

  1. 右鍵單擊restdemo專案,並選擇New>Class。
  2. 在Package欄位中鍵入com.myeclipseide.ws,在Name欄位中鍵入Customer,如果選中則取消選擇Public Static Void Main複選框,並單擊Finish。 

    MyEclipse

    建立Java類
  3. 用下面的程式碼替換生成的類的預設內容,並儲存檔案。 

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    28

    29

    30

    31

    32

    33

    package com.myeclipseide.ws;

      import javax.xml.bind.annotation.XmlRootElement;

    @XmlRootElement

      public class Customer {

      private int id;

      private String name;

      private String address;

     

      public int getId() {

         

    return id;

      }

     

      public void setId(int id) {

        this.id = id;

      }

     

      public String getName() {

         return name;

      }

     

      public void setName(String name) {

         this.name = name;

      }

     

      public String getAddress() {

         return address;

      }

     

      public void setAddress(String address) {

        this.address = address;

      }

     

    }

您使用XML作為序列化格式,即使用XML從Web服務傳送和接收客戶實體。

Customer類中的@ XMLROOTE元素註釋是一個JAXB註釋,允許JAXB將這個實體從Java轉換為XML並返回。可以對類中的欄位和方法進行註釋以定製序列化,但是對於本教程,JAXB預設設定是可以的。

2.2建立資源類,即Web服務的核心

  1. 右鍵單擊restdemo專案,並選擇New>Other。
  2. 在過濾器欄位中輸入Web服務,選擇Web服務,然後單擊Next 

    MyEclipse

    建立新的Web服務
  3. 從Java類選項中選擇“Create web service”,選擇“Create new Java bean”複選框,然後單擊“Next”。 

    MyEclipse

    建立新的Web服務
  4. 在URL路徑欄位中鍵入客戶,選擇Stutelon生命週期選項,從產品下拉中選擇Apple /XML,鍵入JavaSpand欄位中的COM.MycliestId.WSN,並在Java類欄位中鍵入CuulsRes資源。 

    MyEclipse


    Web服務配置詳細說明URL路徑:指示可以到達此資源的路徑。對於本教程,資源將託管在“/customer”。 

    Singleton Lifecycle:確保每個web應用程式僅由Jersey建立該類的一個例項。

    Consumes and Produces:可用於指定該資源可以接受和生成的資料的預設mime型別。這些值可以由類中的單個方法覆蓋。如上所述,您正在序列化XML,因此您使用application/xml mime型別。
  5. 單擊Add按鈕新增獲取客戶列表的方法。
  6. 在返回型別欄位中,在方法名稱欄位java.util.List中鍵入getCustomers,然後單擊“Finish”。 

    MyEclipse


    新增methodHTTP方法:在本例中,可以用來指定該方法響應的HTTP請求的型別。 
    Method Signature preview:在對頁面進行更改時更新,讓您瞭解生成的方法的外觀。
  7. 再次單擊Add按鈕以新增返回特定客戶的詳細資訊的方法。
  8. 在方法名稱欄位中輸入getCustomer,在返回型別欄位中輸入Customer,在URL路徑欄位中輸入{id}。 

    MyEclipse


    新增第二種方法
  9. 單擊Add按鈕新增Method引數。在Java型別欄位中鍵入int,在Java名稱欄位中鍵入CID,從PARAM型別下拉中選擇PathParam,並在PARAM名稱欄位中鍵入ID。單擊Finish。 

    MyEclipse


    addingmethodparametersURLPath:指定相對於包含的資源可以到達此方法的路徑。 

    在本例中,您指定{id},這意味著可以在/customer/{id}處到達此資源方法。花括號表示URI變數。這些變數在執行時替換為資源,以響應基於替換URI的請求。 

    引數:直接在表中編輯引數。因為需要id變數的值,所以使用PathParam註釋將其對映到cId引數。 
  10. 新增允許向列表中新增新客戶的方法。填入如下所示的欄位,然後單擊Finish。 

    MyEclipse


    在本例中,您正在響應POST請求並期望應用程式/xml輸入,該輸入將被反序列化為客戶引數。customerparameter是一個Entity引數(未註明),並且直接從傳入請求的訊息主體對映。您還可以重寫CustomersResource類指定的預設應用程式/xml輸出,並指定text/html。
  11. 在新增這三個方法之後,配置應該如下所示: 

    MyEclipse


    最終Web服務配置
  12. 單擊Finish生成CustomersResource類。開啟該檔案以檢視截斷的資源方法。

更多資訊敬請訪問MyEclipse中文網>>