• JSON是一种轻量级的数据格式,用于数据的交互。
  • Android交互数据主要两种方式:JSON和 XML。XML格式比JSON格式数量略大,所以大多都使用Json数据格式。
  • 在Android开发的过程中,数据访问 JSON解析就显得尤为重要。

示例JSON

{ name :"xqz", age:21, friends:["wzj","cgj","wl"] }

添加插件GsonFormat

 

 

添加依赖 gson

  

  

GsonFormat

  根据 JSON 数据自动创建实体类。

  • 创建一个实体类 JavaBean

【JavaBean】

public class JavaBean {

}
  • 右击或使用 Alt+S 快捷键

  

  

  

【结果】

public class JavaBean {

    /**
* name : xqz
* age : 21
* friends : ["wzj","cgj","wl"]
*/ private String name;
private int age;
private List<String> friends; public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public int getAge() {
return age;
} public void setAge(int age) {
this.age = age;
} public List<String> getFriends() {
return friends;
} public void setFriends(List<String> friends) {
this.friends = friends;
}
}

Gson

  • Gson是基于事件驱动的,根据所需要取的数据建立一个对应 JSON 数据的 实体类,可以通过Gson 将JSON数据赋值到 实体类上进行使用。

【MainActivity】

 String jsonStr = " { name :\"xqz\", age:21, friends:[\"wzj\",\"cgj\",\"wl\"] }";
JavaBean javaBean = new Gson().fromJson(jsonStr,JavaBean.class);
LogUtils.logi("MainActivity",javaBean.getName()+" ,age:"
+javaBean.getAge()+",friends:"+javaBean.getFriends().toArray());

【结果】

  

 

FastJson

  Fastjson是一个Java语言编写的高性能的JSON处理器,由阿里巴巴公司开发。

 implementation 'com.alibaba:fastjson:1.2.59'
 String jsonStr = " { name :\"xqz\", age:21, friends:[\"wzj\",\"cgj\",\"wl\"] }";
JavaBean javaBean =JSON.parseObject(jsonStr,new JavaBean);
LogUtil.logi("MainActivity",javaBean.getName()+" ,age:"
+javaBean.getAge()+",friends:"+javaBean.getFriends().toArray());

Gson 和 FastJson

  Gson功能更全,解析更加准确,Google公司开发。FastJson性能更好,采用独创的算法,阿里巴巴开发。

Android JSON解析插件的更多相关文章

  1. Android JSON解析库Gson和Fast-json的使用对比和图书列表小案例

    Android JSON解析库Gson和Fast-json的使用对比和图书列表小案例 继上篇json解析,我用了原生的json解析,但是在有些情况下我们不得不承认,一些优秀的json解析框架确实十分的 ...

  2. Android Json解析与总结

    一.JSON定义 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式. 易于人阅读和编写.同时也易于机器解析和生成. 它基于JavaScript Progra ...

  3. android json 解析简单实例

    Android JSON解析跟JAVA 的JSON解析原理是一样的. Android自带的JSON方式跟方便,不需要导包啥的.不深究原理了,直接上代码: public class JsonActivi ...

  4. android json解析及简单例子+Android与服务器端数据交互+Android精彩案例【申明:来源于网络】

    android json解析及简单例子+Android与服务器端数据交互+Android精彩案例[申明:来源于网络] android json解析及简单例子:http://www.open-open. ...

  5. Android JSON 解析关键代码

    Android Json 解析其实还是蛮重要的知识点,为什么这么说呢,因为安卓通信大部分的协议都是使用 json 的方式传输,我知道以前大部分是使用的 xml ,但是时代在发展社会在进步,json 成 ...

  6. yformater - chrome谷歌浏览器json格式化json高亮json解析插件

    yformater是一款chrome浏览器插件,用来格式化(高亮)服务端接口返回的json数据. 实际上小菜并不是第一个写这种插件的,但是现有的chrome json格式化插件实在是不太好用,索性小菜 ...

  7. android json解析及简单例子

    JSON的定义: 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性.业内主流技术为其提供了完整的解决方案(有点类似于正则表达式 ,获得了当今大部分语言的支持),从而可以在不同平台间进行数据 ...

  8. Android JSON 解析库的使用 - Gson 和 fast-json

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族 ...

  9. android Json解析详解

    JSON的定义: 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性.业内主流技术为其提供了完整的解决方案(有点类似于正则表达式 ,获得了当今大部分语 言的支持),从而可以在不同平台间进行数 ...

随机推荐

  1. Java语法进阶10-多线程

    多线程 并发与并行.进程,线程调度自行百度 线程(thread):是一个进程中的其中一条执行路径,CPU调度的最基本调度的单位.同一个进程中线程可以共享一些内存(堆.方法区),每一个线程又有自己的独立 ...

  2. django初始化

    Django 版本 安装 pip安装 pip install django 安装最新版本的 pip install django==1.11.11 安装指定版本的 验证安装 直接去代码中调用djang ...

  3. rsync通过服务同步、Linux系统日志、screen工具 使用介绍

    第8周5月15日任务 课程内容: 10.32/10.33 rsync通过服务同步10.34 linux系统日志10.35 screen工具 扩展1. Linux日志文件总管logrotate http ...

  4. Spring Cloud第四篇 | 客户端负载均衡Ribbon

    ​ 本文是Spring Cloud专栏的第四篇文章,了解前三篇文章内容有助于更好的理解本文: ​Spring Cloud第一篇 | Spring Cloud前言及其常用组件介绍概览 Spring Cl ...

  5. Python不再为字符集编码发愁,使用chardet轻松解决你的困扰。

    欢迎添加华为云小助手微信(微信号:HWCloud002 或 HWCloud003),输入关键字"加群",加入华为云线上技术讨论群:输入关键字"最新活动",获取华 ...

  6. 批量注释 control+/

    批量注释 control+/ You can comment and uncomment lines of code using Ctrl+斜杠.Ctrl+斜杠 comments or uncomme ...

  7. Tomcat eclipse 启动时一个工程影响另一个工程

    两个project:A, B;  工程 A 的 Jersey 服务是正常的, 工程 B 的 Jersey 服务是不正常的:如果工程 B 不存在的话, 工程 A 的 Jersey 服务可以在 Tomca ...

  8. OA项目之Mybatis多表链接查询

    xml文件: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC & ...

  9. JavaScript基础4

    数组 创建数组  A.通过构造函数创建数组 * a): var arr=new Array();//定义一个空数组,无长度的空数组. * b):var arr1=new Array(num); * 当 ...

  10. Asp.net MVC + AngularJS 统一权限管理系统(一)

    背景: 之前公司内部做了不少系统,但是权限管理都是分开的:一直都想能够有一套统一管理的权限管理系统:有的时间都是一直在计划,随着时间的流逝,计划始终没有实现,也随着项目的增多而这权限管理也变得版本多样 ...