Gson简要使用笔记
发布时间:2021-07-06 06:08:18 所属栏目:大数据 来源: https://www.jb51.cc
导读:Gson介绍: Gson 是 Google 提供的用来在 Java 对象和 JSON 数据之间进行映射的 Java 类库。可以将一个 JSON 字符串转成一个 Java 对象,或者反过来。 ? 常用的2个方法: Gson.toJson(Object src) --将对象进行json序列化 Gson.fromJson(String json,ClassT)
Gson介绍: Gson 是 Google 提供的用来在 Java 对象和 JSON 数据之间进行映射的 Java 类库。可以将一个 JSON 字符串转成一个 Java 对象,或者反过来。 ? 常用的2个方法: Gson.toJson(Object src) --将对象进行json序列化 Gson.fromJson(String json,Class<T>) --将json字符串反序列化成对象 ? 实体类: 1 @H_301_24@package com.tuzi.gson.domain; 2 3 public class Student { 4 5 private int id; 6 private String name; 7 age; 8 9 public Student(int id,String name, age) { 10 super(); 11 this.id =12 this.name = name; 13 this.age =14 } 15 16 getId() { 17 return18 19 20 void setId( id) { 21 22 23 24 public String getName() { 25 26 27 28 void setName(String name) { 29 30 31 32 getAge() { 33 34 35 36 void setAge(37 38 39 40 @Override 41 String toString() { 42 return "Student [age=" + age + ",id=" + id + ",name=" + name + "]"; 43 44 45 } ? 测试类: com.tuzi.gson.test; import java.util.ArrayList; 4 java.util.HashMap; 5 java.util.List; 6 java.util.Map; 7 8 com.google.gson.Gson; 9 com.google.gson.reflect.TypeToken; 10 com.tuzi.gson.domain.Student; 11 12 GsonTest { 13 14 static main(String[] args) { 15 16 //普通对象转换成json 17 Student student1=new Student(1,"tuzi",22); 18 Gson gson=new Gson();实例化一个Gson对象 19 String info1=gson.toJson(student1); 20 System.out.println("普通对象转换成json:"+info1); 21 22 json反序列化(info1) 23 Student student2=gson.fromJson(info1,Student.24 System.out.println("json字符串反序列化:"+student2.toString()); 25 System.out.println(); 26 27 28 list集合(Student)对象转换成json 30 List<Student> list=new ArrayList<Student>31 Student student3=new Student(3,"xiaoming",1)">32 Student student4=new Student(4,"xiaofang",1)">33 list.add(student3); list.add(student4); 35 String info2=gson.toJson(list); 36 System.out.println("list集合(Student)对象转换成json:"+info2); 37 38 json反序列化(info2) 39 List<Student> students=gson.fromJson(info2,1)">new TypeToken<List<Student>>(){}.getType());TypeToken是Google提供的一个解析Json数据的类库中一个类(任意类型) 40 System.out.println("json字符串反序列化:"+students.toString()); 41 42 43 44 list集合(Map)对象转换成json 45 List<Map<String,Object>> list2=new ArrayList<Map<String,Object>>46 Map<String,Object> map1=new HashMap<String,Object>47 map1.put("id",548 map1.put("name","小白"49 map1.put("age",1150 51 Map<String,Object> map2=52 map2.put("id",1)">53 map2.put("name","小黑"54 map2.put("age",1355 56 list2.add(map1); 57 list2.add(map2); 58 59 String info3=gson.toJson(list2); 60 System.out.println("list集合(Map)对象转换成json:"+info3.toString()); 61 62 63 List<Map<String,Object>> list4=gson.fromJson(info3,1)">new TypeToken<List<Map<String,Object>>>(){}.getType()); 64 System.out.println("json字符串反序列化:"+list4.toString()); 65 66 67 68 69 } ? 运行效果: (编辑:北几岛) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |