Post class 反对 RESTful 网络服务

Post class object to RESTful web service

我有两个 类:

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
}

我想做的事情 - post 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方法。

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

我相信你要找的是:

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