【问题标题】:sending POJO to save on server using RESTful webservices使用 RESTful Web 服务发送 POJO 以保存在服务器上
【发布时间】:2013-04-17 10:41:38
【问题描述】:

我正在开发一个 Restful Web 服务,它允许用户在 POJO 中设置所有参数并将其发送到服务器端 Web 服务,然后 Web 服务将存储此数据并将生成的 Id 返回给客户端。但是我的 POJO 具有包含一组 POJO 的父子关系,那么我该如何使用 RESTful Web 服务来做到这一点。我还编写了一个代码来使用 Web 服务从服务器获取数据,并且工作正常。但是对于这个问题,请帮助我。 谢谢。

【问题讨论】:

  • 你试过什么?如果您有一个复杂的对象,那么您必须在您的请求正文中提供它。这可以是 XML 或 JSON;尝试使用您的框架查看一些 POST 和 PUT 的 REST 示例。
  • @James 我想传递一个如上所述的复杂对象并获得生成的 Id 的响应,但我很困惑如何编码它,你能帮我吗?对我的语言感到抱歉。

标签: web-services rest spring-mvc resttemplate


【解决方案1】:

我不确定我是否正确理解了您的问题。我想一些示例代码会有所帮助。如果您使用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;
     }
}

如果我误解了你的问题,请告诉我,我可以相应地更新我的答案。

【讨论】:

  • 感谢您的重播,您的猜测是写,但您能否提供一些代码示例来使用带有 RestTemplate 的 POST 或 PUT 方法传递复杂对象。
  • 你试过什么?你说的复杂是什么意思?复杂是指有很多孩子的父类?
  • 实际上我的 POJO 不只包含 String 或 Integer 它包含 Set、List、Object 等等,它是否适用于这种类型的 POJO,以及如何在服务器端编码以获得这个请求。
  • 没关系,RestTemplate 会搞定的。。服务器端的我恐怕帮不了你。。
  • 如果内容类型是xml你会怎么做
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多