我需要使用Jackson解析字符串数组(标识符)。我在互联网上没有找到任何这样的例子,它们都展示了如何反序列化某个类的对象数组,但我只需要解析一个字符串数组(而不是为它编写一个模型类),我该怎么做呢?JSON示例:
[
"UUID",
"UUID",
...
]
发布于 2021-10-11 08:11:41
您可以使用带有TypeReference
的ObjectMapper.readValue()
方法来获取字符串列表:
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import java.io.IOException;
import java.util.List;
public class Test {
public static void main(String[] args) throws IOException {
String json = "[\"UUID\",\"UUID\"]";
ObjectMapper mapper = new ObjectMapper();
List<String> values = mapper.readValue(json,
new TypeReference<List<String>>() {});
}
}
或者,您可以使用带有String[].class
的ObjectMapper.readValue()
方法来获取字符串数组:
import com.fasterxml.jackson.databind.ObjectMapper;
import java.io.IOException;
public class Test {
public static void main(String[] args) throws IOException {
String json = "[\"UUID\",\"UUID\"]";
ObjectMapper mapper = new ObjectMapper();
String[] values = mapper.readValue(json, String[].class);
}
}
https://stackoverflow.com/questions/69522803
复制相似问题