关于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);
    }
}