java - 从 JSON 字符串 Java 模型类转换时出错
问题描述
我在将 JSON 字符串转换为 Java 对象时遇到问题。根据我的场景,数据库(PostgreSQL)通过函数在 PGOBJECT 中返回 JSON 字符串。
我正在尝试将其转换为模型类。返回值 JSON 示例为:
{
"A_REASON": [
{
"cd": "CLOSE",
"name": "CLOSE",
"value": "A_REASON",
"type": "A_REASON"
}
],
"P_MODE": [
{
"cd": "CLOSE",
"name": "CLOSE",
"value": "A_REASON",
"type": "A_REASON"
}
],
"F_TYPE": [
{
"cd": "CLOSE",
"name": "CLOSE",
"value": "A_REASON",
"type": "A_REASON"
} ] }
我已经创建了我的模型类,如下所示。
public class MODEL {
private List<MISCDTO> A_REASON;
private List<MISCDTO> P_MODE;
private List<MISCDTO> F_TYPE;
//settter and Getter
}
public class MISCDTO{
private String cd;
private String name;
private String value;
private String type;
}
当我尝试从 JSON 字符串转换为模型类时会出错,我尝试了多种方法
ObjectMapper mapper = new ObjectMapper();
MODEL object = mapper.readValue(pGobject.getValue(), MODEL.class);
List<MODEL> list = mapper.readValue(pGobject.getValue(), new TypeReference<List<MODEL >>(){});
MODEL object= mapper.readValue(pGobject.getValue(), new TypeReference<MODEL>() {});
我希望转换为具有 List、List 等的 Map> 或 MODEL 对象。请帮助。当我尝试以堆栈标准编写时,请在格式化方面提供帮助。在这方面还是新手。
解决方案
推荐阅读
- blackberry - BB10 Momentics 无法创建调试令牌
- flutter - Flutter Bloc A 在 Bloc B 中添加流,但此流不会通过 StreamBuilder 在 UI 中呈现
- awk - 替换包含特殊字符 & 的句子
- flutter - 使用 noSuchMethod 在 Dart 中做代理?
- pytorch - 使用预训练的 resnet 实现 Squeeze 和 Excitation 块
- javascript - 将条目数据发布到 html 表行
- android - Android:JobScheduler 有时会重用同一个作业实例?
- node.js - 为什么我的 Dockerized LoopBack4 应用程序运行失败并收到消息“ConnectionError: Failed to lookup instance on”?
- c# - 无法上传 .snupkg 文件:校验和与 dll 和相应的 pdb 不匹配
- javascript - 节点面向对象。链接类