MismatchedInputException error Parsing Json



在春季启动中,我得到了MismatchedInputException解析json

时出错
[
{
"name": "abcd",
"number": "0.11258868"
},
{
"name": "try",
"number": "1.155866887"
},
{
"name": "test",
"number": "0.123444"
}
]

我的班级是:

@JsonIgnoreProperties
public class Info {
private String name;
private double number;
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
public Object getNumber() {
return number;
}
public void setNumber(double number)
{
this.number= number;
}

映射代码如下:

@GetMapping
public String setInfo()
{
var info= (List<Info>)m_restTemplate.getForObject(url, Info.class);
return "test";
}

我知道这是非常简单的代码,但我找不到解决方案。什么是与班级不匹配?

问题出在检索部分。你得到一个Info的列表,但是你对SpringRestTemplate说它将得到一个单独的Info。试试以下命令:

@GetMapping
public String setInfo() {
var info = m_restTemplate.exchange(url, HttpMethod.GET, null, 
new ParameterizedTypeReference<List<Info>>() {}).getBody();
return "test";
}

最新更新