使用開發(fā)RESTWeb服務(wù)來放大您的Web應(yīng)用程序。在本教程示例中,您將創(chuàng)建一個(gè)簡(jiǎn)單的Web服務(wù)來維護(hù)客戶列表。你將學(xué)會(huì):
	- 用于開發(fā)REST Web服務(wù)的過程
- 部署到MyEclipse Tomcat服務(wù)器
- 使用REST Web服務(wù)資源管理器進(jìn)行測(cè)試
沒有MyEclipse? 
1.從REST Web服務(wù)項(xiàng)目開始 
REST Web服務(wù)項(xiàng)目向?qū)鼓軌蜷_始項(xiàng)目配置。
	- 單擊工具欄上的New圖標(biāo)MyEclipse REST Web Service上的下拉箭頭,并從菜單中選擇Web Service Project。
- 在Project Name字段中輸入restdemo,選擇REST(JAX-RS)框架選項(xiàng),然后單擊Next。
 
 注意:本教程使用JavaEE 6版本;但是,在創(chuàng)建新項(xiàng)目時(shí),JavaEE 7是可用的選項(xiàng)。
	
	創(chuàng)建Web服務(wù)項(xiàng)目
- 接受默認(rèn)的源文件夾,然后單擊Next。
- 單擊Finish以接受本示例的默認(rèn)值。
	
	完成項(xiàng)目
2.創(chuàng)建新的REST Web服務(wù) 
有了項(xiàng)目,就可以創(chuàng)建Web服務(wù)了。您將創(chuàng)建管理客戶實(shí)體所需的類和資源方法的類。 
2.1創(chuàng)建客戶實(shí)體 
這個(gè)簡(jiǎn)單的Customer類包含id、name和地址字段,并且表示使用Web服務(wù)管理的Customer實(shí)體。 
  - 右鍵單擊restdemo項(xiàng)目,并選擇New>Class。 
- 在Package字段中鍵入com.myeclipseide.ws,在Name字段中鍵入Customer,如果選中則取消選擇Public Static Void Main復(fù)選框,并單擊Finish。 
 創(chuàng)建Java類
  - 用下面的代碼替換生成的類的默認(rèn)內(nèi)容,并保存文件。 
 
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服務(wù)發(fā)送和接收客戶實(shí)體。
 
Customer類中的@ XMLROOTE元素注釋是一個(gè)JAXB注釋,允許JAXB將這個(gè)實(shí)體從Java轉(zhuǎn)換為XML并返回。可以對(duì)類中的字段和方法進(jìn)行注釋以定制序列化,但是對(duì)于本教程,JAXB默認(rèn)設(shè)置是可以的。 
2.2創(chuàng)建資源類,即Web服務(wù)的核心 
  - 右鍵單擊restdemo項(xiàng)目,并選擇New>Other。 
- 在過濾器字段中輸入Web服務(wù),選擇Web服務(wù),然后單擊Next 
 創(chuàng)建新的Web服務(wù)
- 從Java類選項(xiàng)中選擇“Create web service”,選擇“Create new Java bean”復(fù)選框,然后單擊“Next”。 
 創(chuàng)建新的Web服務(wù)
- 在URL路徑字段中鍵入客戶,選擇Stutelon生命周期選項(xiàng),從產(chǎn)品下拉中選擇Apple /XML,鍵入JavaSpand字段中的COM.MycliestId.WSN,并在Java類字段中鍵入CuulsRes資源。 
 
 Web服務(wù)配置詳細(xì)說明URL路徑:指示可以到達(dá)此資源的路徑。對(duì)于本教程,資源將托管在“/customer”。
 
 Singleton Lifecycle:確保每個(gè)web應(yīng)用程序僅由Jersey創(chuàng)建該類的一個(gè)實(shí)例。
 
 Consumes and Produces:可用于指定該資源可以接受和生成的數(shù)據(jù)的默認(rèn)mime類型。這些值可以由類中的單個(gè)方法覆蓋。如上所述,您正在序列化XML,因此您使用application/xml mime類型。
  - 單擊Add按鈕添加獲取客戶列表的方法。 
- 在返回類型字段中,在方法名稱字段java.util.List<Customer>中鍵入getCustomers,然后單擊“Finish”。 
 
 添加methodHTTP方法:在本例中,可以用來指定該方法響應(yīng)的HTTP請(qǐng)求的類型。
 Method Signature preview:在對(duì)頁面進(jìn)行更改時(shí)更新,讓您了解生成的方法的外觀。
  - 再次單擊Add按鈕以添加返回特定客戶的詳細(xì)信息的方法。 
- 在方法名稱字段中輸入getCustomer,在返回類型字段中輸入Customer,在URL路徑字段中輸入{id}。 
 
 添加第二種方法
- 單擊Add按鈕添加Method參數(shù)。在Java類型字段中鍵入int,在Java名稱字段中鍵入CID,從PARAM類型下拉中選擇PathParam,并在PARAM名稱字段中鍵入ID。單擊Finish。 
 
 addingmethodparametersURLPath:指定相對(duì)于包含的資源可以到達(dá)此方法的路徑。
 
 在本例中,您指定{id},這意味著可以在/customer/{id}處到達(dá)此資源方法。花括號(hào)表示URI變量。這些變量在運(yùn)行時(shí)替換為資源,以響應(yīng)基于替換URI的請(qǐng)求。
 
 參數(shù):直接在表中編輯參數(shù)。因?yàn)樾枰猧d變量的值,所以使用PathParam注釋將其映射到cId參數(shù)。
 
- 添加允許向列表中添加新客戶的方法。填入如下所示的字段,然后單擊Finish。 
 
 在本例中,您正在響應(yīng)POST請(qǐng)求并期望應(yīng)用程序/xml輸入,該輸入將被反序列化為客戶參數(shù)。customerparameter是一個(gè)Entity參數(shù)(未注明),并且直接從傳入請(qǐng)求的消息主體映射。您還可以重寫CustomersResource類指定的默認(rèn)應(yīng)用程序/xml輸出,并指定text/html。
在添加這三個(gè)方法之后,配置應(yīng)該如下所示: 
  
    最終Web服務(wù)配置   
   
  - 單擊Finish生成CustomersResource類。打開該文件以查看截?cái)嗟馁Y源方法。 
更多資訊敬請(qǐng)?jiān)L問
					
					標(biāo)簽:
Java開發(fā)工具MyEclipse
					
					
						本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@ke049m.cn
												文章轉(zhuǎn)載自:慧都控件網(wǎng)