1、Android 中的Json解析工具fastjson 、序列化、反序列化

2、Android Gson的使用总结

可以处理含有内部类的类,或包含集合内部类的类;

3、Android-JSONTool 一个简易的Json框架类,小到只有一个类

有时为了简化代码的大小,尽可能的压缩apk的大小。就不能再使用大而全的框架了。

4、在线Json解析

http://www.bejson.com/

http://json.cn/#

/////---------------------------

2、Android Gson的使用总结

1、概念

Gson是谷歌发布的一个json解析框架

2、如何获取

github:https://github.com/google/gson

android studio使用

1

compile 'com.google.code.gson:gson:2.7'

查看 最新版本号

下载最新的jar包 ,http://search.maven.org/#search%7Cga%7C1%7Ccom.google.code.gson

3、基于Gson封装的简单工具类JsonUtil

package com.zyj.app.util;

public class JsonUitl {

private static Gson mGson = new Gson();

/**

* 将json字符串转化成实体对象

* @param json

* @param classOfT

* @return

*/

public static Object stringToObject( String json , Class classOfT){

return  mGson.fromJson( json , classOfT ) ;

}

/**

* 将对象准换为json字符串 或者 把list 转化成json

* @param object

* @param <T>

* @return

*/

public static <T> String objectToString(T object) {

return mGson.toJson(object);

}

/**

* 把json 字符串转化成list

* @param json

* @param cls

* @param <T>

* @return

*/

public static <T>  List<T> stringToList(String json ,Class<T> cls  ){

Gson gson = new Gson();

List<T> list = new ArrayList<T>();

JsonArray array = new JsonParser().parse(json).getAsJsonArray();

for(final JsonElement elem : array){

list.add(gson.fromJson(elem, cls));

}

return list ;

}

}

4、JsonUtil的简单测试

4.1、定义bean对象

package com.zyj.app.bean;

/**

* Created by ${zyj} on 2016/9/5.

*/

public class Me {

String name ;

String age ;

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public String getAge() {

return age;

}

public void setAge(String age) {

this.age = age;

}

}

4.2、测试代码

List<Me> list = new ArrayList<>() ;

Me me1 = new Me() ;

me1.setName( "name111");

me1.setAge( "age111");

Me me2 = new Me() ;

me2.setName( "name222");

me2.setAge( "age222");

Me me3 = new Me() ;

me3.setName( "name333");

me3.setAge( "age333");

list.add( me1 ) ;

list.add( me2 ) ;

list.add( me3 ) ;

//测试一:把list对象转换成json字符串

String json1 = JsonUitl.objectToString( list  ) ;

//日志打印

KLog.d( "测试一 " + json1 );

//测试二:把json字符串转化成list集合

List<Me> listMe = JsonUitl.stringToList( json1 , Me.class ) ;

//日志打印

for ( Me meTest : listMe ){

KLog.d( "测试二 " + "name: " + meTest.getName() + " age: " + meTest.getAge() );

//测试三 : 把对象转化成json字符串

String jsonTest3 = JsonUitl.objectToString( meTest ) ;

KLog.d( "测试三 " + jsonTest3  );

}

4.3、测试结果

测试一 [{"age":"age111","name":"name111"},{"age":"age222","name":"name222"},{"age":"age333","name":"name333"}]

测试二 name: name111 age: age111

测试三 {"age":"age111","name":"name111"}

测试二 name: name222 age: age222

测试三 {"age":"age222","name":"name222"}

测试二 name: name333 age: age333

测试三 {"age":"age333","name":"name333"}

