2013-04-17 41 views
0

我正在開發一個Restful web服務,它允許用戶在POJO中設置所有參數並將其發送到服務器端Web服務,然後Web服務將存儲此數據並將生成的Id返回給客戶。但是我的POJO擁有包含POJO集合的父子關係,那麼如何使用RESTful Web服務來做到這一點。我還編寫了一個代碼來使用Web服務從服務器獲取數據,並且它的工作正常。但對於這個問題,請幫助我。 謝謝。使用RESTful web服務發送POJO以保存在服務器上

+1

你有什麼試過?如果你有一個複雜的對象,那麼你將不得不在你的請求中提供它。這可能是XML或JSON;嘗試使用您的框架來查看POST和PUT的一些REST示例。 – James

+0

@James我想傳遞一個複雜的對象,如上所述,並得到生成的ID的響應,但我很困惑如何編碼它,你可以幫我嗎?對我的語言感到抱歉。 – Balasaheb

回答

0

我不確定是否正確理解您的問題。我想一些示例代碼會有所幫助。如果你正在使用RestTemplate,那麼序列化和反序列化將自動完成。 RestTemplate使用Jackson來解析JSON,因此您不必擔心POJO中的父/子關係。

所以這裏是一個例子。互聯網上有1000個例子。這就是我學習的方式。

RestTemplate restclient = new RestTemplate(); 
Product product = restclient.getForObject(url,Product.class); 
System.out.println(product.getCoupons().getName()); 

凡爲產品(我完全由這件事我自己),

public class Product { 
     @JsonProperty("id") 
     private String id; 
     @JsonProperty("coupons") 
     private Coupons coupons; 

     @JsonProperty("id") 
     public String getId() { 
     return id; 
     } 
     @JsonProperty("id") 
     public void setId(String id) { 
     this.id = id; 
     } 
     @JsonProperty("coupons") 
     public Coupons getCoupons() { 
     return coupons; 
     } 
     @JsonProperty("coupons") 
     public void setCoupons(Coupons coupons) { 
     this.coupons = coupons; 
    } 
} 
public class Coupons { 
    @JsonProperty("name") 
    private String name; 
    @JsonProperty("name") 
    public String getName() { 
     return name; 
    } 
    @JsonProperty("name") 
    public void setName(String name) { 
      this.name = name; 
    } 
} 

讓我知道如果我誤解了你的問題,我可以相應地更新我的答案。

+0

感謝您的重播,您的猜測是寫入,但是您可以提供一些代碼示例,以使用POST或PUT方法與RestTemplate傳遞複雜對象。 – Balasaheb

+0

你試過了什麼?複雜的意思是什麼?通過複雜你是指一個擁有許多孩子的父類? – nilesh

+0

看到我的更新的答案 – nilesh