天天看点

json和map的互相转换,和list的相互转换 ,以及js中如何转换成json

1.json字符串如何转换成map。以及取出json中指定的某一对key value

json和map的互相转换,和list的相互转换 ,以及js中如何转换成json

json(Array数组)字符串 转换成list<Map<String,Object>>()

json和map的互相转换,和list的相互转换 ,以及js中如何转换成json

2.map如何转换成json字符串

json和map的互相转换,和list的相互转换 ,以及js中如何转换成json

3.js如何转换成json,有时后前台需要的数据会是个数组形式的,ajax不能像发单个值一样发送到后台,后台获取不到前台发的数组,这个时候只需要将数组转换成json字符传,发送到后台,后台用request直接就能将值取出,在利用方式1将json其转换成map就行了

(1)生成数组

json和map的互相转换,和list的相互转换 ,以及js中如何转换成json
json和map的互相转换,和list的相互转换 ,以及js中如何转换成json

(2)将数组转换成json,放入ajax data中

json和map的互相转换,和list的相互转换 ,以及js中如何转换成json

(3)前台获取datas的值

json和map的互相转换,和list的相互转换 ,以及js中如何转换成json

得到一串数组:[{“aaa”:“bbb”,“ccc”:“ddd”},{“eee”:“fff”,“ggg”:“hhh”},{…},{,}]

多重list转换成json字符串

//List<Map<String,Object>> LC = new ArrayList<>();
//LC的值 [{姓名=张三,年龄=19},{data=[{姓名=张三,年龄 = 20},{姓名=李四,年龄=18}]}]
JSONArray json = JSONArray.fromobject(LC);
String result = json.tostring();
           

类似于这种多重的json数组如何解析 一:

json和map的互相转换,和list的相互转换 ,以及js中如何转换成json

多重数组的JSON转换 二:

Object jsonstr = "[{"key1":"value1","key2":"value2","data":"[{"key3":"value3"},{"key4":"value4"}]"}]";
List<Map<String,Object>> listMap = (List<Map<String,Object>>)JSONArray.parse(jsonstr.toString());//将json转换为list<map>
Map<String,Object> map = listMap.get(0);//将list转换成map对象;
String data = map.get("data").toString();//得到map中的data值,他的值是一个ListMap的json
List<Map<String,Object>> listMap2 = (List<Map<String,Object>>)JSONArray.parse(data.toString());
for(Map map:listMap2){
   System.out.println(map);
}