json--处理框架的更多相关文章

  1. Spring Boot默认的JSON解析框架设置

    方案一:启动类继承WebMvcConfigurerAdapter,覆盖方法configureMessageConverters ... @SpringBootApplication public cl ...

  2. 十七、springboot配置FastJson为Spring Boot默认JSON解析框架

    前提 springboot默认自带json解析框架,默认使用jackson,如果使用fastjson,可以按照下列方式配置使用 1.引入fastjson依赖库: maven: <dependen ...

  3. springboot使用fastJson作为json解析框架

    springboot使用fastJson作为json解析框架 springboot默认自带json解析框架,默认使用jackson,如果使用fastjson,可以按照下列方式配置使用 〇.搭建spri ...

  4. 移动架构-json解析框架

    JSON在现在数据传输中占据着重要地位,相比于xml,其解析和构成都要简单很多,第三方的解析框架也不胜枚举,这里之所以要自定义一个json解析框架,一方面是更好的了解json解析过程,另一方面是有时候 ...

  5. JSON数据处理框架Jackson精解第一篇-序列化与反序列化核心用法

    Jackson是Spring Boot默认的JSON数据处理框架,但是其并不依赖于任何的Spring 库.有的小伙伴以为Jackson只能在Spring框架内使用,其实不是的,没有这种限制.它提供了很 ...

  6. Snack3 3.2 发布,轻量的Json+Jsonpath框架

    Snack3 是一个轻量的 JSON + Jsonpath 框架. 借鉴了 Javascript 所有变量由 var 申明,及 Xml dom 一切都是 Node 的设计.其下一切数据都以ONode表 ...

  7. Android Json处理框架

    1.Android 中的Json解析工具fastjson .序列化.反序列化 2.Android Gson的使用总结 3.Android-JSONTool 一个简易的Json框架类,小到只有一个类 有 ...

  8. 速度最快的Json序列框架Jil,入门动手实录

    好吧,我又先要贴出跑分图了,出处 Jil是一个面向Json的序列化框架,在Nuget上可以下载到 支持数据类型 值得一提的是,Guid指定带破折号格式(44B2673B-B5CA-477B-A8EA- ...

  9. 4. 使用别的json解析框架【从零开始学Spring Boot】

    转载:http://blog.csdn.net/linxingliang/article/details/51585921 此文章已经废弃,请看新版的博客的完美解决方案: 78. Spring Boo ...

  10. SpringMVC+Hibernate+Junit4+json基本框架近乎0配置

    公司是做APP开发的,须要后台来提供接口,于是乎,这个任务就交给我,经过重复的尝试,学习和參考别人的demo,最终搭出自己还算惬意的框架.SpringMVC+Sping3+Hibernate4+Jun ...

随机推荐

  1. python os模块使用笔记(更新)

    import os 添加os模块 walk方法: os.walk(path) path是string形式的目标目录 生成一个某目录下递归树形目录迭代器,方便递归访问子目录,访问目录就能够轻松访问子文件 ...

  2. LeetCode - Convert BST to Greater Tree

    Given a Binary Search Tree (BST), convert it to a Greater Tree such that every key of the original B ...

  3. 新一代构建工具gradle学习

    简介:Gradle的出现,是技术发展的必然,站在了Ant.maven等构建工具的肩膀上,使用了一种强大且具有表达性的基于Groovy的领域特定语言(DSL),使其拥有易用且灵活的方式去实现定制逻辑.方 ...

  4. Next generation configuration mgmt

    转自:https://purpleidea.com/blog/2016/01/18/next-generation-configuration-mgmt/ It’s no secret to the ...

  5. mysql创建部分索引

    mysql中,字符串如何建立索引的(本文中截取一部分) 只对字符串的前几个字符进行索引.通过字符串的前几个字符我们已经能大概排序字符串了,剩下不能排序的可以通过遍历进行查找啊,这样只在B+树中存储字符 ...

  6. 微软和Sun针对Java的世纪之战

    1996年9月的某一天,微软浏览器部门的主管艾达姆·波茨瓦斯几经考量之后,提笔给时任微软CEO的比尔·盖茨写了一邮件,他非常恳切地提醒比尔·盖茨注意一个正在形成的威胁.他写到:”必须意识到Java不仅 ...

  7. 标 题: JavaScript真的要一统江湖了

    http://www.newsmth.net/nForum/#!article/Python/125347?p=4 标  题: JavaScript真的要一统江湖了 发信站: 水木社区 (Fri Se ...

  8. [转]JDK自带工具之问题排查场景示例

    最近看到了大量关于java性能调优.故障排查的文章,自己也写了一篇Java调优经验谈.接着此篇文章,其实一直打算写写一些常用调优工具以及它们的惯常用法的.后来在http://java-performa ...

  9. 127.0.0.1 localhost 0.0.0.0 回环地址区别

    127.0.0.1:一般认为是本机ip,这个没错.但是本机ip不只是 127.0.0.1 而是所有回环地址. 回环地址: 包括127.0.0.1在内的 所有 指向本机的地址.范围是  127.0.0. ...

  10. laravel 打印完整sql语句

    laravel5 用DB自带的getQueryLog方法直接打印: DB::connection()->enableQueryLog(); // 开启QueryLog \App\User::fi ...