摘要:分享一个的版本开源库给大家这个库的使用方法和原生的的使用方式基本一样但是因为使用了而使解析效率得到了提高库的地址使用方法导入库这个库是开源的建议直接拷贝和两个进入自己工程。
分享一个Gson的APT版本开源库给大家
这个库的使用方法和原生的Gson的使用方式基本一样,但是因为使用了APT(Annotation Processing Tool)而使解析效率得到了提高
GsonAPT库的地址
使用方法:
1 导入库这个库是开源的: 建议直接拷贝:gsonaptannotation和gsonaptcomplier两个module进入自己工程。
接着:
dependencies {
...
compile project(":gsonaptannotation")
apt project(":gsonaptcomplier")
}
@JsonBean public class LittleBean { String littleBeanName; public String getLittleBeanName() { return littleBeanName; } public void setLittleBeanName(String littleBeanName) { this.littleBeanName = littleBeanName; } public LittleBean() { } public LittleBean(String littleBeanName) { this.littleBeanName = littleBeanName; } }3 编译工程
编译后会生成GsonAPT类
4 使用GsonAPT代替new Gson()TestBean testBean = new TestBean(); String str = GsonAPT.toJson(testBean); testBean = GsonAPT.fromJson(str,TestBean.class); Mapmap = new HashMap<>(); map.put(9, new OtherBean("")); map.put(1, new OtherBean(null)); String mapStr = GsonAPT.toJson(map); map = GsonAPT.fromJson(mapStr,new TypeToken
引用测试结果
How fasthow much time to parse the small bean:
times | Gson toJson | GsonAPT toJson | Gson fromJson | GsonAPT fromJson |
---|---|---|---|---|
10 | 3 | 1 | 10 | 1 |
10000 | 738 | 363 | 883 | 756 |
100000 | 8361 | 4420 | 10616 | 9346 |
how much time to parse the big bean:
times | Gson toJson | GsonAPT toJson | Gson fromJson | GsonAPT fromJson |
---|---|---|---|---|
1 | 673 | 325 | 811 | 700 |
10 | 7748 | 3740 | 9506 | 8182 |
times | Gson toJson Speed / GsonAPT toJson Speed |
---|---|
10000(small) | 49% |
100000(small) | 52% |
1(big) | 48% |
10(big) | 48% |
times | Gson fromJson Speed / GsonAPT fromJson Speed |
---|---|
10000(small) | 86% |
100000(small) | 88% |
1(big) | 86% |
10(big) | 86% |
@JsonBean的相关类的字段需要有get/set方法或者是 public或包访问的
和默认的Gson一样,不能解析非静态的内部类
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/69872.html
摘要:版本版本简介是谷歌开源的解析工具。其实几款产品的差别都很细微,有谷歌的信仰加成,所以在这里进行一次源码分析。至于和会在后续进行追踪。 零 前期准备 0 FBI WARNING 文章异常啰嗦且绕弯。 1 版本 Gson 版本 : gson 2.8.5 IDE : idea 2018.3 2 Gson 简介 Gson 是谷歌开源的 java json 解析工具。市场上同类的开源产品还有 F...
摘要:最佳解析最佳解析最佳解析是一个依赖注入框架,由谷歌开发,最早的版本由公司开发。在对的介绍中指出,即,这里的即数据结构中的有向无环图。也就是说,是一个基于有向无环图结构的依赖注入库,因此的使用过程中不能出现循环依赖。 在开发过程中使用过很多优秀框架,比如网络的okhttp,图片的Fresco,注入的Gagger2等,都是非常优秀的框架。 所以今天在此介绍下至今本人知道的一些比较流行主流且...
阅读 3516·2021-08-31 09:39
阅读 1784·2019-08-30 13:14
阅读 2864·2019-08-30 13:02
阅读 2731·2019-08-29 13:22
阅读 2268·2019-08-26 13:54
阅读 734·2019-08-26 13:45
阅读 1558·2019-08-26 11:00
阅读 938·2019-08-26 10:58