【发布时间】:2019-08-11 19:04:17
【问题描述】:
需要将多种类型的 JSON 响应映射到单个 POJO,以便我可以比较不同的对象以了解差异。
我曾尝试将第一个响应映射到 POJO,并解析第二个响应以填充定义的 POJO:
class XXX {
@JsonProperty("accountHolder")
private String accountHolder;
@JsonProperty("routingNumber")
private String routingNumber;
@JsonProperty("balance")
private List<Balance> balance;
@JsonProperty("accountName")
private String accountName;
@JsonProperty("bankTransferCodeType")
private String bankTransferCodeType;
@JsonProperty("individualInformation")
private IndividualInformation individualInformation;
@JsonProperty("acctType")
private String acctType;
@JsonProperty("transactionList")
private TransactionList transactionList;
@JsonProperty("accountNumber")
private String accountNumber;
@JsonProperty("uniqueId")
private String uniqueId;
@JsonProperty("bankNetID")
private String bankNetID;
@JsonIgnore
private Map<String, Object> additionalProperties = new HashMap<String, Object>();
}
第一反应:
[
{
"ACCOUNT_NAME": "",
"ACCOUNT_NUMBER": "",
"AVAILABLE_BALANCE": null,
"CURRENT_BALANCE": "",
"FULL_ACCOUNT_NUMBER": null,
}
]
第二次回复:
"bankAccount": [
{
"accountName": "",
"accountNumber": "",
"routingNumber": "",
"fullAccountNumber": "",
"bankTransferCodeType": "",
"acctType": "",
"transactionList": {
"transaction": [
{
"amount": {
"curCode": "",
"content": ""
}
],
"oldestTxnDate": ""
},
"uniqueId":
}
}
期待一种将不同结构化 JSON 实体映射到单个 POJO 的通用方法。
【问题讨论】:
-
基本上相同的响应必须设置在具有不同字段的两个 json 中。两个 json 中有什么共同的字段吗?
-
没有通用字段名称
-
感谢@cassiomolin 的回答。但建议没有按建议工作。我必须解析两个 POJO 并将值分配给一个常见的 POJO 以进行比较。
标签: java json spring-mvc jackson pojo