Android Gson使用入门及GsonFormat插件的使用

Gson 是 Google 官方提供的用来在 Java 对象和 JSON 之间进行互相转换的Java类库。

我之前在使用Eclipse开发Android的时候,并没有经常使用Gson,而是使用原生的JSONObject解析,最近转用Android Studio,配合该IDE里面强大的插件,使用Gson很大程度地提高了开发效率。本篇博客将介绍Gson的基本使用方法,配合实际案例体会Gson带来的便捷开发体验。

1、待解析的Json数据

{
  "code": 0,
  "msg": "轮播会议获取成功",
  "records": [
    {
      "joinNumber": 3,
      "id": 10,
      "startDateStr": "2016-10-26 09:00 星期三",
      "theme": "2016年度海外高层次人群聚会"
    },
    {
      "joinNumber": 3,
      "id": 1,
      "startDateStr": "2016-10-24 08:00 星期一",
      "theme": "2016年度苏州医疗会议"
    }
  ]
}

2、创建对应的JavaBean:MeetingData.java

package com.leohan.gsondemo;

import java.util.List;

/**
 * Created by Leo on 16/3/14.
 */
public class MeetingData {

    /**
     * code : 0
     * msg : 轮播会议获取成功
     * records : [{"joinNumber":3,"id":10,"startDateStr":"2016-10-26 09:00 星期三","theme":"2016年度海外高层次人群聚会"},{"joinNumber":3,"id":1,"startDateStr":"2016-10-24 08:00 星期一","theme":"2016年度苏州医疗会议"}]
     */

    private int code;
    private String msg;
    /**
     * joinNumber : 3
     * id : 10
     * startDateStr : 2016-10-26 09:00 星期三
     * theme : 2016年度海外高层次人群聚会
     */

    private List<RecordsEntity> records;

    public void setCode(int code) {
        this.code = code;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }

    public void setRecords(List<RecordsEntity> records) {
        this.records = records;
    }

    public int getCode() {
        return code;
    }

    public String getMsg() {
        return msg;
    }

    public List<RecordsEntity> getRecords() {
        return records;
    }

    public static class RecordsEntity {
        private int joinNumber;
        private int id;
        private String startDateStr;
        private String theme;

        public void setJoinNumber(int joinNumber) {
            this.joinNumber = joinNumber;
        }

        public void setId(int id) {
            this.id = id;
        }

        public void setStartDateStr(String startDateStr) {
            this.startDateStr = startDateStr;
        }

        public void setTheme(String theme) {
            this.theme = theme;
        }

        public int getJoinNumber() {
            return joinNumber;
        }

        public int getId() {
            return id;
        }

        public String getStartDateStr() {
            return startDateStr;
        }

        public String getTheme() {
            return theme;
        }
    }
}

首先分析一下要解析的Json数据,它包含了一个字段名为”records”的JsonArray。

由此,我们生成该Json数据对应的JavaBean,并在里面创建了records数组对应的内部类RecordsEntity。

3、使用Gson解析Json数据

 Gson gson = new Gson();
        MeetingData meetingData = gson.fromJson(jsonStr, MeetingData.class);
        List<MeetingData.RecordsEntity> records = meetingData.getRecords();

运行程序,打印records对象:

至此就已经完成了Json对象的解析。Gson的其它用法,如处理泛型等就不展开阐述了。

4、使用GsonFormat插件加速开发

在第二步里,新建了一个JavaBean对应于待解析的Json数据。有没有直接辅助生成JavaBean的插件呢?Introducing GsonFormat

那么,GsonFormat插件如何使用呢?

  • Preferences –> plugins –>搜索GsonFormat安装

  • 安装完以后新建一个JavaBean,如图所示操作:

  • 在弹出的界面中填入要解析的Json数据

    点击OK,GsonFormat就可以自动帮我们创建好这个JavaBean了。

源码点击下载

时间: 2024-10-11 22:17:20

Android Gson使用入门及GsonFormat插件的使用的相关文章

Android中 GsonFormat插件解析Jason 数据+和风天气接口解析案例

首先 转载自http://www.cnblogs.com/androidsuperman/p/4579249.html     感谢 @西北野狼  同学. 第一部分: GsonFormat 插件基本使用方法 很久以前写json解析用原始的解析json的方法,后来为了加快开发进度,开始使用gson,fastjson等第三方jar包来进行json解析,为了保持apk足够小,不因为引入jar包导致apk文件过大,选择使用gson来加速json解析,当然,去年androidstudio 1.0版本出来,

Android Wear 开发入门

