1.Google Gson在android studio的使用

  gradle:compile 'com.google.code.gson:gson:2.2.4'

2.Gson 注解

  @Expose

  注解的作用是序列化和反序列化的时候暴露给Gson,没有这个注解,字段可以不被转换

  @SerializedName

  此注解作用在属性上,表明这个属性在序列化成Json的时候,需要将名字序列化成注解的value属性指定的值。

  @Since和@Until具体查看Api文档

3.使用

  1)实体类

  public class User {

    @Expose
@SerializedName("user_name")
private String userName; @Expose
private int id;   private int age; public String getUserName() {
return userName;
} public void setUserName(String userName) {
this.userName = userName;
} public int getId() {
return id;
} public void setId(int id) {
this.id = id;
}
    public int getAge() {
return age;
} public void setAge(int age) {
this.age = age;
}
}

  2)json数据

  {"user_name":"Andi","id":20,"age":27}

  3)解析

  Gson gson = new Gson();

  User user = gson.fromJson(json字符串数据, User.class);

  

  不转换没有 @Expose 注解的字段

  GsonBuilder builder = new GsonBuilder();

  builder.excludeFieldsWithoutExposeAnnotation();

  Gson gson = builder.create();

  User user = gson.fromJson(json字符串数据,new TypeToken<User>() {}.getType());

  这样user对象的age是0,没有从json中转换

  

【声明】

欢迎转载,但请保留文章原始出处

博客地址:http://www.cnblogs.com/lping/

文章来源:http://www.cnblogs.com/lping/p/5470588.html

Google Gson使用简介的更多相关文章

  1. Google Gson 使用简介

    http://www.cnblogs.com/haippy/archive/2012/05/20/2509329.html

  2. Android网络之数据解析----使用Google Gson解析Json数据

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  3. Java创建和解析Json数据方法(五)——Google Gson包的使用

    (五)Google Gson包的使用 1.简介 Gson包中,使用最多的是Gson类的toJson()和fromJson()方法:         ①toJson():将java对象转化为json数据 ...

  4. [转]Json转换神器之Google Gson的使用

    这几天,因为项目的需要,接触了Google的Gson库,发现这个东西很好用,遂记下简单的笔记,供以后参考.至于Gson是干什么的,有什么优点,请各位同学自行百度.话不多说,切入正题: 1. 下载Gso ...

  5. [转]使用 google gson 转换Timestamp或Date类型为JSON字符串.

    创建类型适配类: import java.lang.reflect.Type; import java.sql.Timestamp; import java.text.DateFormat; impo ...

  6. 使用 google gson 转换Timestamp或Date类型为JSON字符串.

    http://blog.csdn.net/z69183787/article/details/13016289 创建类型适配类: import java.lang.reflect.Type; impo ...

  7. Exception in thread “main” com.google.gson.JsonSyntaxException: java.lang.NumberFormatException: empty String

    String json="A valid json"; Job job = new Gson().fromJson(json, Job.class); Exception in t ...

  8. org.json.JSONObject与com.google.gson.Gson

    org.json库为JSON创始人编写的解析JSON的java库,Gson为Google为我们提供的解析JSON格式数据的库. Gson里最重要的对象有2个Gson 和GsonBuilder. Gso ...

  9. 使用 google gson 转换Timestamp为JSON字符串

    package com.test.base; import java.lang.reflect.Type; import java.sql.Timestamp; import java.text.Da ...

随机推荐

  1. MySQL学习点滴 --分区表

    写在前面:笔者之前也有一些MySQL方面的笔记,其中部分内容来自极客时间中丁奇老师的课程.后经园友提醒,这个做法确实不太好.之后我仍会继续更新一下MySQL方面的学习记录,在自己理解之后用自己的方式记 ...

  2. Sql按照字段分组,选取其他字段最值所在的行记录

    引言: 为什么会引入这个问题,在程序中遇到这样的问题,在某个数据表中,相同的AID(项目ID)被多次添加到数据表中,所以对应于不同的时间,只想选取添加时间最早的哪一条记录. 参考:红黑联盟 所用到的数 ...

  3. c++值传递和引用及指针传递区别

    以下程序各有何问题? ***************************************************************************************** ...

  4. JSP表达式语言(EL)

    JSP表达式语言(EL)使得访问存储在JavaBean中的数据变得非常简单.JSP  EL既可以用来创建算术表达式也可以用来创建逻辑表达式.在JSP  EL表达式内可以使用整数型.浮点型.字符串.常量 ...

  5. ssm依赖

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...

  6. nmon分析与详解

    1.命令安装 1.查看liunx版本版本x86_64_14i 目录:cd /nmon/logs/ 版本x86_64_14i [root@localhost u06]# cd / [root@local ...

  7. 如何安装python包

    安装python包有两种方法: 使用Python包管理器pip工具 在Linux系统中,首先 yum install python-pip 然后就可以欢快的pip install *** 啦 源代码安 ...

  8. 图论trainning-part-1 D. Going in Cycle!!

    D. Going in Cycle!! Time Limit: 3000ms Memory Limit: 131072KB 64-bit integer IO format: %lld      Ja ...

  9. Oracle中有关数学表达式的语法

    Oracle中有关数学表达式的语法 三角函数 SIN               ASIN              SINHCOS             ACOS           COSHTA ...

  10. 简单的发红包的PHP算法

    假设有有10元钱 ,发给10个人.保证每个人都有钱拿,最少分得0.01.我们最先想到的肯定就是随机.0.01-10随机.但是会出现第一个人就分得9.99的情况.下面就没人可分了.然后就是我的错误思路 ...