RestTemplate 交换,值未映射到带下划线的字段

RestTemplate exchange, values are not mapped for a field with underscore

消费休息服务,这是服务响应

{
   "message": "200",
   "result": "SUCCESS",
   "Test_Id": "23324"
}

使用服务的代码。

ResponseEntity<InfoDto> result = null;
final String uri ="https://app.ed.im/api";

RestTemplate restTemplate = new RestTemplate();

HttpHeaders headers = new HttpHeaders();
headers.setAccept(Arrays.asList(MediaType.APPLICATION_JSON));
HttpEntity<String> entity = new HttpEntity<String>("parameters", headers);
result = restTemplate.exchange(uri, HttpMethod.GET, entity, InfoDto.class);

这是dto

public class InfoDto implements Serializable {
    private String message;
    private String result;
    private String Test_Id;
}

执行后

我收到了消息结果的值,但是Test_Id 值未映射。

如果参数名称的代码约定存在问题,请添加完全匹配的 JsonProperty

@JsonProperty("Test_Id")
private String Test_Id; // prefer rename to testId

可能有一个 underscore to camel-case 转换