json字符串和Gson类的使用

@Data
@AllArgsConstructor
@NoArgsConstructor
public class Person {

    private String name;
    private int age;


}
public static void main(String[] args) {
        Person person = new Person("Tom",20);
        Gson gson = new Gson();
        //对象和json字符串互转
//        String str = gson.toJson(person);
//        System.out.println(str);
//        Person person1 = gson.fromJson(str, Person.class);
//        System.out.println(person1);
        //List和json字符串互转
        Person person2 = new Person("Jack",24);
//        List<Person> list = new ArrayList<>();
//        list.add(person);
//        list.add(person2);
//
//        String listStr = gson.toJson(list);
//        System.out.println(listStr);
//
//        List<Person> list1= gson.fromJson(listStr,new TypeToken<ArrayList<Person>>(){}.getType());
//        list1.forEach(System.out::println);
        //Map和gson互转
        Map<String,Person> map = new HashMap<>(16);
        map.put("p1",person);
        map.put("p2",person2);

        String mapStr = gson.toJson(map);
        System.out.println(mapStr);
        Map<String,Person> map2= gson.fromJson(mapStr,new TypeToken<HashMap<String,Person>>(){}.getType());
        map2.values().forEach(System.out::println);
    }

 

posted @ 2021-06-22 17:24  jjtqwer  阅读(87)  评论(0)    收藏  举报