使用 -> (Retrofit2 + Jackson) 在 Android 上解析 JSON
Parsing JSON on Android Using -> ( Retrofit2 + Jackson )
有人有想法或好的网站可以使用 retrofit2+jackson 在 android 中变大 Json 吗?
还有一个问题:Jackson 真的比 Gson 快吗?!
用户简单
public class UserSimple {
@Json(name = "fields")
private List<Field> fields = null;
@Json(name = "popular")
private List<Popular> popular = null;
@Json(name = "http_code")
private Integer httpCode;
// getter and setter
}
Popular.class
public class Popular {
@Json(name = "id")
private Integer id;
@Json(name = "name")
private String name;
// getter and setter
}
Filed.class
public class Field {
@Json(name = "id")
private Integer id;
@Json(name = "name")
private String name;
// getter and setter
}
最后
private void mapFromJson() {
Log.d(TAG, "mapFromJson: ()++++++");
String jsonString = "{\n" +
" \"fields\":[\n" +
" {\n" +
" \"id\":108,\n" +
" \"name\":\"Advertising\"\n" +
" },\n" +
" {\n" +
" \"id\":105,\n" +
" \"name\":\"Writing\"\n" +
" }\n" +
" ],\n" +
" \"popular\":[\n" +
" {\n" +
" \"id\":44,\n" +
" \"name\":\"Graphic Design\"\n" +
" },\n" +
" {\n" +
" \"id\":132,\n" +
" \"name\":\"UI/UX\"\n" +
" }\n" +
" ],\n" +
" \"http_code\":200\n" +
"}";
Moshi moshi = new Moshi.Builder().build();
JsonAdapter<UserSimple> jsonAdapter = moshi.adapter(UserSimple.class);
try {
UserSimple userSimple = jsonAdapter.fromJson(jsonString);
Log.v(TAG, "mapFromJson2: " + Objects.requireNonNull(userSimple).toString());
} catch (IOException e) {
e.printStackTrace();
}
Log.d(TAG, "mapFromJson: ---- ");
}
这应该有所帮助。
有人有想法或好的网站可以使用 retrofit2+jackson 在 android 中变大 Json 吗?
还有一个问题:Jackson 真的比 Gson 快吗?!
用户简单
public class UserSimple {
@Json(name = "fields")
private List<Field> fields = null;
@Json(name = "popular")
private List<Popular> popular = null;
@Json(name = "http_code")
private Integer httpCode;
// getter and setter
}
Popular.class
public class Popular {
@Json(name = "id")
private Integer id;
@Json(name = "name")
private String name;
// getter and setter
}
Filed.class
public class Field {
@Json(name = "id")
private Integer id;
@Json(name = "name")
private String name;
// getter and setter
}
最后
private void mapFromJson() {
Log.d(TAG, "mapFromJson: ()++++++");
String jsonString = "{\n" +
" \"fields\":[\n" +
" {\n" +
" \"id\":108,\n" +
" \"name\":\"Advertising\"\n" +
" },\n" +
" {\n" +
" \"id\":105,\n" +
" \"name\":\"Writing\"\n" +
" }\n" +
" ],\n" +
" \"popular\":[\n" +
" {\n" +
" \"id\":44,\n" +
" \"name\":\"Graphic Design\"\n" +
" },\n" +
" {\n" +
" \"id\":132,\n" +
" \"name\":\"UI/UX\"\n" +
" }\n" +
" ],\n" +
" \"http_code\":200\n" +
"}";
Moshi moshi = new Moshi.Builder().build();
JsonAdapter<UserSimple> jsonAdapter = moshi.adapter(UserSimple.class);
try {
UserSimple userSimple = jsonAdapter.fromJson(jsonString);
Log.v(TAG, "mapFromJson2: " + Objects.requireNonNull(userSimple).toString());
} catch (IOException e) {
e.printStackTrace();
}
Log.d(TAG, "mapFromJson: ---- ");
}
这应该有所帮助。