我正在尝试将 json 反序列化为对象。但是,json 有重复的键。我无法更改 json,我想使用 Jackson 将重复键更改为列表。
这是我检索的 json 的示例:
{
"myObject": {
"foo": "bar1",
"foo": "bar2"
}
}
Run Code Online (Sandbox Code Playgroud)
这是反序列化后我想要的:
{
"myObject": {
"foo": ["bar1","bar2"]
}
}
Run Code Online (Sandbox Code Playgroud)
我像这样创建了我的课程:
public class MyObject {
private List<String> foo;
// constructor, getter and setter
}
Run Code Online (Sandbox Code Playgroud)
我尝试使用DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAYfromobjectMapper但它所做的只是获取最后一个键并将其添加到列表中,如下所示:
{
"myObject": {
"foo": ["bar2"]
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的objectMapper配置:
new ObjectMapper().configure(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY, true);
Run Code Online (Sandbox Code Playgroud)
有没有办法使用 Jackson 将重复的键反序列化到列表中?