1、简述
> 数组 / 集合序列化 采用数组的形式 gson.fromJson(json, XXX[].class); 采用集合List的形式 gson.fromJson(json, new TypeToken<XXX>() {}.getType());
2.基本类
/** * 基本类 * @author sunRainAmazing */ @Data @NoArgsConstructor @AllArgsConstructor public class GsonEntity { private Integer id; private String name; private Date birthday; }
3、测试类
package sun.rain.amazing.gson.quickstart; import com.google.gson.Gson; import com.google.gson.GsonBuilder; import com.google.gson.reflect.TypeToken; import org.junit.Test; import sun.rain.amazing.gson.anno.coll.UserEntity; import sun.rain.amazing.gson.quickstart.arraylist.GsonEntity; import java.util.*; /** * @author sunRainAmazing */ public class GsonArrayListTest { GsonEntity user0 = new GsonEntity(101,"tom",new Date()); GsonEntity user1 = new GsonEntity(101,"tom",new Date()); GsonEntity user2 = new GsonEntity(101,"tom",new Date()); private Gson gson = new Gson(); /** *[{"id":101,"name":"tom","birthday":"Jul 5, 2018 3:52:48 PM"}, * {"id":101,"name":"tom","birthday":"Jul 5, 2018 3:52:48 PM"}, * {"id":101,"name":"tom","birthday":"Jul 5, 2018 3:52:48 PM"}] * [GsonEntity(id=101, name=tom, birthday=Thu Jul 05 15:52:48 CST 2018), * GsonEntity(id=101, name=tom, birthday=Thu Jul 05 15:52:48 CST 2018), * GsonEntity(id=101, name=tom, birthday=Thu Jul 05 15:52:48 CST 2018)] * [ * { * "id": 101, * "name": "tom", * "birthday": "2018-07-05" * }, * { * "id": 101, * "name": "tom", * "birthday": "2018-07-05"