alibaba / JsonLube

为了高效地将Json对象转化成Java bean对象,传统上我们是在运行是利用反射来实现。但是在移动平台上,面对复杂的Json,采用反射的方式往往性能比较差,为了追求极致的性能,我们可以采用Android原生的Json库进行解析。但是面对一个复杂的大Json,基于原生Json库去手动解析工作量太大,且容易出错。JsonLube是为此而设计的。JsonLube会在编译期自动生成Json解析代码,用户使用方式简单,但是却能收获原生解析的性能。

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

关于传统的反射和JsonLube的编译时注解

ruhw opened this issue · comments

commented

我的理解是对JavaBean的序列化和反序列化代码,是编译时注解,利用AspectJ等工具,生成代码插入原JavaBean类,而Gson等传统方式是基于反射;而在运行解析过程中,使用反射获取对应的实体类不可避免

恩,是的,反射优点是方便,缺点就是性能始终会差些。看使用场景,对于一些特别大的数据结构,用JsonLube还是有比较大收益的。