当实体的字段名称与预期的字段名称不同时如何调用restTemplate.postForEntity

问题描述 投票:0回答:1

我有一个Rest API,它接受字段名称为id,title的实体。但是,当我打电话时,我有与id,description相同值的不同字段。

如何修改呼叫,以便我可以发出请求。

在下面的代码中,Employee类具有两个与id,title不同的id,desc字段。

public ResponseEntity<Employee> postForEntity(Employee newEmployee) {
  MultiValueMap<String, String> headers = new HttpHeaders();
  headers.add("User-Agent", "EmployeeRestClient demo class");
  headers.add("Accept-Language", "en-US");
  HttpEntity<Employee> entity = new HttpEntity<>(newEmployee, headers);
  return restTemplate.postForEntity(REQUEST_URI, entity, Employee.class);
}

java spring-boot resttemplate
1个回答
0
投票

首先请确保该位置上的类Employee是否正确。如果正确,则按如下所示将Java属性映射到JSON:

public class Employee {
    ... id; // name remains unchanged

    @JsonProperty("title")
    ... desc;

}

如果无法修改Employee类,请创建另一个具有所需属性名称的实例,并将Employee的实例复制到您的类的实例中,然后在restTemplate中使用该实例。] >

© www.soinside.com 2019 - 2024. All rights reserved.