GSON是由Google提供的,用于JAVA对象与JSON字符串之间互相转换的一个解决方案。
用处很多,比如在前后台通讯中,前台先将java对象转化成JSON,然后将JSON传输给后台交由后台处理——相较于JAVA对象来说,JSON不仅传输起来更方便,而且处理起来也更加灵活,不仅可以用JAVA处理,也可以用诸如PHP等其他语言。
方法:
gson.toJson()):就是通过Gson我们可以把java中的对象转换成Json字符串.
gson.fromJson():把Json字符串转换为一个对象.
获取泛型参数的类型的方法:Type token = new TypeToken<Student>(){}.getType();
演示代码:
实体类:
import java.util.List; public class Student { public String name; public int age; public List<String> score; }
String jsonData = "{'score':['90','20','50'],'age':18,'name':'张三'}"; Gson gson = new Gson(); Type token = new TypeToken<Student>(){}.getType(); Student student = gson.fromJson(jsonData, Student.class); System.out.println("name=" + student.name); Student student2 = gson.fromJson(jsonData, token); System.out.println("age=" + student2.age); Student student1 = new Student(); student1.age = 18; student1.name = "张三"; ArrayList<String> list = new ArrayList<>(); list.add("90"); list.add("20"); list.add("50"); student.score = list; String s1 = gson.toJson(student1); System.out.println("s1:"+s1); String s2 = gson.toJson(student1,token); System.out.println("s2:"+s2);
输出结果: