какой правильный способ анализа ответа json с использованием GSON? Анализ Json дважды или создание класса ответов каждый раз?

#android #json #parsing #gson #memory-efficient

#Android #json #синтаксический анализ #gson #эффективность использования памяти

Вопрос:

Я хочу знать, в каком сценарии ответ json сервера находится в приведенном ниже формате

 {
 "data": {
    "id": 1948,
    "body": "test comment",
    "created_at": "2014-06-24T16:05:31 00:00",
    "user_id": 2963,
    ...
}
}
 

при синтаксическом анализе Json с использованием GSON, правильно ли анализировать

 JSONObject jsonObject = new JSONObject(json);
String jsonData = jsonObject.getString("data");
return Response.success(mGson.fromJson(json,mClazz),HttpHeaderParser.parseCacheHeaders(response));
 

или просто вернуться

Response.success(mGson.FromJSON(json,mClazz),HttpHeaderParser.parseCacheHeaders(ответ)); и создайте класс ответа для каждого вызова API сервера, например

 public class CommentsResponse {  
 private Comment data;
 ..
}
 

Комментарии:

1. вы можете легко проверить это сами. что вы пробовали?

2. @MarcinOrlowski Не могли бы вы, пожалуйста, подсказать, что лучше в двух сценариях и почему

Ответ №1:

Первый случай может быть лучше, потому что он сообщает, был ли ваш ответ действительным JSONObject или нет, когда вы преобразуете ответ в JSONObject, и вы можете захотеть обработать этот случай, поскольку в противном случае будет выдано исключение.