我正在尝试使用 Java 类对 JSON 响应进行解组,我是 Java 的新手,所以这可能是我犯的一个小学生错误。
JSON 响应是:
[{
"index": 514042,
"source_list_name": "insurance_group",
"allow_multiple_account_associates": false,
"source_list_index": 10078,
"fields": {
"type": "e212"
},
"is_editable": false,
"allow_associates": false
}, {
"is_editable": true,
"fields": {
"type": "i120"
},
"allow_associates": false,
"allow_multiple_account_associates": false,
"index": 533402
}, {
"is_editable": true,
"fields": {
"type": "i119"
},
"allow_associates": false,
"allow_multiple_account_associates": false,
"index": 514519
}]
Java类是:
package com.ls.json.pack
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@AllArgsConstructor
@Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class EmploymentSalaryTypeResponse {
public class Fields{
private String type;
}
@AllArgsConstructor
@NoArgsConstructor
@Data
public class Root{
private int index;
private String source_list_name;
private boolean allow_multiple_account_associates;
private int source_list_index;
private Fields fields;
private boolean is_editable;
private boolean allow_associates;
}
}
我得到的错误是:
Caused by: com.fasterxml.jackson.databind.exc.MismatchedInputException: Cannot deserialize type
com.ls.json.pack.EmploymentSalaryTypeResponse
from Array value (token JsonToken.START_ARRAY
) 的值
在[来源:(org.springframework.core.io.buffer.DataBufferInputStream);行:1,列:1]
在 com.fasterxml.jackson.databind.exc.MismatchedInputException.from(MismatchedInputException.java:59)
在 com.fasterxml.jackson.databind.DeserializationContext.reportInputMismatch(DeserializationContext.java:1746)
在 com.fasterxml.jackson.databind.DeserializationContext.handleUnexpectedToken(DeserializationContext.java:1520)
在 com.fasterxml.jackson.databind.DeserializationContext.handleUnexpectedToken(DeserializationContext.java:1467)
在 com.fasterxml.jackson.databind.deser.BeanDeserializer._deserializeFromArray(BeanDeserializer.java:650)
在 com.fasterxml.jackson.databind.deser.BeanDeserializer._deserializeOther(BeanDeserializer.java:211)
在 com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:187)
你能看出我哪里错了吗?
我试图重新上课,但没有快乐