我使用Jackson和DataBind库来解析json并将其映射为java对象。我还在其他项目中使用Gson,在这些项目中,perf的要求较低。
2月17日,LoganSquare库首次发布,承诺以Gson的方式进行4-10倍的解析.
我知道这可能是一个基本的意见基础问题,所以要尽可能地技术和具体,并根据真实的数据来回答。
发布于 2015-08-10 06:47:26
好吧,要明确的是,如果你发布你的应用程序的设备与艺术,你将有一个巨大的速度优势,通过解析。
因此,我将解释我的经验,以logansquare到目前为止。
优点:
LoganSquare.parseList()
一样简单缺点:
参见他们的基准这里
下面是我糟糕的基准测试结果(这不是一个合适的基准测试,但它确实有问题):使用DalvikVM的模拟器连接5,4.2 jellybean
基准测试
解析模型
import com.bluelinelabs.logansquare.annotation.JsonField;
import com.bluelinelabs.logansquare.annotation.JsonObject;
import com.google.gson.annotations.SerializedName;
/**
* Created by Ercan on 6/26/2015.
*/
@JsonObject(serializeNullCollectionElements = true ,serializeNullObjects = true)
public class Village {
@SerializedName("IdVillage")
@JsonField(name ="IdVillage")
String tbsVillageId;
@SerializedName("TBS_VillageId")
@JsonField(name ="TBS_VillageId")
String townRefId;
@SerializedName("VillageName")
@JsonField(name ="VillageName")
String villageName;
@SerializedName("Status")
@JsonField(name ="Status")
String status;
@SerializedName("DateInserted")
@JsonField(name ="DateInserted")
String dateInserted;
@SerializedName("DateLastModified")
@JsonField(name ="DateLastModified")
String datelastModified;
public String getTbsVillageId() {
return tbsVillageId;
}
public void setTbsVillageId(String tbsVillageId) {
this.tbsVillageId = tbsVillageId;
}
public String getTownRefId() {
return townRefId;
}
public void setTownRefId(String townRefId) {
this.townRefId = townRefId;
}
public String getVillageName() {
return villageName;
}
public void setVillageName(String villageName) {
this.villageName = villageName;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public String getDateInserted() {
return dateInserted;
}
public void setDateInserted(String dateInserted) {
this.dateInserted = dateInserted;
}
public String getDatelastModified() {
return datelastModified;
}
public void setDatelastModified(String datelastModified) {
this.datelastModified = datelastModified;
}
}
发布于 2016-06-01 19:05:18
我使用Android6.0.1在我的Nexus 5设备上运行了LoganSquare基准项目,结果如下:
另外,在花了很短的时间处理库之后,下面是我的优缺点:
Pros
Cons
我编写了一个示例项目来查看LoganSquare和博客帖子是如何工作的,因此请查看那里以获得更多信息。
发布于 2019-02-20 11:20:56
response.body()
它是字符串json响应
// MovieData它是一个模型类
MovieData movieData=LoganSquare.parse(response.body(),MovieData.class);
Log.d("onResponse: ",movieData.getTitle());
https://stackoverflow.com/questions/30981565
复制相似问题