Gson的使用

来源:互联网 发布:mysql存储过程 编辑:程序博客网 时间:2024/06/15 20:52

Gson的使用

开发环境:Android Studio

一、添加依赖

1.1 使用Project Structure添加

1.1.1 右击项目,选择Open Module Settings打开Project Structure(也可以使用快捷键F4)。

1.1.2 选择要添加依赖的Module,Dependencies,点击+选择方式Library dependency。

1.1.3 输入gson,查询。选择添加。别忘了点击OK。

1.2 在build.gradle中添加

compile 'com.google.code.gson:gson:2.8.0'

二、安装GsonFormat

2.1 点击File选择Settings(快捷键Ctrl+Alt+S),选择Plugins搜索Gson。

2.2 选择GsonFormat安装。

2.3 安装完成后,重启Android studio。

2.4 重启Android studio后,右键选择Generate,选择GsonFormat。

2.4 将报文复制进去,点击Ok。

2.5 自动生成实体了,是不是很方便呢。


三、Gson的使用

3.1 使用Gson将Entity转为Json字符串

3.2 使用Gson将结构复杂的Json字符串转为entity

假设登陆接口的返回报文是这样的:

利用GsonFormat自动生成LoginEntity。

使用Gson解析

查看日志

3.3 基本数据类型解析

3.4 使用Gson解析Json字符串

3.5 使用Gson将Json字符串转为List

查看fromJson源码

使用formJson方法解析时,需要传入一个泛型类型参数。但是Java没有提供一种在运行时表示泛型类型的方式(使用了泛型的代码在运行期间相关的泛型参数的类型会被擦除,我们无法在运行期间获知泛型参数的具体类型,所有的泛型类型在运行时都是Object类型)。为了解决这个问题,Gson提供了一个TypeToken{}类,该类在创建时强制用户传入一个可供检索泛型类型类的子类,可以使用该类的getType()返回泛型类型。

使用Gson解析时,可以new一个TypeToken{}并传入泛型类型,通过getType()方法拿个泛型类型传入。

假设List的报文格式是这样的:

使用Gson解析

查看日志

其他泛型类型解析类似,此处不再赘述。

0 0
原创粉丝点击