大家好,我是陆嘉杰,我是一名Android开发者.我想和大家进行一些技术交流,希望越来越多的人能和我成为好朋友. 大家都知道,智能手表是下一个开发的风口,而这方面的技术又属于前沿,所以和大家分享下Android Wear的开发流程. 首先,我推荐大家使用Android Studio来进行Wear的开发,这也是谷歌推荐的,本次讲授过程也将以Android Studio作为开发集成环境进行. 下面我们来创建Android Wear项目. 请注意,Android Wear项目中同时包含mobile和w

Android jni 编程入门

本文将介绍如何使用eclipse和ndk-build来编写一个基于Android4.4版本的包含有.so动态库的安卓程序. 前提是已经安装和配置好了诸如SDK,NDK等编译环境.下面开始编程! 1 程序逻辑 我们要编写的程序包含两部分:java部分--负责界面和调用JNI native函数:JNI native 部分--负责native函数的具体实现(本文使用C语言). native 函数伪代码如下: ? 1 2 3 4 5 6 7 8 /* funtion: 传入两个整形变量,计算他们之和 r

Android 学习资料入门到精通(PDF集合)共54本

最近收集一些安卓入门到精通,包含游戏编程,网络编程,多媒体开发,需要学习朋友就下载保持下来,下载链接在最下面 下面是网盘内容 14天学会安卓开发_(完整版).pdf Android 4  游戏高级编程  第2版.pdf Android 4.4 SDK Reference(2014.1.12 by YGX).chm Android 4高级编程(第3版)(完整书签).pdf Android(经典实例).pdf Android_2.0游戏开发实战宝典.pdf Android_开发从入门到精通_IBM.

《Android开发从入门到精通》扶松柏.扫描版.pdf

下载地址:网盘下载 内容简介 编辑 <Android开发从入门到精通>系统讲解了Android软件开发的基础知识,图文并茂地帮助读者学习和掌握SDK.开发流程以及常用的API等.书中以讲述实战实例为导向,用一个个典型应用生动地引领读者进行项目开发实践.<Android开发从入门到精通>是一本内容翔实,理论实践紧密结合的教程. [1] 目录 编辑 第1章 走进Android世界 1.1 智能手机飞速发展 1.1.1 主流手机系统介绍 1.1.2 Android横空出世 1.2 And

android的简单入门学习

话说光配环境就整死我了, 不是说多么难, 是最近google被屏了, 很多sdk里面需要下载的东西都下不下来, 坑爹啊.  最后跟扫拉稀要了一个他配置好的,才运行了. android目录分析: assets 资产目录,存放文件,这些文件会被打包到应用程序的apk(安装包) bin 编译后的文件目录 gen 目录自动生成的目录 project.properties 代表编译的版本 target = "" 来修改编译版本 libs 支持jar包 会被添加到android depend 目录

Android与Libgdx入门实例

本文讲解如何实现Android与Libgdx各自的Hello World过程. 1. Android版Hello World 点击Eclipse快捷方式,选择New Android Application,创建project,填写相应名称. 2. 然后一路next,选择默认就ok了. 3. 创建的程序文件模型. 3. 修改界面显示字符串. 4. 选择工程,点击Run As-Android Application,即可. 若无android手机,可以创建模拟器. 选择Window-Android

Android 自定义控件开发入门(一)

作为一个有创意的开发者,或者软件对UI设计的要求比较高,你经常会遇到安卓自带的控件无法满足你的需求的情况,这种时候,我们只能去自己去实现适合项目的控件.同时,安卓也允许你去继承已经存在的控件或者实现你自己的控件以便优化界面和创造更加丰富的用户体验. 那么怎样来创建一个新的控件呢? 这得看需求是怎样的了. 1.需要在原生控件的基本功能上进行扩展,这个时候你只需要继承并对控件进行扩展.通过重写它的事件,onDraw ,但是始终都保持都父类方法的调用.如从已有的高级控件上继承,例如继承一个TextVi

Android 自定义控件开发入门(二)

上一次我们讲了一堆实现自定义控件的理论基础,列举了View类一些可以重写的方法,我们对这些方法的重写是我们继承View类来派生自定义控件的关键 我通过一个最简单的例子给大家展示了这一个过程,无论是多么复杂的自定义控件,思路总是这样子的,但是因为我们仅仅重写了onDraw方法使得大家觉得怪怪的,作为一个控件,我们居然还要为了他的实现为其增加麻烦的监听,这就不能叫做控件了. 下面再给大家介绍一个经常重写的方法法:publicboolean onTouchEvent (MotionEvent even