org.json与json-lib的区别(补充 FastJson)
org.json 是JSON国际组织官方推出的标准json解析方案,已经被 android sdk 纳入到标准内置类库,依赖项少,但直至API17版本SDK中,仅支持JSONObject与JSONArray、Map、List、String、Boolean、Integer等基本类型对象,适合简单开发调用。
——————————————2014年6月16日 补充————————————————
org.json 也有独立可在JAVA SE环境下使用的包,除了上述android自带包提供的功能以外,还通过XML、Cookie、HTTP等一系列新增加的类,提供额外的JSON到XML、Cookie、HTTP头、JSONML等双向转换功能,非常实用!
官方说明文档(在线doc):http://www.json.org/java/index.html
源代码:https://github.com/douglascrockford/JSON-java
————————————————————————————————————————
json-lib 是另外一个开源项目,需要自行下载,依赖项较多,除org.json所支持的对象外,还直接支持基本类型数组、对象数组、json<->xml 格式转换、json<->自定义Class(Bean) 转换等功能,适合复杂的扩展调用开发。
依赖项:
commons-collections.jar
commons-lang.jar
commons-logging.jar
commons-beanutils.jar
ezmorph.jar
xom.jar
具体使用方式请自行百度,或参阅推荐博文。
——————————————2014年6月16日 补充————————————————
调查资料发现,json-lib比较老旧,由于自身的众多bug、依赖多、API繁琐、处理效率低下等问题,官方已经停止维护并逐渐被淘汰。
转而一个称为jackson的项目,因为效率高、依赖少,社区活跃,文档齐全,很快成为替代json-lib的主流。
后来,为了追求极致的速度,阿里巴巴团队研制了一个叫FastJson的json处理库,得益于独创的算法,转换速度据称超越目前所有json处理框架。
关于FastJson,推荐两个入门博文:
http://blog.sina.com.cn/s/blog_7ffb8dd501013qas.html
http://blog.csdn.net/wutongyu344/article/details/7321591
源代码:https://github.com/alibaba/fastjson
官方中文wiki:https://github.com/Alibaba/fastjson/wiki/首页
————————————————————————————————————————
JSON 国际官方组织网站: http://www.json.org/ 该网站下包含各种编程语言环境下所有公开的知名JSON处理包、类库等资源,强烈建议仔细研究!
推荐博文:
org.json与json-lib的区别(补充 FastJson)的更多相关文章
- json字符串和字典的区别补充
json字符串和字典的区别:json:(JavaScript Object Notation)的首字母缩写,字面的意思是(javascript对象表示法),这里说的json指的是类似于javascri ...
- JSON.parse和eval的区别
JSON.parse和eval的区别 JSON(JavaScript Object Notation)是一种轻量级的数据格式,采用完全独立于语言的文本格式,是理想的数据交换格式.同时,JSON是Jav ...
- JSON.parse() JSON.stringify() eval() jQuery.parseJSON() 的区别
http://www.jb51.net/article/81880.htm : jQuery.parseJSON(jsonString) : 将格式完好的JSON字符串转为与之对应的Java ...
- 理清JS数组、json、js对象的区别与联系
最近在敲代码时,遇上了一个关于JS数组的问题,由此引发了关于对象和json的联想,曾经觉得很畅顺的知识点突然模糊了.于是,为了理清这些东西,有了如下这篇文章.觉得没问题的猿们可以当复习,而那些带着疑问 ...
- json和xml的两者区别
服务器端返回给客户端的数据一般都是JSON格式,JSON数据以键值的形式保存,数据之间以逗号分隔,{}表示对象,[]表示数组.JSON数据解析方案有四种,JSONKit,SBJson,TouchJso ...
- JSON与JS对象的区别
<script> var obj2={};//这只是JS对象 var obj3={width:100,height:200};/*这跟JSON就更不沾边了,只是JS的 对象 */ var ...
- json和jsonp的使用区别
json和jsonp的使用区别 一. 跨域请求的概念 JavaScript出于安全方面的考虑,不允许跨域调用其他页面的对象. 二. json和jsonp JSON是一种基于文本的数据交换方 ...
- gitlab无法push或clone的错误:JWT::DecodeError (Nil JSON web token): lib/gitlab/workhorse.rb:120:in `verify_api_request!'
使用源码安装的方式升级gitlib7.14到gitlab-8.13.5中文版,然后push的时候报错: 错误信息如下: Started GET "/gitlab/hushizhi/gitla ...
- package.json中dependencies和devDependencies区别
package.json中dependencies和devDependencies区别 dependencies: 应用能够正常运行依赖的包.用户发布环境,依赖的包不仅开发环境能够使用,生产环境也能使 ...
随机推荐
- kafka概述
kafka概述 Apache Kafka是一个开源 消息 系统,由Scala写成.是由Apache软件基金会开发的一个开源消息系统项目. Kafka最初是由LinkedIn开发,并于2011年初开源. ...
- vuls安装记录
第一步安装go环境apt-get install golang-go(显示出错,go版本apt安装太低,apt-get purge golang-go卸载后手动安装,必须1.8.3以上) 还需将/us ...
- Linux编程之Epoll高并发
网络上所有资料都说epoll是高并发.单线程.IO重叠服用的首选架构,比select和poll性能都要好,特别是在有大量不活跃连接的情况下.具体原理就不阐述了,下面说说使用. 具有有三个函数: #in ...
- 【动态规划】[UVA1025]A Spy in the Metro 城市里的间谍
参考:https://blog.csdn.net/NOIAu/article/details/71517440 https://blog.csdn.net/c20180630/article/deta ...
- Java线程和多线程(十)——TimerTask
Java中的java.util.Timer是一个工具类,可以用于调度一个线程在将来的某一个时刻执行特定的任务.Java Timer类可以将一个任务定时执行一次,或者是以后以每隔一定的时间间隔来触发一次 ...
- Python未彻底测试的项目
第一 socket 第二 twisted 第三 tornado 第四 微信网页版本登录 第五:进程,线程,协程间关系 第六:TCP三次握手 第七:堡垒机 第八:重写django admin
- C#读写txt文件的两种方法介绍 v
C#读写txt文件的两种方法介绍 1.添加命名空间 System.IO; System.Text; 2.文件的读取 (1).使用FileStream类进行文件的读取,并将它转换成char数组,然后输出 ...
- jmeter使用beanshell构造参数化
1.先在本地写一个java类,用来随机生成一个数字,如: package com.jmeter.test; public class BeanShellTest { public int getRan ...
- C#3DES加密了解一下
最近一个项目中,因为服务端是用的java开发的,客户端是用的C#,由于通信部分采用到了3DES加密,所以做个记录,以备以后需要的时候直接用. 这是对方(java)的加密算法,和网上流传的代码也差不多( ...
- C++知识点 内存占用问题
有一次去面试,谈的挺好的,被人问了一个问题,瞬间暴露自己基础能力弱的弱点了,这里自己记录下,以后慢慢长进. 问题 char test1[]={1,2,3,4}; char test2[]={1,2,3 ...