发布于 2016-04-10 23:53:46 | 66 次阅读 | 评论: 0 | 来源: 网友投递
fastjson JSON 解析器
fastjson 是一个性能很好的 Java 语言实现的 JSON 解析器和生成器,来自阿里巴巴的工程师开发。
fastjson 1.1.48-android 发布,进一步提升在android环境下的性能,同时减少内存占用,加上Stream API,jar大小196k。
Bug Fixed
修复引起的字段类型为java.lang.Long大于Integer.MAX_VALUE后变负数的bug,这个bug是1.1.47.android优化引入的,之前不存在,所以使用1.1.47.android的同学建议尽快升级。 github issue 534。
修复WriteClassName时,无法处理Collections.emptyMap序列化后的json串, github issue 536
修复字符串长度为0时parseArray报错的问题,改为返回null。
回复JSONReader/JSONWriter等stream api,增强和之前版本的兼容性。
性能改进
重写SymbolTable类,结构更简单,并且达到之前版本一样的性能。
减少内存驻留和提升性能,
使用排序好的数组提到Map保存FieldDeserializer
减少不必要分配的对象
常量数组按需分配大小,包括SerializeWriter的specicalFlags_doubleQuotes/specicalFlags_singleQuotes/replaceChars。
3.进一步提升了序列化反序列化的性能。优化的办法包括:
手动内联减少方法调用
构造字符串类型的值时使用local buf,减少内存分配。
使用ThreadLocal缓存char[] buffer,不再使用SoftReference,减少调用层次。
下载地址
可以通过maven中央仓库下载,地址如下
http://repo1.maven.org/maven2/com/alibaba/fastjson/1.1.48.android/