关于JSON 字符串转换成List<Map<String,Object>>
1、使用 Jackson 库可以完成转换
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
public class StringToListOfMaps {
public static void main(String[] args) throws Exception {
String jsonString = "[{\"key1\": \"value1\", \"key2\": \"value2\"}, {\"key3\": \"value3\"}]";
ObjectMapper objectMapper = new ObjectMapper();
List<Map<String, Object>> listOfMaps = objectMapper.readValue(jsonString, new TypeReference<List<Map<String, Object>>>() {});
// 打印转换后的数据结构
for (Map<String, Object> map : listOfMaps) {
System.out.println(map);
}
//还可以再转换为Json字符串
String jsonString =JSON.toJSONString(listOfMaps);
}
}
2、使用Gson库中的fromJson()方法将字符串转换为对象
import com.google.gson.Gson;
public class StringToListOfMaps {
public static void main(String[] args) throws Exception {
String jsonString = "[{\"key1\": \"value1\", \"key2\": \"value2\"}, {\"key3\": \"value3\"}]";
Type listType = new TypeToken<List<Map<String, Object>>>(){}.getType();
List<Map<String, Object>> list = new Gson().fromJson(jsonString, listType);
//打印结果
System.out.println(list);
}
}