[{“id”:123},{“id”:456}]这种字符串在JAVA中如何转成List<map>结构
时间: 2024-09-13 10:10:22 浏览: 44
在Java中,要将形如`[{"id":123},{"id":456}]`的JSON格式字符串转换为`List<Map<String, Object>>`结构,可以使用一些流行的JSON处理库,例如Jackson或Gson。以下是使用这两个库进行转换的示例代码:
使用Jackson:
```java
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.core.type.TypeReference;
import java.util.List;
import java.util.Map;
public class JsonToList {
public static void main(String[] args) throws Exception {
String jsonStr = "[{\"id\":123},{\"id\":456}]";
ObjectMapper mapper = new ObjectMapper();
// 使用TypeReference来提供泛型的参数类型
List<Map<String, Object>> list = mapper.readValue(jsonStr, new TypeReference<List<Map<String, Object>>>() {});
// 输出转换后的List<Map<String, Object>>
System.out.println(list);
}
}
```
使用Gson:
```java
import com.google.gson.Gson;
import java.util.List;
import java.util.Map;
public class JsonToList {
public static void main(String[] args) {
String jsonStr = "[{\"id\":123},{\"id\":456}]";
Gson gson = new Gson();
// 直接将JSON字符串转换为指定的泛型类型
List<Map<String, Object>> list = gson.fromJson(jsonStr, new TypeToken<List<Map<String, Object>>>(){}.getType());
// 输出转换后的List<Map<String, Object>>
System.out.println(list);
}
}
```
在这两个示例中,我们首先导入了所需的库类,然后创建了一个JSON字符串。通过创建`ObjectMapper`或`Gson`对象,我们可以使用`readValue`方法将JSON字符串解析成`List<Map<String, Object>>`类型的对象。
注意:在使用Gson之前,需要将Gson库添加到项目的依赖中;在使用Jackson之前,同样需要添加Jackson的依赖。
阅读全文