我试图通过jackson将以下json映射到pojo。我让第一部分工作(直到第节)。然而,第二部分我不确定如何将“section1”映射到这里可能包含的pojo或最佳实践?
Json通过Rest电话收到:
{
"val1":100,
"val2":2.75,
"junk":[
{
"junk1":36,
"junk2":78
},
{
"junk1":36,
"junk2":78
}
],
"section1":{ // <- There will be another section2, section3,...
"val1":100,
"val2":2.75,
"junk1":[
{
"junk1":36,
"junk2":78
},
{
"junk1":36,
"junk2":78
}
],
"junk2":[
{
"junk1":36,
"junk2":78
},
{
"junk1":36,
"junk2":78
}
]
}
}
波乔:
public class view
{
private int val1;
private float val2;
private List<Map<String, String> > junk; //<-Ok as I just pass to another class
// How to store "section" ... and want to keep junk1, junk2 same
// placeholder like I have for junk in main section above.
}
请注意,您可以指出“垃圾”应该被忽略。有两种方法可以做到这一点;一是:
@JsonIgnoreProperties({"junk"})
public class MyClass { ... }
这样做的好处是不需要内存来存储匹配的数据;它可以加快解析速度(不是一吨,而是一些;解析器仍然需要解码JSON来跳过它等)。
如果每个节的内容(和每件垃圾)内部具有相同的结构,则使“节”成为另一个类,也使“垃圾”成为“垃圾”。
public class view
{
private int val1;
private float val2;
private List<Junk> junk; //<-Ok as I just pass to another class
private Section section1;
private Section section2;
... etc ...
}
public class Section {
private int val1;
private float val2;
private List<Junk> junk; //<-Ok as I just pass to another class
}
public class Junk {
private String junk1;
private Strign junk2;
}
我假设你展示的是一个结构,而不是一系列的部分。
另外,map并不是存储两个随机字符串的好地方。但是Jackson会允许这样做的。唯一的例外是字段的名称会从“Junk1”和“Junk2”不同。否则就使用一个包含两个字符串的类。
我和jackson一起绘制地图,我有点迷茫。我的Json具有以下结构 我确实找到了很多处理数组的教程,但我在第一个标记“d”时就已经失败了。而且根本不需要所有的“_元数据”标记。 我创建了一个包含lastName等属性和一个集合附件的pojo。但我的代码在标记“d”或“_元数据”时总是失败 还有杰克逊的读者 任何提示都将不胜感激。 问候马蒂亚斯
我使用JAVA jackson将JSON映射到JAVA pojo对象,我的JSON文件是: 在之后,我收到了以下错误消息: 不能反序列化出START_ARRAY令牌 我的POJO课程: 请问,这种JSON格式的正确java POJO是什么?谢谢
JSONMappingException:无法反序列化com.demo.json.model.abc实例 编辑:我的POJO如下所示: 有人能提出解决办法吗? 有人能帮我做这个吗?
我有一个JSON字符串: ...我试图映射回POJO: 上面的字符串(我正在尝试映射)实际上包含在一个组织中。json。JSONObject,可以通过调用该对象的方法来获取。 我想使用Jackson JSON对象/JSON映射框架来进行此映射,到目前为止,这是我最好的尝试: 我需要地图绘制者: 完全忽略外部的花括号(“”和“”) 如果唯一的方法是调用的方法,那么就这样吧。但我想知道Jackson是
我正在使用Jackson的XML绑定,通过到Java POJO的初始映射,将XML转换为Java列表。我所写的作品,但我不认为我使用杰克逊正确。 这实际上是工作,因为我需要它的工作。我得到了一个Groups类,其中有一个用我期望的元素填充的列表。我在想,方法是正确的吗?我不喜欢我有一个二传手做一个添加,但我所尝试的一切都不起作用。
对于这个来自RestTemplate的JSON响应,我如何构造Java POJO来映射包括键(即时间戳'1580845128000')在内的所有字段。 当前我有ResponseEntity result=restTemplate.exchange(uri,HttpMethod.Get,entity,String.class);