【转】GSON 完整版使用教程-原文基础上进行补充

转载地址:https://www.jianshu.com/p/923a9fe78108

参考文档:https://blog.csdn.net/wyb112233/article/details/50179659

Gson是google推出的用于Java对象和JSON之间序列化和反序列化的公开库。使用Gson可以使我们的JSON解析工作更加方便。

如果你还不懂得JSON是什么,请查看它的JSON官方文档,我觉得这是最言简意赅的说明。

如果你想从大体上知道Gson用法而不追究细节,那么你可以先大体的浏览一下Gson的官方用户指南。它的原址在这里Gson User Guide。如果你不喜欢看英文,我也为你提供了我的翻译Gson用户指南(译)

好了,现在你大体上对JSON和Gson有个大概的了解了,是时候深入到细节了。本篇文章介绍Gson的基础用法,主要分为三个部分,映射,配置和构建。

总览

 

映射

该部分主要是对Java的一些主要类型的映射做了讲解,包括各种集合、嵌套对象、空值等。具体查看如下教程
Gson教程一(译):Java-JSON的序列化和反序列化
Gson教程二(译):嵌套对象的序列化和反序列化
Gson教程三(译):Arrays和Lists的映射
Gson教程四(译):Maps的映射
Gson教程五(译):Sets的映射
Gson教程六(译):空值的映射
放一张本部分的思维导图,有助于学习后的记忆

上述的资料都要求构建的数据结构的名称和Json数据名称一致,使用 gson.fromJson(String,Object.class)的方式完成分析,但实际使用过程中还会有其他情况。比如提取几个json文件中的不同数据统一放在一个数据结构中。这个时候就需要使用JsonParser()将string进行一次解析,解析成GSON支持的数据结构。

JsonObject obj = new JsonParser().parse(json).getAsJsonObject();

上边的String json的数据就会解析成由JsonArray,JsonObject等数据结构构成的新的数据结构,在将这个数据结构进行解析,提取出需要的信息,在填充到我们的数据结构中就可以完成数据解析。

 

配置

该部分主要讲解了两个常用注解的作用@SerializedName和@Expose:
Gson教程七(译):@SerializedName和@Expose
局部思维导图:

 

构建

该部分主要讲解了通过GsonBuilder来为我们的Gson实例添加各种功能,使它更符合我们的需求。
Gson教程八(译):GsonBuilder基础以及命名策略
Gson教程九(译):强制序列化null值
Gson教程十(译):Exclusion Strategies
Gson教程十一(译):轻松使用仁慈的Gson(容错机制)
Gson教程十二(译):Float和Double类型的特殊值
Gson教程十三:模型版本化、日期格式化、漂亮输出
局部思维导图:

 

总结

本篇文章主要总结了之前的翻译,我觉得该系列教程对Gson的用法做了详尽的探讨,而且内容对于读者来说也很友好,非常适合Gson的学习。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值