@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);
}