我正在使用 API 并尝试使用 Jackson 反序列化结果,但我总是犯同样的错误。
我想我的 POJO 不对,但我找不到问题所在。
错误在libs上
我尝试声明为 String 或 List 但没有成功。有什么想法吗?
{
"libs": {},
"items": [
{
"id": "001",
"cars": [
"cd1042af-856d-4649-a170-032d15a4119b",
"00ed61a4-3aab-4722-90c2-7f4cca4cbded",
"8fa3aa8b-3f22-4413-a41d-e78de9051de2"
],
"name": "James"
},
{
"id": "002",
"cars": [
"cd1043af-856d-4649-a170-032d15a4119b",
"00ed61a4-3aab-4722-90c2-7f4cca4cbded",
"8fa3aa8b-3f22-4413-a41d-e78de9051de2"
],
"name": "James"
}]
public class Page<Car> {
private List<String> libs;
private List<Car>items;
public List<Car> getItems() {
return items;
}
public void setItems(List<Car> items) {
this.items = items;
}
public List<String> getLibs() {
return libs;
}
public void setLibs(List<String> libs) {
this.libs = libs;
}
}
最佳答案
您将 libs 声明为一个列表,但使用了 maps/objects 括号。
应该是"libs": []
并且在每个列表元素的 name
属性结束后有额外的逗号。
关于java - Jackson JSON : Can not deserialize instance of java. START_OBJECT token 中的 lang.String,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47718091/