new ObjectMapper().readValue set集合
时间: 2023-08-03 09:11:30 浏览: 129
`ObjectMapper` 是 Jackson 库中用于处理 JSON 的核心类之一。`readValue` 方法可以将 JSON 字符串转换为 Java 对象。
如果 JSON 中包含了一个集合类型,比如 Set,那么可以将其转换为 Java 中的 Set 对象。示例代码如下:
```java
String json = "[\"apple\", \"banana\", \"orange\"]";
Set<String> set = new ObjectMapper().readValue(json, new TypeReference<Set<String>>(){});
```
这里的 `TypeReference` 是 Jackson 提供的一个工具类,用于获取泛型类型的实际参数类型。在转换 Set 类型时,需要传递一个 `TypeReference` 对象,用于指定 Set 元素类型为 String。
如果 JSON 中的集合包含了复杂对象,也可以通过类似的方式进行转换。例如:
```java
String json = "[{\"name\":\"张三\",\"age\":20},{\"name\":\"李四\",\"age\":25}]";
Set<Person> set = new ObjectMapper().readValue(json, new TypeReference<Set<Person>>(){});
```
这里的 `Person` 是一个简单的 POJO 类,包含了 `name` 和 `age` 属性。转换过程中,Jackson 会将 JSON 中的每个对象都转换为一个 `Person` 对象,并添加到 Set 集合中。
阅读全文