欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Gson的简单使用

程序员文章站 2024-03-16 09:45:46
...

Gson是谷歌开发的一款Java实例与Json格式数据互相转换的工具。

一、引入Gson依赖包
  • Maven依赖
<dependency>
    <groupId>com.google.code.gson</groupId>
    <artifactId>gson</artifactId>
    <version>2.8.5</version>
</dependency>
二、如何使用

Gson的使用非常简单,只需要初始化一个Gson对象的实例,即可以开始使用。

Gson gson = new Gson();
  • Java对象转换为Json格式数据
String json = gson.toJson(JavaBean);
  • Json格式数据转换为Java对象
JavaBean javabean = gson.fromJson(json, JavaBean.class);

注意:

  1. 当字段值为null时,Gson默认会忽略该字段的赋值,也就是如果你的JavaBean是Map时,那么你得到的Map中将不会有该字段的key-value,使用时需要注意;
三、结合泛型进行使用
  • 定义一个含泛型的JavaBean
public class BackMessage<T> {
    private Boolean success;
    private String message;
    private List<T> data;
    ...
}
  • 使用Gson将json数据解析为BackMessage实例

这种写法无法正常解析,因为Gson无法识别到泛型的实际类型,所以BackMessage的List中实际装的是Map,并不是期望的Student

BackMessage<Student> backMessage = gson.fromJson(json,BackMessage.class);

为了能够准确解析数据,我们需要使用下面这种写法:

BackMessage<Student> backMessage = gson.fromJson(json, new TypeToken<BackMessage<Student>>() {}.getType());

这样Gson就能够准确识别到泛型的类型了。

相关标签: Gson