Gson的简单使用

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进行设置

从GsonBuilder中获取Gson类实例,可以对Gson进行一些设置

GsonBuilder builder = new GsonBuilder();
builder.setFieldNamingPolicy(FieldNamingPolicy.UPPER_CAMEL_CASE);//设置字段首字母大写
gsonWithUpper = builder.create();

还有很多其他的设置,可以看下API或者在网上搜索。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值