gpt4 book ai didi

java - 如何反序列化 jackson 中两个列表的数组

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:10:19 24 4
gpt4 key购买 nike

我有一个包含两个列表的数组。每个列表都包含对象。第一个列表中的对象与第二个列表中的对象不同。在 JSON 中它看起来像这样:

[  
{
"domains":
[
{
"attrb1": "aaaa",
"attrb2": "bbbb"
},
{
"attrb1": "cccc",
"attrb2": "dddd"
}
]
},
{
"terms":
[
{
"attrb1": "cccc",
"attrb2": "dddd"
}
]
}
]

我将这个 JSON 字符串保存到文件 initial-elements-v02.json 中,我正在考虑这样的事情来反序列化它:

final ObjectMapper mapper = new ObjectMapper();

List<List<Object>> glossaryElements = null;
try {
glossaryElements = mapper.readValue(
arg0.resourceAsStream("initial-elements-v02.json"),
new TypeReference<ListList<<Object>>>() {
});

谢谢!
尤金

最佳答案

根据 Data Binding with Generics , 我会从最里面到外面 build

Map<String, String>

List<Map<String, String>>

Map<String, List<Map<String, String>>>

List<Map<String, List<Map<String, String>>>>

然后使用这个

List<Map<String, List<Map<String, String>>>> glossaryElements = null;
glossaryElements = mapper.readValue(
arg0.resourceAsStream("initial-elements-v02.json"),
new TypeReference<List<Map<String, List<Map<String, String>>>>>() {});

如果initial-elements-v02.json是文件名,我想你也可以用

new File("initial-elements-v02.json")

关于java - 如何反序列化 jackson 中两个列表的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14621340/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com