2013-03-11 1 views
3

Приложение, над которым я работаю, в основном основано на обработке данных JSON, полученных с сервера. Традиционный анализатор JSON извлекает значения, устанавливает необходимые POJO и переходит к обработчику пользовательского интерфейса для рендеринга. На данный момент эта часть работает хорошо.Преимущества GSON над обычным анализом JSON

Я слышал о библиотеке GSON и выполнял ее шаги по внедрению. По моему пониманию, это (использование GSON) требует следующего.

  1. Данные JSON в правильном синтаксисе.
  2. Модель класса объектов, соответствующих JSON ответа.
  3. Инъектор GSON или фрагмент кода для извлечения JSON с сервера и подачи на GSON.

Приведенный выше подход звучит скорее как сопоставление объектов. Тем не менее, я не знаю, насколько эффективен GSON по сравнению со старым анализом JSON; особенно со сложными JSON. И его последствия для использования памяти?

Как вы думаете?

+3

не беспокойтесь о выступлениях, пока у вас не возникнут проблемы с производительностью – njzk2

ответ

6

GSON были успешно использованы в нескольких андроиде приложений, которые находятся в Google Play сегодня. Преимущество, которое вы получаете в GSON, заключается в том, что сопоставление объектов может сэкономить время, затрачиваемое на написание кода. Что касается последствий использования памяти, вы можете использовать вызов метода fromJson(), который берет потоковый JSONReader, чтобы минимизировать данные String, хранящиеся в памяти, в результате чего вы можете попытаться самостоятельно проанализировать данные json с помощью JSONReader.

+0

+1 за сэкономленное время. – wtsang02

+1

Ссылка выше не работает. – BornToCode

1

целей GSON является хорошо описана на официальном сайте:

Gson Цели:

  • Предоставлять простой toJson() и fromJson() методы для преобразования Java объектов в формате JSON и наоборот
  • Разрешить преобразование ранее немодифицируемых объектов в JSON
  • Обширная поддержка Java Generics
  • Разрешить пользовательские представления для объектов
  • Поддержки сколь угодно сложные объекты (с глубокой иерархией наследования и широким использованием общих типов)

https://code.google.com/p/google-gson/

Смежные вопросы