将类对象发布到RESTful Web服务

时间:2016-04-06 13:33:06

标签: java spring rest restful-architecture

我有两个班级:

public class Person {   

    private String Name;
    private Integer Age;
    private String Surname;

    // getters and setters
}

public class Animal {

    private String Name;
    private Integer Age;

    // getters and setters
}

我想做的事情 - 发布Animal.class并以Person.class格式接收回复。 (在客户端)。

为此,我使用REST模板:

RestTemplate restTemplate = new RestTemplate();
Person result = restTemplate.postForObject("http://url.com", HttpMethod.POST, Animal.class, Person.class);

我知道以这种方式传递Animal.class是不对的,但我无法在此页面中手动设置NameAge参数。使用POST方法的主要要求。

那么我必须做些什么才能让它发挥作用?

1 个答案:

答案 0 :(得分:0)

我相信你要找的是:

RestTemplate restTemplate = new RestTemplate();
HttpEntity<Animal> request = new HttpEntity<>(animal); //populated object
ResponseEntity<Person> response = restTemplate.
  exchange(url, HttpMethod.POST, request, Person.class);