json操作javabean list map
1.导入JSON的jar包 gson     bean对象
 Person p=new Person("why",1);
        //创建gson实例
        Gson gson=new Gson();
        //bean转为字符串 toJson
        String s = gson.toJson(p);
        System.out.println(s);
        //字符串转为对象
        Person person = gson.fromJson(s, Person.class);
        System.out.println(person);
1.map
匿名类  
HashMap<String,Person> map1=gson.fromJson(str, new TypeToken<HashMap<String,Person>>(){}.getType());
  //list集合
        List<Person> list=new ArrayList<>();
        list.add(new Person("why",0) );
        list.add(new Person("why1",1) );
        list.add(new Person("why2",2) );
        list.add(new Person("why3",3) );
        Gson gson=new Gson();
        String toJson = gson.toJson(list);
        System.out.println(toJson);
        //这样做是错误的
//        ArrayList<Person> fromJson = gson.fromJson(toJson, ArrayList.class);
//        System.out.println(fromJson.get(0).getClass());
//        System.out.println(fromJson.toString());
        //这样做的对的  找到一个类继承   TypeToken<ArrayList<Person>>匿名内部类也可以  
        ArrayList<Person> json = gson.fromJson(toJson, new personListType().getType());
        System.out.println(json.get(0));
2.Map集合
// 3、map 对象和 json 的转换
Map<string, person=""> mapPerson = new HashMap<string, gsontest.person="">();
// 添加 person 到 map 中
mapPerson.put("p1", new Person(1, "person-1"));
mapPerson.put("p2", new Person(2, "person-2"));
// 把 map 转换成为 json 对象
String jsonMapString = gson.toJson(mapPerson);
System.out.println(jsonMapString);
// 通过使用匿名内部类的方式
Map<string, person> map = gson.fromJson(jsonMapString, new TypeToken<hashmap<string, person="">>() {}.getType());
System.out.println(map);

                
            
        
浙公网安备 33010602011771号