将多层次的json字符串转为java对象,比如:
List<Map<String, String>>,其中List,Map,String可以为任何自定义的对象,由于经常忘记具体写法,故记下。
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.TypeReference;
public class Temp {
public static void main(String[] args) {
List<Map<String, String>> list = new ArrayList<>();
Map<String, String> map = new HashMap<>();
map.put("1", "1");
map.put("2", "2");
map.put("4", "3");
Map<String, String> map2 = new HashMap<>();
map2.put("1", "1");
map2.put("2", "2");
map2.put("4", "3");
list.add(map);
list.add(map2);
String str = JSONObject.toJSONString(list);
System.out.println(str);
list = JSONObject.parseObject(str, new TypeReference<List<Map<String, String>>>() {
});
System.out.println(list);
}
}
输出结果如下:
[{"1":"1","2":"2","4":"3"},{"1":"1","2":"2","4":"3"}]
[{1=1, 2=2, 4=3}, {1=1, 2=2, 4=3}]